Linux has a lot of applications. One application cannot work (may be caused by some updates like Java Runtime Environment, or some other libraries), we still can choose the others.
The following is the list of my favourite applications.
jEdit is my favourite, because it can split into multiple view, instead of two views with either horizontal and vertical. It is cross-platform, available in Windows. There are a lot of plugins available. But the limitation is that it depends on the Java Runtime Environment.
In order to find an alternative to the jEdit, I can only get Kate. Like jEdit, it can have multiple split view. Other than these, GVim and Emacs can also have multiple split view. But GVim and Emacs are difficult to learn, because there are a lot of shortcuts need to be memorized. GVim is one of the text editors that can handle large file (more than 1 gigabyte file).
gedit, medit, Leafpad, and Geany are all my favourites. Yet Geany can be used as an IDE. Leafpad is lightweight, does not support tabbing and no syntax highlighting. It is just like Notepad in Windows, but it can undo more than once (unlike Windows).
Though I prefer to use a text editor to write my source code and compile from the command-line, IDE is sometimes very handy which is irreplaceable. For example, developing Android app, though it is able to build native program through command-line, creating GUI application with the IDE is the best method. Thus, Eclipse is the choice for Android development. The wonderfulness of Eclipse is the varieties of the plugins. It can be used to develop Java applications, C/C++ applications, Android apps with ADT, and even install Aptana plugin. But, I personally feel that uninstalling the plugins in Eclipse is problematic.
Similar to Eclipse, another IDE is NetBeans. It primarily targets Java programming. Yet it can be extended with the plugins to develop applications in other programming languages such as PHP and Python.
Sometimes, depending on the different project, we may need to use other IDE instead of our own favourite IDE, such as the case of Android application development which using Eclipse is more preferable. So, when I was developing fcitx module, the official site suggests to use KDevelop. KDevelop provides the template for creating Qt application, but it does not allow GUI design. GUI design can be done by using Qt Designer (I think it is bundled with Qt4). But there is a more completed IDE for Qt, that is Qt Creator. Another IDE which targets GTK+ instead of Qt is Anjuta. Similar to Qt Designer, we can use Glade to design the GUI for GTK+ application.
The best thing I like in the IDE is the debugging and a refactoring. Debugging with the command-line debugger is slow and inefficient. Using the IDE debugger, we can create break points easily, step over or step into based on the source code, and watch the variables. If we want to debug, IDE is the best.
Previously I mentioned the Firefox and its variants. Other than Firefox and the variants, Chromium is also nice with a different layout engine. However, when doing web development in Chromium has a problem if viewing the page source. When we view the page source, unlike Firefox, Chromium will “re-visit” the page with the source view. This may produce a problem when development, because the page accessed twice (first is the normal page visit, second is the source view). Both Firefox and Chromium provide private browsing (in Chromium, it is called “incognito”). When using private browsing in Firefox, all the addons still running; but Chromium incognito browsing will disable all the extensions.
Opera is another alternative. Yet Opera version for Linux is very old.
My primary office suite is LibreOffice. Yet some files saved by colleagues using Microsoft Office cannot be opened by LibreOffice. However, these files can be opened by OpenOffice.
In order to view the MS Word document with fancy formatting, neither LibreOffice nor OpenOffice works well, but Kingsoft Office works better. However, I never save the file by using Kingsoft Office. Even though formatting in Kingsoft Office is more compatible to MS, it is still not the best result.
Another interesting office suite is Calligra Suite. The interface is far more different from Libre/OpenOffice.
Abiword and Gnumeric are two standalone applications targeting word processing and spreadsheet respectively. Gnumeric has a feature which Libre/OpenOffice does not have, that is, generating the histogram. (It is HISTOGRAM, not BAR CHART!)
There are many audio players such as Banshee and RhythmBox. But I does not like both, because I prefer something like Winamp with simple play list, so that I can sort the play list, add/remove songs to/from the list. Thus, I prefer Audacious. But recently, the ID3 tag Chinese characters encoding has some problem, so I switch to Clementine. Both has the advantage of displaying lyrics with OSD Lyrics. Clementine has a lot of plugins, though I disabled most of them. Online audio streaming using Clementine is easy.
There is a drawback using Clementine. I failed to change the hotkeys to manipulate the musics (next, previous, pause, stop, play) into the hotkeys like Winamp, yet Audacious uses Winamp style hotkeys. So, I use DeaDBeeF as an alternative. But DeaDBeeF does not work with OSD Lyrics. Comparing DeadBeeF to Clementine, DeaDBeeF is much simpler like Audacious.
My primary video player is SMPlayer, which can play the DVD image directly, RMVB format, and many other formats. The performance of SMPlayer in Linux is better than Windows. (In Windows, starting the application will freeze a while.)
I do not like VLC, though it is popular. For me, when using VLC to play DVD video, the subtitles are dissatisfying and cannot be customized. But VLC allows to play from the video device connected to the computer (such as web-cam).
Previously I use Totem as a secondary video player (playing multiple video at the same time, but don’t want something like SMPlayer which occupy the whole screen with the window). But Totem does not allows to control the video like mplayer. So, I replace it with GNOME MPlayer. SMPlayer and GNOME MPlayer are both using mplayer, thus the hotkeys are same. However, comparing SMPlayer to the GNOME MPlayer, when playing a video in a faster speed (such as x2), the pitch will be maintained (not x2 higher); but GNOME MPlayer will produce a higher pitch after changing the play speed.
I don’t like photo organizer such as digiKam, Shotwell, F-Spot, or Picasa. I prefer image viewer. The simple image viewer I like most is viewnior. Why viewnior? Because I can use the mouse wheel to zoom in/out, and middle button to move the view of the image. I don’t find any other image viewer can do so.
In order to view all the images in the folder as thumbnail, I use gThumb. But it is not the best. My most favourite is XnViewMP. Unfortunately, XnViewMP does not allow me to drag-and-drop the images to another folder, but gThumb works fine. XnViewMP offers bunch of features such as convert the image or transform the image in batch processing.
XnViewMP does not allow to play slideshow recursively. Thus I can only do it with feh (a command-line), which can play the slideshow recursively and randomly. It is a very nice simple command-line.
Another way to move the images from folder to folder by viewing the thumbnails is using a file manager such as Nautilus.
My primary file manager is Nemo (Cinnamon file manager). I also use the Nautilus (GNOME file manager), since both are almost same. Thunar (Xfce file manager) and PCManFM (used in LXDE) I also installed. All of them uses GTK+, thus they share the same trash bin.
Dolphin (KDE file manager) uses another trash bin different from above file managers. Dolphin may be handy when there is something wrong with the upgrade of the GTK+.
When we use copy-paste the files in these file managers, there are slight differences. Such as Ctrl+C in Dolphin and Ctrl+V in a text editor, it will paste the filename prefix with “file://”, yet Nemo and Nautilus do not have “file://”.
mc (Midnight Commander) is my useful tool when obexfs (fuse mount) the bluetooth device. Because there is something wrong with my distro when I mount the device and copy the files using the GUI file managers above, the file manager will freeze and the file operation will not success.
ROX and qtFM do not use the trash bin, which may make my accidentally deleted files irrecoverable.
The only one applications
There are some applications which I cannot find any alternatives. GIMP, the best ever image editor; Inkscape, the best ever vector image editor; and Blender, the best 3D modelling software in Linux; Audacity, the only audio editor.