Reading Code Faster Using Proportional Fonts

A lot of source code is written using mono-spaced fonts which seems odd when you consider most other published text you read uses a proportional font (eg. this blog post).

When reading a coding book, all of the text is in a nice proportional font so you can quickly read thorough the book, yet any source code included is often written in mono type just to make it lined up or to distinguish it from the rest of the text.

So, Why don’t we use a proportional text to read and write source code ?

It is interesting to note that all the road signs in the United Kingdom use a proportional font. This type of font was specifically chosen so that drivers could read the names of towns and cities quickly, especially useful for motorway travel. Can this translate into source code development improvements?

Why is it quicker for us to read something in a proportional font ?

The human brain is a fantastic machine at pattern recognition (this is one reason we haven’t been replaced by machines yet). Have you noticed that you can often glance at something and just know what it says, that is because your brain recognised the pattern. Your brain does pattern recognition every time you meet people or watch TV or a film.

Will using a proportional font make any difference to my coding performance ?

I don’t know the answer to this, but as suggested by Maas-Maarten Zeeman I am keen try try this out for a few weeks and see what happens.

As I have been using a ubiquitous language in my development following the concepts of behaviour driven development (BDD) and domain driven design (DDD), I have been using more expressive and therefore longer names for my methods, interfaces and classes. I am hopefully that as my code has become more like natural language in form, that a proportional font will enhance the reading and writing of my source code (I need a better example screenshot).

I am trying out Lucid Sans 12 in Netbeans 6.8 on Ubuntu Linux 9.10 on an Asus Eee PC 1000 and it looks good so far.

Thank you.
@jr0cket


This work is licensed under a Creative Commons Attribution 4.0 ShareAlike License, including custom images & stylesheets. Permissions beyond the scope of this license may be available at @jr0cket
Creative Commons License