You were originally given bad advice about the use of the "ln" command. The man page for the "ln" command is not very clear either.
If you just want to enter the name of the command to launch the application then you need to have either the real application executable or a link that points to the application executable in a directory contained in the PATH environment variable. If your firefox executable is located at /usr/local/firefox/firefox then do this.
Code:
cd /bin
ln -s /usr/local/bin/firefox/firefox firefox
This will create a link named firefox in the current directory. That link will point to /usr/local/bin/firefox/firefox. Since the /bin directory is always in the PATH environment variable then when someone enters the "firefox" command the application launcher will search in /bin and find the "firefox" link that points to the firefox executable in /usr/local/bin/firefox. This is how I remember the syntax of the ln command.
ln [-s] real-file link-name