Finding the Perfect Programming Font

Published on February 19, 2008

Inspired by The Typography of Code, I took a few snapshots of some of my favorite programming fonts.

BitStream Vera Sans Mono


BitStream Vera Sans Mono is a completely free font part of the GNU font package and has been my preferred coding font for the last few months. The characters are a little tall, but are very clear about which is which.

Panic Sans


Panic‘s one-window web development application, Coda, ships with a great default programming font very similar to BitStream Vera Sans Mono. You can make system-wide use of this gem by digging through Coda’s application bundle content and copying it to your global Fonts folder.

Consolas


Consolas ships with Windows Vista as part of Microsoft’s new font pack, and is so close to being my favorite programming font, however the blinking cursor is positioned a bit too low when displayed on a Mac. The fact that my focus is almost always exactly in that very spot makes Consolas like the smallest of pebbles in your shoe, despite its clearly differentiated characters, comfortable height, and curvier-than-average parentheses. It’s worth nothing that this issue doesn’t seem to occur on Vista and XP systems. More on the cursor issue here, including a fix

Monaco


The old Mac programming standby, Monaco, has been around for many years, as it was originally designed in the early days of the Mac. You may recognize it better in aliased 9pt size in a BBEdit window. But this is the age of Mac OS X — give your eyes a break and use the built-in anti-aliasing and get rid of those jagged edges!

Droid Sans Mono


At last, I’ve found my perfect programming font! Droid Sans Mono comes with Google’s Android mobile phone, which ships with a pack of specially crafted fonts for the phone. The zero and oh characters aren’t as clear as some of the others, but that’s not typically a problem for me. Droid Sans Mono has the lower profile type of Consolas without the nagging cursor positioning bug. I think I’ll stick with this for the forseeable future.