Recs.
Updated
i3 is a tiling window manager, completely written from scratch. The target platforms are GNU/Linux and BSD operating systems, our code is Free and Open Source Software (FOSS) under the BSD license. i3 is primarily targeted at advanced users and developers.
SpecsUpdate
Pros
Pro Fully configurable (including tiling)
One of the biggest attractions of i3 is that it can be configured just about any way the user likes. Ranging from custom keyboard shortcuts to placement of opened apps, it is up to the user as to how they would like their window manager to behave.
Pro Excellent documentation
Every feature is thoroughly documented (including examples), and documentation is kept up-to-date. For questions that are not answered by the i3 user guide, because they concern tools outside of i3 for example, there is the community question & answer site.
Pro Fast, especially on weaker hardware
Tiling means there are no fancy compositing or window effects to take up system resources.
Pro RandR support
RandR provides more information about your outputs and connected screens than Xinerama does. To be specific, the code which handled on-the-fly screen reconfiguration (meaning without restarting the X server) was a very messy heuristic approach and most of the time did not work correctly — that is just not possible with the limited information that Xinerama offers (just a list of screen resolutions and no identifiers for the screens or any additional information). Xinerama simply was not designed for dynamic configuration.
Pro Easily readable plain-text configuration
i3 has plain-text configuration, meaning that no lua or haskell is needed. This makes it rather easy to recommend i3 to other people without worrying whether or not they have the knowledge to configure it as it can be read by anyone without prior knowledge.
Pro Can be reloaded quickly and configured without a client restart
Just two hot keys: Shift+Super+C to reload the config and Shift+Super+R to restart (which takes less than one second). Restarts pick up new versions of i3 or the updated config file, so you can upgrade to a newer version or quickly see the changes to i3 without quitting your X session.
Pro Great choice for keyboard users
The user keeps their hands in one spot (most of the time). One will find that the mouse is used less and less, making navigation quicker over time.
Cons
Con Missing "include" possibility in config
While pretty good and easy to use for common tasks, the configuration language is missing the include
directive common in other languages. You can use a workaround - a shell script to config parts on demand. It would be best if this were built-in however.
Con Poor floating window support
Sometimes this is necessary, even when the Dev rejects feature requests. Firefox child windows (option dialog) is an example.
Con Manual tiling
The layout isn't automatic. The user must move panels manually and may indeed end up spending time on that rather than on working with the application.
Con No shortcut to switch between two recently used applications/windows
You can easily switch between two workspaces but not two windows (which are not adjacent to each other). The functionality simply isn't there and the dev refuses to include it as a part of i3 core. This can get annoying when you have multiple windows in the same workspace. There is a manual workaround though.
Con It has some issues with transparency
Using transparent windows can cause them to crash.
Con The plain-text configuration may not be suitable for beginners
i3 is configured through a plaintext configuration file. While it's very powerful and easy to learn, it may not be entirely user-friendly for those who have never edited a text configuration.