The Troubled Programmer

The palette of this popular color scheme for terminal and GUI applications aims to maximize sixteen colors, providing contrast on both dark and light backgrounds.

HUMANS CAN PERCEIVE over 2.8 million different colors, the number of possible combinations is virtually infinite; to assemble a color theme for code editors is tedious. The combination has to be practical, beautiful and easy on the eyes.

Solarized is a sixteen color palette (eight monotones, eight accent colors) designed for use with terminal and GUI applications. Ethan Schoonover designed this colorscheme with both precise CIELAB lightness relationships and a refined set of hues based on fixed color wheel relationships:

On a sunny summer day I love to read a book outside. Not right in the sun; that’s too bright. I’ll hunt for a shady spot under a tree. The shaded paper contrasts with the crisp text nicely. If you were to actually measure the contrast between the two, you’d find it is much lower than black text on a white background (or white on black) on your display device of choice. Black text on white from a computer display is akin to reading a book in direct sunlight and tires the eye.

Solarized is a low contrast colorscheme that retains contrasting hues for syntax highlighting readability. Its light and dark background modes retain the same selective contrast relationship and overall feel. I use the light mode during daylight and the dark mode at night.

I use Solarized in iTerm2, Vim and XCode; further application specific color themes are available for most common editors and IDEs.

In Changelog Episode 0.7.7: Wynn Netherland sat down with Ethan Schoonover to talk about the science and design behind the wildly popular color scheme as well as his love for Arch Linux.

I delight in my editor, it allows me to be a programmer—Solarized is the color scheme I was looking for. Come, join us in the shade!