Months ago, I began to try to avoid bloated stuff. I switched to Enlightenment, then to Fluxbox, and I am still using Fluxbox. A week or two ago, I replaced Fedora 10 with Gentoo. Since then, I started to do more. Now, the only GUI programs often on my screen are Firefox and urxvt. Some have been replaced with CLI UI programs.
Please dont be confused with the word better in this post title. It does not mean more beautiful or more powerful, it means simpler or straighter to do whatever I need.
Gnome or KDE is bloated for me for sure. Any DE(Desktop Environment) uses over 100 MB memory is defined as bloated by me.
I tried Enlightenment on Fedora 10, I liked that. It has plenty options to customize your desktop. For just window management, you can do many fine setting for focus, resizing, moving, transparency, etc. Enlightenment is a good DE and WM(Window manager), but I found FluxBox is more suitable for me.
FluxBox is more simpler than Enlightenment, and more lighter. Both of them do not involve much more than WM. They are not like Xfce, Xfce is between them and Gnome or KDE. FluxBox only has the WM, a taskbar, and fbrun (a program like gmrun, a program launcher), I think thats all from Fluxbox. You need to design your only program menu, hotkeys, taskbar layout, startup programs, etc. However, thats not a tough task, and its definitely worth spending some time for them.
My current desktop has a taskbar at bottom and Conky on right side.
The taskbar only has window list and tray. Conky shows some system information. I have set a hotkey to maximize program but not to cover the Conky, so I can always read those information. Conky doesnt use too much resources, 4MB memory, 1% CPU utilization. It provides me lots of information, date and time, weather, CPU, memory, disk, net, Portage db time, volume, MPD.
I dont use fbrun because its auto-completion is quite laggy, I use gmrun, instead. For the main menu (which is brought up by right-click on desktop), I put few programs on top-level. In which the Apps sub-menu is generated by MenuMaker. It can search programs in your hard-disk and make a categorized menu.
Any terminal is based on VTE is not so good at maximizing/resizing window and usually use more memory. When you do that, it needs at least one second to do so. I dont know why and I couldnt stand with that. urxvt is good terminal. It can use Xft and doesnt have problems with compose key and input method.
This path is not a straight forward one. Before Midnight Commander, I had tried Thunar, PcManFM, emelFM2, gentoonot the distribution, I got confused, first. emelFM2 is good for me, but I wanted a CLI one, and Midnight Commander does a great job. It also support mouse, you can easily click here and there (but no drag-n-dropping). Here is a side-node, if your terminal is not xterm, then you will need to run Midnight Command with -x option. I hoped I can configure that with its configuration file but nowhere indicates that is possible.
Anyway, it is easy to use after you are familiar with the key bindings and extension/menu configuration files. You can set up default Open or View action for different types of files, but only one for each. But with F2 menu, you can choose from that menu for more different commands, and, of course, it can be customized. I can bring up different viewers or media players from my F2 menu.
Midnight Commander has a shell inside, you can always run an arbitrary command whenever you need to. You can also bring the current highlighted files name into the shell by press Alt+Enter. And, auto-completion is supported, too, but you will need to press Escape+Tab, not Alt+Tab if you are in X.
Amarok is still my favorite player, and iTunes as well. Again, I want CLI. MPD is a server, so you need a client to communicate with the server, which is ncmpcpp I use. Its written in C++. The interesting thing is you can edit you playlist, hit the play button and quit ncmpcpp. You dont need the client to stay in memory because it has passed your command to MPD.
I also have an account of Last.fm, so I want everything to be scribbled, mpdscribble can do the job.
gthumb-import is a good importer but it is bound with gthumb, and I dont use that. gphoto2 is a pure CLI command and its easy to use. I only need to run gphoto2 -P, then all the photos on camera will be transfer to correct directory.
Note
I actually using gphotofs to mount my camera via PTP as storage, and upload photos directly rather than importing and then uploading. (2015-07-10T04:51:14Z)
There are two programs which I cant find replacements. Firefox and GIMP. For Firefox, it is because of an addon, Vimperator. That addon emulates a Vim environment within Firefox, it is an addiction if you are a Vim user, then once you know the plugin, you will use it and never leave it. As for GIMP, I am used to it.
I cant find a good image viewer, which has to be small and quick. That doesnt seem to exist. I only need one to read raw images, jpeg, and PNG.
Note
After the comment from nickolsen below, I tried Geeqie and it has been with me ever since. (2015-07-10T04:47:42Z)
I think I am just starting walking on this road, there will be many possibilities and lots of choices waiting for me to discover.