Test Drive Your New Programming Font

After hour and hours spent in front of a terminal or IDE, a user begins to build a list of infuriating little things. That one pop-up box that happens every time you press that button by mistake. The noise the software makes when the compile fails. Or the horrible reality that your code just crashed because there wasn’t enough difference between uppercase ‘O’ and a zero. In comes the programming font.

The typical way to find a programming font is to troll forums for a user with a similar problem and see if they have a workable solution. [Koen Lageveen] went out and found nearly all of the free programming fonts out there and compiled a list. He then took one more step and wrote a web app that lets you test them out. Hopefully this will help those in the very real struggle for the perfect programming font. You can try out the tool for yourself, and if you really like it [Koen] has all the code up for it on his GitHub.

[via Hacker News]

43 thoughts on “Test Drive Your New Programming Font

        1. I’m not hanelyp, but I can tell you what I don’t like about DejaVu, having used it in the past. Note that I still use DejaVu as a console font on Linux (Menlo on OS X, which isn’t free).

          The two biggest things which stood out were the narrow minus sign (MUCH lower weight than the plus sign, and looks completely wrong when using it as a right arrow) and the raised asterisk (it looked fine when used as a C pointer operator, but sorely out of place when used as a multiplication operator). I’d go so far that any font with a raised asterisk is not a programming font.

          I also didn’t like the tilde at small pitches, which was too flat and wasn’t high enough to distinguish it from a well-constructed minus sign, but I could have lived with that because it was rare that I found them in a context where they were likely to be confused. I feel that a raised tilde looks better for programming, and a more central tilde looks better on a Unix-like console.

          I personally prefer Inconsolata for programming, which has its problems, but fixes all of the above issues.

          Ultimately, it’s a very personal decision and I can only say what works for me. I do strongly suggest trying different (but not so different that they jar) fonts for programming and console use, though.

  1. I like the test drive idea. It would be nice if you could set a point size, I usually use small sizes, and I’ve found that not all fonts that looked good in a preview scaled well. But Ctrl +/- on the browser works well enough for a general idea.

    Also, I found it helpful to open two of the testers, side-by-side in separate windows, to allow comparing two fonts.

    I’ve been using Bitstream Vera Sans Mono for a while now. But Source Code Pro is pretty darn nice too. Hmm…

    Can’t figure out why some are even in there though. Like Nova Mono. Those lowercase i’s are horrid.

  2. When did you kids start calling terminal fonts “programming fonts”?!?! Get off my lawn! (And back into the command line.)

    The demo code, being code rather than a font-test string, is missing stuff. I ended up typing (01l1l1O0qZ@%&) into the text. 0 and O are indistinguishable in Luxi Mono, for instance — grounds for disqualification?

    I ended up where I began: Inconsolata-G. I just can’t get behind the curvy “l” and wimpy “f” that Bitstream Vera and all its clones have. (For me. It’s really just a preference.) A wider Anonymous Pro would be interesting. Input Mono is new to me, and pretty cool. Maybe I’ll try that out for a couple days.

    1. I did the same thing, but this:

      The font on this forum doesn’t quite render properly in my opinion and thus fails my tests, so I added a description of what I typed in order to emphasize the weaknesses or strengths of the fonts I tested.

      0OQ0OQ0OQ (zero, uppercase O, uppercase Q)
      IlLIlLIlL (uppercase i, lowercase L, uppercase L) in hind sight, I should have added number 1 to this mix
      S5S5S5S5 (uppercase S, number 5)

      My favorites ended up being Consolamono, Input, Pro Font, and PT Mono

  3. I am doing pretty well wit “consolas”. Its very readable in small sizes, like 8 or 9, but for me the line spacing (visual) is critical: If is much then is hard to make sense of a whole block; if is few is hard to get focus in a single line.

  4. The list appears to be missing monoid, my current preference for editing code. Not the prettiest font, but very readable for all those details that matter in various programming languages.

Leave a Reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.