I don't wish to troll, but I see this a lot and I can't for the life of me figure out how anyone needs to give this any more thought than 'monospace, next question?', despite many explanations each time.
Can someone shed some light on any advantages they feel are of a reasonably significant importance, and why? I mean, I can see plenty of advantages, but they're all so negligible they're not worth even the time it takes to change font, IMHO.
...and do please note the IMHO - I'm asking, not telling :)
90% of it is really just how purdy it is. Picking the 'right' font will make you feel better when you stare at it all day. It's like how functionally, you could compose a 6000 word essay in comic sans, but really rather not.
But in other cases, depending on your display size/setup, I guess there will be advantages to certain fonts. Now, mind you, the 10 on this list are all 'good' so you won't really see it between them, but certain monospaced fonts have letters/symbols that are more easily confused with each other... like single quote, versus the thing under the tilde (whatever its called >.<)
I find it funny how so many developers I talk to online have this aversion to... well prettiness.
As if form and function is a zero-sum game. Or there's something inefficient about caring about aesthetics. What's wrong with wanting something to be aesthetically pleasing?
Agreed. I care about aesthetics, and using fonts that I think are ugly just make me feel wrong when I'm working. The aesthetics of code is pleasing to me, and the font is part of that.
For me, it wasn't about a particular feature -- it was just about the feel of the two.
A couple years ago, I was doing a lot of work on both my Windows box and my Mac. I noticed that I started to regard my Mac as "soft" and "friendly", and my Windows machine (with large external monitors) was "harsh". I felt mildly stressed out working on the Windows machine, even though I would frequently switch between them sitting at the same desk.
So, on a whim, I looked up the font on the Mac (Monaco), and set it up on Putty, and (surprisingly) it made a big difference. I felt like the code I had was easier to read, and I just generally worked better.
I've since decided I like Bitstream Vera Sans Mono, but at this point it's just something I set up on new computers, with no thought. It's not a rational thing, but who ever says I have to feel rationally about my tools? :)
I only use monospace fonts with well differentiated Ls and 1s. This is a pretty important issue to me as I was constantly making dumb mistakes, and in general it improves readability.
On another note, you probably change the default font when writing a major document in a word processor (unless your using LaTex in which case Computer Modern is often the way to go). Changing your coding font is exactly like that. People like to customize and give their system a personal flavor. Changing fonts and syntax colors is just one part of customizing a system.
This was my main reason for finding the right monospace font for me too, and to easier differentiate O and 0—I prefer a bar across the zero instead of a dot.
But now that I’ve been using Inconsolata for years, it has become my final choice* so I won’t need to waste my time hunting and comparing for a better font. Done deal.
Generally speaking - most of the monospace fonts I see are totally fine and I really don't care about the differences between the 10 he mentioned as being good. But when I go to windows and run cmd.exe I'm blown away by just how ugly the font they use there is.
You can actually add more fonts, though it requires editing the registry and doesn't work for all fonts, I think. It does let you at least get Consolas, which is good enough for the time I spend in cmd.
Super fair question. Frankly, it's unlikely to ever be a big deal. Font design and choice is always a game of small details and your desire to spend time and effort on it depends on how much you care about small details.
For an art director doing print or web design, each and every single detail is vital. They are attempting to ship something as close to perfection as possible. From this grows a fantastic font market where artistic craftsmen have learned to honestly, subtly insert comfort, exoticism, 70s appeal, honesty, clarity, or any of many other subjective emotions into just a few pixels difference in the shape of letters we see all day every day.
But yeah, honestly, when coding, that stuff isn't going to kill you.
At the same time, there's a huge market of experts who have often released free monospaced fonts using the accumulated knowledge of the craft described above. It's easy to find fonts which solve the obvious problems (li1, oO0, mn) and possible to find ones that solve less obvious problems (textual color which can reduce reading stress, condensed fonts which can pack more into a line without feeling cluttered, larger x-height which can appear more inviting).
'Monospace, next question?' is really 60% of what these fonts can give you. 'Modern monospace, next question?' is probably 95%. The last 5 is just there if you care about it. Like usual, the last 5% is 500x the effort of 'Modern monospace, next question', though.
Brightens up otherwise dull days. I think that's all it is. People work better when they occasionally give their computer a makeover, and everything feels fresh.
I have a different answer than all the other replies: for me it's just about fitting as much of my code on the screen as possible. The standard xterm font is nice and compact. For every other font I've tried, if you adjust it so that it matches or beats the xterm font in terms of number of lines of code that fit on your screen and number of editor windows you can fit side by side, they are not readable. Like pretty much literally not readable. (I'm eager to be corrected if I'm wrong -- I may not have tried every font out there, but I've tried a lot of them.)
Therefore the xterm font (FixedMedium6x13) wins. But getting exactly that font in other editors like it is in xterms is not so simple:
For linux, see this comment in the current discussion:
Can someone shed some light on any advantages they feel are of a reasonably significant importance, and why? I mean, I can see plenty of advantages, but they're all so negligible they're not worth even the time it takes to change font, IMHO.
...and do please note the IMHO - I'm asking, not telling :)