ACCU Home page ACCU Conference Page ACCU 2017 Conference Registration Page
Search Contact us ACCU at Flickr ACCU at GitHib ACCU at Google+ ACCU at Facebook ACCU at Linked-in ACCU at Twitter Skip Navigation

pinEditorial: The Font of Wisdom

Overload Journal #136 - December 2016 + Journal Editorial   Author: Frances Buontempo
The choice of typeface can convey a tone. Frances Buontempo considers the plethora of dilemmas this presents.

Having just bought a new laptop, I have spent time installing things and as ever therefore failed to write an editorial. I noticed once I finally managed to find a command prompt in this new-fangled version of Windows, it seemed very unfamiliar. The first thing that stuck me was the font size, and in fact font itself. In conjunction with a recent outburst of font related puns on twitter>1, I was left thinking about fonts. First, why is it called a font? It is possible this comes from original letters for pamphlets and books being cast (think foundry  found  fount  font) in metal? The roots of this word may relate to pouring or gushing [found] and we can then find a split between fountains (founts) and cast containers. For example, I observe a trend [EnglishSE] towards using the phrase ‘font of wisdom’ (or knowledge) in place of ‘fount of wisdom’. In the older form, fount, the idea is that of a fountain, or source, of something. The latter means a container, like a font or baptismal basin in a church. Wikipedia reminds me that font and typeface are often confused [Font]; the font is a specific size, weight and style of a typeface. Which font or typeface do you use to write your programs and scripts in? Has this been a conscious decision, is it just by habit, or IDE’s default choice or even company diktat?

A couple of years ago at the ACCU conference, Kevlin Henny [Henney] observed that certain fonts, for example on book covers, pin down objects to specific points in history. How do fonts become trendy? Who invents them? Why are some people trying out using Comic Sans for technical presentations? Has anyone ever used it for a CV? I saw a CV in Courier, or at least some fixed width font, which rather impressed my boss at the time. Each new version of Microsoft Office seems to come with a new font as the default. This will date a document, to some extent. I recently saw a PowerPoint presentation and had a brief moment of shock at the choice of arrow-heads for bullet point. I haven’t seen that used for years. Of course, all the trendy people have ceased to use PowerPoint anyway. Right?! Presentation formats have trends falling in and out of fashion.

We could suggest fonts start with the printing press, though having seen pictures of some very old hand-written books with very uniform calligraphy I could muse on an earlier history. Prescriptions of the exact height of hand-written letters such as uncial and half-uncial [Uncials] would distract us all. I presume having a specific format would make such documents and books easier to read. I am always surprised by how dreadful my handwriting tends to be, since I usually type at a computer and am therefore out of practice. Handwriting is slow, if you try to make sure it’s readable. My typing is fast, as long as I ignore typos. I’m not clear how old moveable type is, and I thought Gutenberg invented the printing press but the internet [Internet] tells me I am wrong. ‘He is not the inventor of the printing press, or of printing ink, or even of moveable type. Gutenberg’s Bible was neither the first book printed using moveable type, nor the first book he printed using moveable type.’ The same webpage claims he probably didn’t have a beard either.

Early computer programs would be holes in punched card, as we know. Once we started using letters – say I, J, K – to represent variables or try to write documents in word processors, we arrive at raster or bitmap fonts. When these are scaled up it becomes clear they are made of bits, and have squared steps where they apparently started with a curved line. This contrasts with a scalable graphic, or font, which is limited by the device displaying it. Instead of just having pixels in a grid set to a specific colour, the letter, glyph or whatever is stored as a curve which can then be scaled as desired. Actually, the common composite Bézier curve will be stored as control points and are defined by quadratic, cubic or even higher order equations. Storing the curve itself would require either a bitmap or something recursive, since we are trying to find a way to store a curve. Certainly computer screens have led to an explosion of fonts, from Verdana, Metafont to TrueType and beyond. It would seem that various fonts are supposed to be easier to read on different media. A whole slew of fonts designed for web-browsers seem to exist. In fact, Google Fonts [Google] offers an ‘intuitive and robust directory of open-source designer web fonts’. I do like my directories to be robust. Wikipedia has a whole page devoted to web typography [Web typography]. Some specific issues crop up on webpages, in particular the need to be fast when rendering and the chance things will be in a variety of languages and even alphabets. I am still sure alphabet is not the generic word for glyphs, syllabaries, logographies or graphemes, and should perhaps just be reversed for the Greek alpha-beta. I digress.

It would be inappropriate to talk of fonts without briefly mentioning Comic Sans. We are, I hope, all aware that Comic Sans should be reserved for the appropriate time and place. That could be a child’s party, or comic, again aimed at children, or a live code demonstration to ACCU London. (It was by Jon Skeet, so he can do what he wants.) A brief internet search for Comic Sans turns up many disparaging pages. For example, reminds us, ‘All fonts have a personality and purpose.’ Furthermore, quotes,

There are bad types and good types, and the whole science and art of typography begins after the first category has been set aside. ~ Beatrice Warde

Category theory and types are another matter; the way you present your output sets a tone. The choice of font is just one part of the larger whole, which includes colour, layout and much more. Comics choose specific typefaces for different characters, perhaps as a form of leitmotif. The visual layout brings the story alive. I wonder how webpages are perceived by visually-impaired visitors. If an audio description is read, does it take into account the font? Do websites even have audio descriptions?

Having touched on Comic Sans, this takes us to emojis. A recent ‘news’ story reported the development of a new set of emojis for older people [BBC], dubbed ‘emoldjis’. I hadn’t realised there is a formal process to create an emoji. With a bit of web-surfing I found a technical report [TR51] providing guidelines for interoperability of such characters across platforms. It appears the first Unicode emoji characters were added to Unicode 5.2 in 2009. Are there any programmer specific emojis I wonder? I observe an attempt at emoji domain names. A blog [Domain names] observes they can be difficult to navigate to without an emoji-dedicated keyboard. Websites do exist to generate them for an existing site, and you can then use the proffered hyperlink. Would you want to code in emojis? Once or twice I have seen proper mathematics symbols in comments in code, which is right and proper and doesn’t show up properly if the Unicode used isn’t supported in your editor of choice. If you find an editor that can cope, you could code in emoji. Or emojicode in fact;

Emojicode is a static strongly typed programming language…Emojicode is an open source, high-level, multi-paradigm, object-oriented programming language consisting of emojis, that allows you to build fast cross-platform applications while having a lot of fun. And it’s 100% real.

The webpage gives a fine demonstration of Fibonacci number generation, but first doesn’t seem to have any tests and second I can feel the pain of trying to correctly get that in print for Overload without even trying.

Aside from the character set, or perhaps together with it, we should consider punctuation. Early writing had no breaks between the words, let alone full stops to end sentences. This would make writing hard to parse, and indeed many programming languages tend to use punctuation to make the parser’s life easier. Gradually we see spaces being introduced between words, and then various marks introduced to indicate pauses in the reading, such as a comma for a shorter pause. Or full stop for greater emphasis. I have seen many older texts tending to use a semicolon where a comma or perhaps period would be preferred nowadays. Often a sentence will last an entire paragraph. Modern writing seems to favour shorter sentences. In addition, some of our punctuation is used to disambiguate meanings. An example would be the difference between

Charles the First walked and talked half an hour after his head was cut off.


Charles the First walked and talked; half an hour after his head was cut off.

Many other examples exist. Perhaps this just means English is deficient. I have a sense that Latin, for example, has many precise tenses and verb declensions which would make the meaning clearer, possibly reducing the need for punctuation. I wonder if there is an analogy between programming languages, such as C++, which require a lot of punctuation contrasted with ones which do not, such as Python, and human languages? Perhaps. Will we continue to get new punctuation marks, or do we have sufficient? Really?! Ah yes, interrobang (Unicode character U+203D, apparently). Developed by one Martin K. Speckter in 1962 [Interrobang], it hasn’t fully caught on since it was rather difficult to type on a typewriter. It still begs the question, ‘How would you punctuate a sentence like this?!’ Do we need more punctuation, or should we return to simpler times, a lá New Roman?

Look at some code you have written recently. What font are you using to view it? Is that included in version control? I presume not. Are you using a fixed width font? There are times when you do want columns to line up, but many people are using proportional fonts to code instead of fixed-width ones. There is a brief discussion on Slashdot [Slashdot] about the use of proportional fonts, noting some claim they are quicker to read. Being Slashdot, the comments are worth a read, though one CdBee notes, ‘/. is meant to be the font of all knowledge, not the knowledge of all fonts.’ People have fought wars (almost) over layout of braces and whitespace placement. This is all related to how easy something is to ‘grok’. Some people cannot cope without colour coding. I suspect any UX style studies of the ‘one true way’ to present code will fail to take into account diversity and individual preference. You need something that works for you, but if you pair, or even mob, program, a setup that works for everyone is ideal, even if it’s not possible. There is no one true way, or font of all wisdom on how to present things well. And there’s no editorial either, but what did you expect? Before I finish, I must share a web article that considers the use of fonts in Blade Runner [Blade Runner]. It mentions ‘Blade Runner’s only reported instance of Eurostile Bold Extended’ and that the details of the replicant Leon are almost in Caslon font, but, and I quote, ‘despite everything else matching nicely, the top of the 6 is just wrong. I can only apologize for the discrepancy.’ The analysis of the serial numbers and date formats that follow is highly recommended. I suspect I have found the source of the knowledge of all fonts. The fount of all things font?!



[Blade Runner]

[Domain names]











[Web typography]

  1. ‘I shot the serif’ being a ‘Capital crime’ apparently

Overload Journal #136 - December 2016 + Journal Editorial