
B612 is a highly legible open source font to be used on aircraft cockpit screens - bobowzki
http://b612-font.com
======
jmwilson
Their own legibility study shows it's about around the same as Verdana:
[https://i.imgur.com/M0C3TkY.png](https://i.imgur.com/M0C3TkY.png) (excerpt
from the PDF in the download .zip, vertical axis is misidentifications). Their
design goal was beating their current font (CDS), which seems a bit of a
sandbagged goal if you look at the sample in the report. I wonder if we've
reached a plateau of legibility for technical fonts after identifying the easy
wins in typeface design for screens.

~~~
seizethecheese
For those not aware, Verdana happens to be the font Hacker News uses.

~~~
aritmo
But is Verdana provided as a webfont?

On mobile, almost no one can see Verdana.

~~~
chrisseaton
> On mobile, almost no one can see Verdana.

But it's included in iOS ([http://iosfonts.com](http://iosfonts.com))?

------
oakwhiz
I'm surprised they didn't cross or dot the zero. Surely differentiating O from
0 is important when eye fatigue is a problem?

~~~
gnulinux
How often do you see 0/O ambiguity inn non-programming context?

~~~
jayalpha
Passports. German passport has alphanumeric number but no O to avoid 0/O
ambiguity.

~~~
philipps
Yes. Is that only an issue in German passports or generally applies to all
passports?

~~~
jayalpha
It is a rule for German passports. US passports don't have characters. AFAIK
there is no general rule for passports.

Also, some passport numbers stay with you for life (China), other change with
every passport.

------
userbinator
For comparison, Boeing uses Futura in their cockpits:

[https://en.wikipedia.org/wiki/Futura_(typeface)](https://en.wikipedia.org/wiki/Futura_\(typeface\))

~~~
mrob
The 'p' and 'q' are mirror images here, which could be a problem for people
with dyslexia. The new B612 font has clearly distinct shapes even after
mirroring.

~~~
EForEndeavour
This sounds like a fair critique, but I'm not a dyslexia expert. Some honest
questions:

Doesn't dyslexia involve transposing the positions of characters, not
mirroring individual characters? Or do some/most dyslexics also sometimes
misread letters as their mirror-image counterparts?

Considering dyslexics have difficulties with already very distinct shapes
(i.e., most letters are pretty unique), would a relatively subtle difference
between p and mirrored q actually reduce the error rate? Or is that "premature
optimization" in that the drop in accuracy due to the p-q mirror images is
dwarfed by the gain in accuracy of using Futura?

~~~
mrob
I remember reading about dyslexics liking Comic Sans because the letters have
distinct shapes even after transformation. This then inspired the creation of
specialist fonts that are supposedly better, but since I last read about it
there's been some research suggesting it doesn't actually help, so I retract
my previous post.

"Dyslexie font does not benefit reading in children with or without dyslexia":

[https://link.springer.com/article/10.1007%2Fs11881-017-0154-...](https://link.springer.com/article/10.1007%2Fs11881-017-0154-6)

------
SomeHacker44
To this day, I marvel during turbulence at how much easier it was to read
pointer gauges than modern strip/numerical display EFIS displays. Don't even
get me started with the touch screen trend. Thanks for trying to make the EFIS
more readable. Airbus.

~~~
bmer
What does EFIS stand for? And, could I get you started on the touch screen
trend?

~~~
danaliv
Touch screens installed in the instrument panel are very hard to use in even
light-to-moderate turbulence. Have someone shake your phone around while you
try to dial a number and you’ll have some idea of the difficulty. Knobs, and
to a lesser extent physical buttons, give you something to hold onto. It may
not sound like much of a difference but in my experience it’s much, much less
error-prone to have hardware inputs when the aircraft is getting bounced
around.

~~~
thaumasiotes
Touch screens in cars are also a huge step backwards in usability from the
buttons and knobs they replaced. I'm not sure why the switch happened.

~~~
TeMPOraL
For cars, my guess would be that a) it allows you to entirely disconnect the
UI work from the work on actual car, and run it in parallel, and b) it looks
cool and futuristic in ads. I don't see how either would apply for planes,
though. There, I suspect it's an attempt to manage the amount of data a pilot
needs to see at any given moment, and to enable equipment changes without
rebuilding the cockpit.

~~~
int_19h
The worst part of this trend is that now that the touch UX is handled entirely
in software, the remaining physical controls often are as well. In my 2018
Subaru Outback, for example, the physical volume knob doesn't work until the
system has "booted" completely, even though it might already be blasting music
or radio resumed from the last time it was shut down. So there's those 2-3
seconds where there's no way to reduce volume, mute, anything.

------
bloak
Two other sans-serif fonts designed for legibility and widely tested:

"Transport" font used in UK road signs:
[https://en.wikipedia.org/wiki/Transport_(typeface)](https://en.wikipedia.org/wiki/Transport_\(typeface\))
[http://www.roads.org.uk/fonts](http://www.roads.org.uk/fonts)

"Mandatory" font used in UK number plates:
[https://en.wikipedia.org/wiki/Mandatory_(typeface)](https://en.wikipedia.org/wiki/Mandatory_\(typeface\))
[http://www.k-type.com/fonts/mandatory/](http://www.k-type.com/fonts/mandatory/)

~~~
sdfjkl
Also DIN 1451:
[https://en.wikipedia.org/wiki/DIN_1451](https://en.wikipedia.org/wiki/DIN_1451)

~~~
ckozlowski
Highway Gothic for the U.S.-
[https://en.wikipedia.org/wiki/Highway_Gothic](https://en.wikipedia.org/wiki/Highway_Gothic)

------
yellowapple
What's the deal with the license? This page mentions only the Eclipse Public
License, while the actual Polarsys page and the GitHub repo mention/include
three different licenses: the EPL 1.0 (!!!), Eclipse Distribution License 1.0
(BSD-like), and SIL Open Font License 1.1. Should I take that to mean it's
multi-licensed and I can use this font under whichever of those licenses I
choose? If so, what's the point of making EPL and SIL licensing options when
the EDL has far fewer strings attached (and is more obviously compatible with
other licenses, notably the GPL)?

Relevantly, the EPL 1.0 is incompatible with any version of the GNU GPL (as is
the EPL 2.0 by default).

------
KboPAacDA3
B612 is the name of the asteroid from Le Petit Prince (The Little Prince). The
narrator is a pilot.

~~~
dogma1138
So was the author Antoine de-Saint Exupery

------
hamiltont
I had a chuckle at the background image using ALLCAPS, which is infamous for
its lack of legibility - e.g.
[https://en.wikipedia.org/wiki/All_caps#Readability](https://en.wikipedia.org/wiki/All_caps#Readability)

~~~
Shorel
That link claims that ALLCAPS tend to be read letter by letter.

I find that claim to be completely false, as I am learning to read text
written in Cyrillic alphabet, when I do actually read the words letter by
letter and I even get surprised when I finish reading a word.

In contrast, I can read text in all caps at about the same speed as lower case
text. If there's any slowdown, I say I read all caps at 95% of the speed I
read text in lowercase.

Later the same page says this: "all-capital text was read 11.8 percent slower
than lower case, or approximately 38 words per minute slower".

In that case that later claim completely contradicts the former claim of
letter by letter reading, which is IMO about five times slower, not just a few
percent points slower.

In any case, ALL CAPS text is perfectly legible, and it is actually more
legible than using something like cursive, including lowercase cursive.

------
informatimago
Only the parentheses look like brackets. Everything else looks quite nice. But
for lisp programming, those bracket-looking parentheses are ugly...

~~~
Syzygies
Lisp is the canary in the mind shaft.

All programming languages have a bracket problem; Lisp just has a more intense
bracket problem. Until the recent advent of 4K and "retina" displays, it
wasn't practical to have significant weight variations in screen fonts for
programming. It's now practical, and it's easy in font editors such as Glyphs
Mini to swap in or modify brackets to be a lighter weight.

I've made many Lisp coding experiments: with preprocessors that eliminate most
parentheses, with alternate symbols, and with various weights and sizes of
parentheses. There's something to be said for the theory that parentheses
should be lower case, just like identifiers. (I'm reminded of the "GET OFF MY
LAWN" effect in Common Lisp; one can shut off the upper case defaults but most
people don't stay around long enough to find out.) However, my favorite
approach is to make parentheses light, but not too light. There's a sweet spot
where you actually love the lightweight brackets, in Lisp code and everywhere
else. You're conducting an orchestra, not engaging in a knee-jerk debate; if
the trumpets play too loud, teach them to play at the right volume.

It took me ten minutes to swap in ()[]{} from SourceCodePro-ExtraLight, and
copy a period into the center of the zero. This a fine Lisp font but not my
favorite. I like Input Mono, or Courier Prime Code (both similarly modified).

[http://input.fontbureau.com/](http://input.fontbureau.com/)

The Input download can be customized to look nearly identical to B612, only
better, and without the O0 and () problems.

~~~
pvg
_Until the recent advent of 4K and "retina" displays, it wasn't practical to
have significant weight variations in screen fonts for programming._

Really? Bolded keywords and other tweakery was common on 512×342 OG Mac
screens.

~~~
Syzygies
Did you like how that looked? I didn't. The resolution wasn't ready. The
resolution certainly didn't support going lighter.

I'm trying to understand why lightweight Lisp parentheses haven't been a thing
for 50 years. It's so obviously right once one tries it, with sufficient
resolution. My guess is that "sufficient resolution" is both key, and recent.

~~~
theoh
I'd guess that most people who value typographic nuance and clarity find
Lisp's lack of concessions to syntax makes reading code an extremely clunky
experience. I think Lisp's (lack of) syntax adds up to a set of tradeoffs that
actively repels visual thinkers/typography folks, compared to Miranda-style
syntax.

NB Haskell folks are not any more likely than Lispers to think visually. A lot
of Haskell code is difficult to read. But it does feel like the Miranda-style
syntax (particularly pattern matching) has made the first few steps towards
eliminating unnecessary structure-related cognitive load on the programmer.

Lisp partisans will probably reject this opinion, but IMO the presence of
strings of matching parens in Lisp isn't something that needs to be restyled
with a better font, it's something that needs to be designed out of the
language.

Edit: I know this ground has been well-covered in the past. Usually the advice
is that by using a proper editor and relying on indentation, parens just stop
being a noticeable problem. Whether just restyling parens is cosmetic or not,
it seems less powerful even than that advice.

~~~
Syzygies
Scheme is a stunningly beautiful language with inferred parentheses:

    
    
        define | edge? g e
          let
            $ es | edges g
              e2 | reverse e
            or (member e es) (member e2 es)
    

I used to rely on a preprocessor that translates back and forth to standard
Scheme:

    
    
        (define (edge? g e)
          (let
            ( (es (edges g))
              (e2 (reverse e)))
            (or (member e es) (member e2 es))))
    

One gives up being able to use standard tools. For Emacs or Vim, one can write
one's own tools, but it's nice to be able to try out everyone else's work
first.

The central question for any programming language isn't how comfortably it
welcomes casual newcomers; it's how effectively it creates a human:machine
interface for the committed. Most criticisms of how Lisp looks can be likened
to criticisms of a frozen screen from a crashed video game. One needs to play
the video game. Lisp acquires its meaning in short time scales from the
experience of syntax-aware editing, a live experience. Lisp acquires its
meaning in long time scales from the experience of using macros to rewrite the
language to exactly suit the problem at hand. Haskell is safer, faster, more
densely expressive, but not as plastic. Lisp appeals to woodworkers; other
languages appeal to people who like to buy nice furniture, sit in it and get
to work. I can see both sides, and I've worked hard to experience both sides.

~~~
mncharity
> beautiful language with inferred [...] a preprocessor that translates back
> and forth to standard

Most focus is on transforming code for machine consumption (compilation). But
underappreciated I think, is that code can also be transformed for humans.
Reversibly (editing), and not (analysis). Colorization and outlining are
common. Less common are syntax transforms like yours. Fortress-like
mathification. Reverse templating and macros. Intensional programming. The
idea of a collaborative-compilation environment with an editor-like UI.

So much potential fun. But so little R&D funding. And a discoordinated
profession. So decades slide by.

~~~
marcosdumay
> But underappreciated I think, is that code can also be transformed for
> humans.

It's called pretty-printing. The name is underwhelming, but there are some
advanced techniques for it.

------
crankylinuxuser
This might be a weird question , but within topic.

What makes fonts convey other information? Why is comic sans so derided? (It
obviously is.) What makes the emotion of a font come out?

~~~
sjwright
I always thought it was because it was used by people who thought it made
their poorly written crap seem more personal and human, when in reality all
they were doing was one exceptionally low-effort action: pick the one wacky
font that shipped by default with Windows. But instead of making their writing
actually seem more personal or human, it just made it look cheap and
unprofessional because it was equally associated with the sort of output you'd
expect from any child playing with a 1990s-era Windows computer.

(The right answer is instead to embed personality and humanity into the words
themselves, which is comparatively much higher effort and indeed beyond the
skill of many people.)

Over time we've grown accustomed to working within pre-packaged emotional
bounds (e.g. the limited set of emojis) and the meme-status of the font has
long since passed so it would probably not be quite the same _faux pas_ today
as it was two decades ago.

~~~
sjwright
[https://www.seroundtable.com/photos/google-door-sign-
mockery...](https://www.seroundtable.com/photos/google-door-sign-
mockery-19305.html)

------
vackosar
How does it compare to OCR-A? OCR-A font was made to be recognizable by 60s
OCR tech.
[https://en.wikipedia.org/wiki/OCR-A](https://en.wikipedia.org/wiki/OCR-A)

~~~
sprash
OCR-A is my favorite monospace font. Sadly unicode support is obviously rather
limited if present at all.

------
aj7
[http://fly-out.net/wp-content/uploads/2017/12/B612-Leaflet.p...](http://fly-
out.net/wp-content/uploads/2017/12/B612-Leaflet.pdf)

More info

------
blester
The period is really close to the word it follows, it looks very strange in
the monospaced version for programming.

------
bluejekyll
Personally, I still haven’t found a better font for reading and writing code
than source code pro: [https://fonts.adobe.com/fonts/source-code-
pro](https://fonts.adobe.com/fonts/source-code-pro)

B612 seems much more like a Helvetica derivative.

~~~
ncmncm
Source Code Pro was a step down from Inconsolata that preceded it.

It's not hard to see why people want to make more infinitesimally-different
fonts with their own name and a funny ampersand or (in this case) parentheses.
What is never explained is why anybody else should care.

~~~
grzm
> _”Source Code Pro was a step down from Inconsolata that preceded it.”_

I’m not aware of any shared history between Inconsolata and Source Code Pro.
Do you know of any? On the on there hand, Inconsolata is heavily influenced by
Lucas De Groot’s Consolas.

~~~
ncmncm
As I noted, Inconsolata existed before they began work on SCP. It is an
objective improvement on Consolas, and thus worthy of attention and change.

Normally, when putting in the effort to make something new, one tries to make
it better than what came before, on some axis. Introducing a new thing less
good than what came before is a waste of our time and a distraction from the
better things. I don't doubt that designing SCP or B612 was educational for
its designers, but that is not a good enough reason to adopt it, or even to
study whether to adopt it.

The new thing should be better. Why is that hard to process?

~~~
nerdponx
Why should B612 be better for programming than Inconsolata, Consolas, or
Source Code Pro?

For that matter, I don't think you can say that any one of those fonts is
better than any other, for anyone but yourself. I find Inconsolata too narrow
and cramped on the screen, compared to the wider SCP. And the cute lowercase
"t" in Inconsolata is by comparison lost on me after 8 hours of coding, and I
don't notice in absence in SCP.

~~~
ncmncm
In fact, aside from its weird glyph choices for some code points, SCR is very
much like Consolas or Inconsolata of one point size up, but with a scan line
removed -- e.g., SCP 9 is pixel-for-pixel a squashed Consolas 10, with trivial
alterations. So it might be said to be "Consolas Squat with some weird
glyphs".

~~~
nerdponx
I appreciate the education on typeface design, but that's not what I asked.

------
yardstick
Why didn’t they put horizontal lines on the top & bottom of the uppercase I? I
appreciate that I/i/l/L all look different, but if I was reading a word in
that font for the first time and it had an I but not an L it could be easily
confused.

~~~
jcims
I thought that was quite strange as well, particularly with the stated
objectives of the font.

Would be interesting to see if there was any discussion about it.

------
enz
If the font works, I suggest we use it on airports flights information
displays too. Those are not always very legible... (with the slashed 0, of
course)

------
asdfasgasdgasdg
On Windows, it has quite an odd look in the font viewer. It seems like it is
not being anti-aliased for some reason. The unusual cutouts also seem very
prominent on a 4k screen. I'll probably still try it at work, but I am
guessing this is not going to displace my current font of choice. Thank you
for sharing!

------
leshow
I can't seem to get the font to show in vscode. I've installed the ttf fonts
to ~/.fonts and refreshed my font cache, but "B612" as a font name doesn't
seem to match anything, neither does "B612 Mono" or "Regular"

~~~
padthai
If you are using Linux put the (ttf) fonts in ~/.local/share/fonts/TTF/
instead.

~~~
leshow
The fonts are still accessible if they are in home, I found `fc-list` which
gives the name for each of the font files.

------
matthewmacleod
On a vaguely related theme, are there any open-source frameworks or designs
for building things like embedded industrial dashboards or mission-critical
control software? I’d love to build on something that already incorporated
best practices.

------
tvanantwerp
The colon and semicolon seem unusually small compared to other characters,
making than rather hard to distinguish from one another. Trivial for a pilot
perhaps, but rules it out for me as a possibility for programming.

------
chrisbennet
I’ve got a couple of different radar screens that will look great with this
font!

------
synack
[https://github.com/polarsys/b612](https://github.com/polarsys/b612)

------
ggm
Why leave zero/oh confusion possible by not slashing the zero?

------
platz
it is a very wide font, compared to programming fonts which are more tall than
wide.

------
winter_blue
I'd love it if HN could switch to this font. We use Verdana anyways, and B612
is close enough to it.

~~~
lolc
This is not a font to read prose in. It's also restricted to classical latin
letters, which makes it a poor choice when text includes other letters.

------
ncmncm
Yet Another sans-serif face, with dubious claims for legibility, as usual only
vs. other sans-serif faces.

When will they learn? When will we?

~~~
adestefan
If you look closely you’ll see it’s a serif font.

~~~
ncmncm
I looked closely, again, and see that it remains yet another sans font, of no
greater interest than any of the last hundred.

~~~
loktarogar
Great, thanks for your input.

