It's too grotesk. I think Apple accidentally set everyone off on the "search for the perfect sans font" but neither this nor the new Discord font is anywhere near as nice as San Francisco.
Very straightforward, highly legible at all weights, normal-human-being-style kerning and nicely tucked edges. If you're looking for something more flavorful than Roboto, use this or Inter. Please don't design your own eye-melting garbage, for my sake.
Nice call on the Plex Sans, for at least one major reason: The capital "i" has a crossbar.
Any font that doesn't have a proper capital "i" (meaning one WITH CROSSBARS) should be rejected, especially for any kind of technical use. If you can't tell the difference between a lower-case L and a 1, the font is useless. And really the same goes for a capital O or zero.
Here's a list of sans-serif fonts I've found that have proper capital "i":
Dejavu-sans-mono (zero clearly different)
Victor-mono (zero clearly different)
Noto-mono (zero clearly different)
Chivo (O and zero different width)
Comme (O and zero different width)
Darker-grotesque (O and zero different width)
Didact-gothic (O and zero different width)
Droid-sans (O and zero different width)
Droid-sans-mono (O and zero different width)
Metrophobic (O and zero different width)
Monda (O and zero different width)
Nobile (O and zero different height)
Noto-sans (O and zero different width)
Sen (O and zero different width)
Luciole (O and zero slightly different width)
IBM Plex (O and zero slightly different width)
Tiresias-infofont (O and zero indistinguishable)
Clear Sans (O and zero indistinguishable)
When I originally posted this list, I provided a link to every one of these fonts. Hacker News "shadow-banned" it without simply telling me that it was flagged, so I spent the time rounding up all the links and creating the list for nothing.
Why do more people not call out Hacker News for its disgraceful treatment of users and deliberate wasting their time? There's no excuse for it. Look at the way they allow you to type out a lengthy question or comment and THEN say, "OH NO, you're posting too fast. Piss off." Instead of simply DISABLING THE REPLY BUTTON.
One thing I don't like about Plex aesthetically is that the italic faces have right-facing serifs on the bottom of most letters for some reason. It's needlessly inconsistent.
Here's a list of sans-serif fonts I've found that have proper capital "i":
> Please don't design your own eye-melting garbage, for my sake.
I think there is still so much room to experiment with Grotesk typefaces. Perhaps the frustration is caused by everygoing going Druk in Magazine design and custom Corporate typography that's just incredibly...corporate. Every other grotesk fork of Akzidenz tends to follow Helvetica's path and the New York aesthetic. Public apathy is understandable.
The other fork of Akzidenz is Univers and its derivates; they are wonderful, especially for technical communication. I can't pinpoint why, perhaps it is nostalgia, but perhaps it is its formality and the way it is kerned by Adrian. Genius. I wrote about it on HN a few years ago: https://news.ycombinator.com/item?id=19621544
There are only a couple of decent typefaces that are alternatives to Univers. Unica77 and Swiss 721, both again trying to bring Helvetica into the Univers business.
So, I've taken up the task of propelling Univers forward. I hope it won't melt your eyes.
> If you're looking for something more flavorful than Roboto, use this or Inter.
Speaking of which, Inter 4.0 is in beta and looking really good. Now's a great time for type aficionados to try it out and offer feedback! https://github.com/rsms/inter/releases
• Six new "Display" designs which used to be a separate font, Inter Display. Now integrated into the variable font as an optical-size axis (opsz)
• Coordinate system changed to 2048. This addresses some issues with older (10+ years) postscript printer drivers and some software
• slnt (italic) variable-font axis has been removed and there are now two variable fonts, one roman and one italic, both with wght and opsz axes. This addresses issues with web browsers unable to reliably apply italic styles. Also makes it possible for the Italic designs to diverge from the upright "roman" design, which is not possible when italic is an axis of one variable font.
• Lots of improvements to glyph design of all styles, kerning and metadata
Plex Sans is too angular for me, the "f", "g" and "t" for example. I like Grotesk style sans serif fonts personally, there still isn't an amazing one out there.
I hate to admit it since IBM are like the OG "big bad company" but their Open Source programming fonts are the ones I like the best out of those that came out recently (Source Code Pro, Cascadia, JetBrains Mono, Mononoki, Go Mono, etc - see https://www.programmingfonts.org)
This was discussed 22 days ago(119pts, 48 comments)[0], slightly different content[1] but not by much. It seems a shame this blog post didn't address samueloph's point[2] (lower L and upper i are ambiguous)
For a body text font, there's no problem with lower L and upper i being ambiguous. When you're reading paragraphs of text, there's virtually always enough context that it's a non-issue.
Now, if you're displaying code or a password or similar that needs to be retyped, then yes they need to be differentiated, but that's not what a font like this is meant for -- that's what monospaced code fonts are for.
But no differentiation is needed for a proportional sans-serif font intended for regular written language. An uppercase i with crossbars above and below would be jarringly ugly for many sans-serif fonts, and similarly a hook at the top of a lowercase L may not fit the font's personality at all, depending on how other letterforms are designed. (And trying to differentiate the lowercase L with something more subtle, by making it a smidgen taller or angling the top, usually might as well be invisible at body text size.)
It still comes up occasionally; just yesterday a customer was talking about the clID field of an XML file in an email, and it's kind of hard to see. For years I thought Douglas McIlroy was named "Mcllroy" (with two lower L's) and I wasn't quite sure how you should pronounce that, until I heard his name pronounced somewhere; "ohh, it's a capital i!"
Given how easy it is to prevent this kind of confusion, I don't really understand why you wouldn't want to at least provide a subtle hint and make either the I or l stand about just a little bit.
There is no reason to omit the crossbars. Capital "i" has crossbars; every elementary-schooler knows this.
Why select a font with an ambiguous character in hopes that you'll never encounter a situation where it's unclear... and then face a dilemma when it is? Simply select a properly-designed font in the first place, and all use-cases will be served.
Elementary-schoolers write their lowercase a's as single-storey while typography nearly universally uses double-story. They write their lowercase g's as single-storey while fonts often use double-story. And they write their uppercase Q's using a tail that crosses the bowl, rather than one carefully underneath, as if often used in typography.
So I wouldn't rely on how elementary-schoolers write as a guide for typographic design.
In any case, there is a perfectly good reason to omit the crossbars, which is consistency. They are essentially serifs, and it's totally inconsistent to use serifs for just one out of 52 letterforms and not on the remaining 51.
Putting crossbars on an I is like a bar through a 7, a slash through a zero, or a bar through a Z. It's a hack for enhanced legibility but it's ugly. It's noisy. It's distracting. We do it in handwriting or in monospaced code fonts when required, but not for professional-looking body text. Sometimes the more aesthetically pleasing choice is the best one, which is something "proper design" takes into account.
Fonts are for reading. Consistency in some formal aspect doesn't help that goal per se, because all letters are different and have to recognized as such quickly. Relying on context to disambiguate is a serious short-coming: it slows down reading, and causes possible errors. There's really no way to defend two letters being virtually identical.
If they were "proper" bars that were an integral part of the letterform, then in a serif font there would be crossbars on the uppercase i that would then have ending serifs themselves, such as you find at the top of a T. But obviously those aren't there.
So yes, they function entirely as serifs, not like bars in other letters.
I used Ubuntu Mono for awhile, but I'm now a fan of both Cascadia Code/Mono (depending on if you want ligatures) and SF Mono, although the latter is a pain to install on non-macOS systems because you have to unpack the .dmg file and the underlying .pkg files.
May I recommend Berkeley Mono (https://berkeleygraphics.com/typefaces/berkeley-mono/). It's a paid font but well worth it, given you're spending hours every day looking at it. I have found it to be excellent for the shell and editors.
Maybe I'm weird, but I loathe body text in sans-serif fonts. They aren't all equally bad, but ilI are often confusing. Just the other day I was reading something somewhere with a name that ended in "ill" and I had to copy-paste somewhere else to tell it wasn't just a roman-numeral 3 smushed on the end.
And of course sentences that start with "Ill" just break my flow of reading.
There's a lot you can do with variable fonts. I remember stumbling upon https://variicon.netlify.app/index.html a year or two ago, although there's disdain for using icons as a font it was eye opening for me with what you could do.
My favorite is fonts with a "serif-ness" slider. You can dynamically switch between a serif and sans serif version of the same font. Imagine doing it all with a single font!
I suspect that’s because a fairly recent operating system version is required to support variable fonts and almost all of those devices are high resolution where hinting is unnecessary.
The iPhone 13 mini I’m using to type this has a pixel density of 476 ppi.
It’s relevant for Full-HD desktops and laptops, both of which remain widespread. I don’t see them going away anytime soon, because of lower cost, and also because a lot of Windows applications are not (or not adequately) hi-DPI-capable. Even 1440p monitor benefit from hinting.
Yes, mobile devices are an entirely different environment. Personally I’m still waiting for 200+ DPI desktop monitors with high contrast (VA or preferably OLED).
I’m still very happy to see more high quality and free variable fonts. They save a few lines of code and a bit of network egress when self hosting fonts (for better privacy).
I thought variable width fonts were pretty heavy? I don’t think you actually save data over loading two separate weights. The savings come in later (3+ weights)
Never mind. It's that hyphen in its name. Mona Sans is called "Mona Sans", but Hubot Sans is called "Hubot-Sans". And FontConfig requires that the hyphen be quoted, eg.: "Hubot\-Sans-16.5:weight=60".
If you want a clean sans font, I'd highly recommend Plex sans: https://fonts.google.com/specimen/IBM+Plex+Sans
Very straightforward, highly legible at all weights, normal-human-being-style kerning and nicely tucked edges. If you're looking for something more flavorful than Roboto, use this or Inter. Please don't design your own eye-melting garbage, for my sake.