My first experience with GNU/Linux was with KDE. It is the desktop environment used on my college computers, and it was more or less the only experience I had with the GNU/Linux operative system, so it was the desktop environment I installed at home (at that point I don't think I knew the difference between a distribution and a desktop environment). After some time, I got comfortable with the new OS and learned that distributions and desktop environments were completely different things, so I started to look around for other DEs and decided to go with GNOME. It was a weird choice, as I had only read—and heard—bad things about GNOME, but I was reading a lot about the GNU project and decided to go with the DE that was part of the project, just to try it out.
Well, GNOME is great. I love GNOME! I am glad I wanted to try it (for a more or less stupid reason) against what people were writing/saying. It works great out of the box, it has programs for everything I needed and can easily be configured to fit your needs1. With Debian 10, the dark theme is great, and other apps like firefox also go dark with it2. It was a bit confusing the first couple of days, but it was easy to get used to. GNOME has worked great for me (and still does). With the lack of a bar with all the open windows (like on KDE), I have gotten more used to moving around with the keyboard. I also made a conscious effort to use the keyboard more, as I had seen many people move around faster and more naturally when they weren't using the mouse. So, after gaining confidence with the keyboard, I decided to finally give i3 a real shot a couple of weeks ago.
i3 is a tiling window manager, which means that it is a window manager that arranges windows in a way that they don't overlap. A window manager is the software that manages your windows (resize, move, close, etc.). The difference with desktop environments is that the latter come with a window manager, but also many more programs (like a terminal emulator or a text editor) as well as panels, system menus, and other features. These normally all look alike and work well together.
I say I decided to give it a real shot because I have tried i3 multiple times before: mainly logging in, seeing how ugly everything looks, logging out3. This time it was different: I had time to figure everything out, so I decided to push through the first days (when everything is to be configured"), and then decide. I installed it, tweaked it a little, didn't like some things, installed sway, it fixed some things but messed up others, I also considered other tiling window managers like dwm, and went back and forth a couple of times (all in one day). Eventually, I decided sway had one problem I couldn't cope with4 and decided to stick with i3. I made a list of everything that was missing (or "wrong") and went to bed.
The next day, I grabbed the list and started working on the items. Some of them were very easy to fix, like make the sound buttons work. Some others were a little harder, like mounting USB automatically. I even had to reinstall i3—a fork of i3 actually—so I could have gaps between windows (yes! I needed those!). I also added more items to the "problems-to-fix" list as I kept using i3. After about a week, I had fixed everything on the list!
This process of going through a lot of minor things made me realize how awesome GNOME is. It has so many features, without a need for the user to spend hours and hours making everything work. KDE probably also goes into this category, but I haven't used it as much so I can't say. Other DEs that I have tried have given me some problems here or there, nothing major, but it isn't the out-of-the-box experience I appreciate in GNOME.
Some people quickly disregard these DEs because they are "bloated". In my opinion, it is true. They have an absurd number of features, but for myself, when I simply need everything to work without any tweaking, this is great. As a new GNU/Linux user, I wanted my computer to work without much configuration, while still being able to be "picky" about some stuff. Even as a moderately-confident user, I didn't have a week to spend making i3 look and act as I wanted. For all my little things to be included, there are probably many more that I don't want, and are also included (and other people want). I am fine with my desktop environment being bloated. That changes for pretty much any other software I run on my computer, I like simple things, but I also don't have unlimited time. Indeed, my initial reason to switch to i3 (or a tiling window manager) wasn't "less bloat" or simplicity5 (I find GNOME very distraction-free, and it has a good performance on my computer). I switched because I was tired of overlapping windows and I wanted to make more use of my keyboard for managing everything.
With all the changes, I am very satisfied with i3, and haven't gone back to GNOME for a week. It did take a lot of time to figure everything out (and configure it), but it was something I had wanted to do for a long time (that's why the many attempts) and I finally had extra time to do it. It was definitely worth it!
I think one of the major issues I had on my previous attempts was the $mod
key used
for all i3 shortcuts. It is so hard to reach the Super
key! I had already switched
the mapping of Caps lock
and Escape
(which improved my vim experience
drastically), so I knew Caps lock
was the key I needed for my shortcuts (it is so
easy to reach!). I have now mapped Caps lock
to act as Escape
if I tap
it, and as Super
if I hold down. With this little trick, i3 becomes a lot nicer, but
without damaging vim's experience. If you are considering using a tiling manager, think about it!
Also recommended if you use vim!