This is an infuriating experience on mobile. Show me white background and black text with your font. I'll be damned if I'm going to learn new paradigms in scrolling and waiting just to then notice I can't see anything anyway because it is a responsive 1080p screenshot of 12pt text.
But that screenshot on the splash page is utterly unviewable, especially inappropriate given that their subtitle is "Hack is hand groomed and optically balanced to be your go-to code face."
For a minute I thought I must be getting really old, but then it became clear it's just shrunk down. Nobody uses fonts that small, right? right?
I scrolled down for an example, saw the screenshot of tiny text and assumed that either I've gone blind or that screenshot is shit; I'm going with the latter. Maybe it looks better on a computer with an apple on it, but not on ubuntu / chrome.
Hack seems to be a nice font, otherwise. I don't know that I would switch to it as my primary, but I'll gladly add it to the collection of 20 or so "programming fonts" i seem to have collected over the years.
Does anyone program in <= 12pt type? I'm looking at this "specimen" link[1] and 12pt seems unnecessarily small. I can read it clearly, but I feel like I'm working harder to do so. 16pt is more my style.
(Had no trouble zooming the screenshot to legibility on an iPhone SE. What do you want to bet the site was designed in an exclusively fruit-machine shop? They're getting to be pretty crap for dev work lately, too, but that's another discussion.)
I use 9pt fonts in Emacs on my personal laptop, because otherwise I can't use my preferred layout (a maximized frame containing three vertically split windows) and fit enough code on a 13" display.
With a high-DPI display, it's workable enough - at 72dpi it'd be a disaster, as I had opportunity to discover during a brief flirtation with a netbook. Workable though it be, I'd like to find a still broadly similar font that made pairs like i/l and ./, more easily distinguishable at such small size. Hack is not that font; it appears to be a slightly modified Vera/DejaVu Sans Mono, which is no bad thing to be sure - I've used that font exclusively for many years - but hardly revolutionary.
To be clear, I'm not sure whether Hack actually is a modification of DejaVu Sans Mono, or whether it's a novel design. Doesn't change what it looks like either way. And some decisions seem much more driven by style than by usability - for example, curving the tail of the i, to match the l, would actively harm legibility compared to DejaVu Sans Mono, where l's distinctively curved tail makes it very easy to distinguish from every other glyph that consists primarily of a single vertical stroke. That's one of the two most commonly confused groups, and so I'm not really seeing a strong legibility rationale for making one of its members less distinguishable from another.
I do. But the 10-point characters in my editor are the height of the 13 pt characters on that page. For comparable readability, my 10 pt "Droid Sans Mono" is more readable than the 18 pt "Hack" on that page.
If you are used to DejaVu Sans Mono (or its ancestor Bitstream Vera Sans Mono), you might like Hack as well — it modifies DejaVu Sans Mono to make it even more suitable for source code and introduces a number of nicely aligned glyphs (geometric shapes, etc.) for use in terminals and status lines.
Great for both terminal emulators and code editors alike.
Glyphs that are commonly used in status lines of terminal applications (editors, shell prompts) to delineate sections and to indicate the status of various things (e.g., the current character encoding, line-endings, git status, git branch name, etc.).
These glyphs include a number geometric shapes and symbols. By using a font that supports them with the proper metrics, the status line looks sharp and flawless.
I'm not sure about the origin, but I believe they are some glyphs originally introduced for vim's powerline (https://github.com/powerline/powerline you can see some pics there with the glyphs in use) that allow for cool looking status bars etc on the terminal.
Like what? Installed it with absolutely no problem at all in both Sierra and High Sierra (GM) -- and never had issues installing it in my older Mac OSes (or any other font -- some fonts created by amateurs --free .ttf varieties-- have broken metrics/config and you're warned about it sometimes. Other than that, absolutely zero issues).
>to be fair, the process for installing fonts on OSX is horrible anyway
It's literally double clicking on a font file and clicking "Install Font" on the preview that pops up.
You never get it complaining about duplicate names that aren't, or have to kill and restart Font Book after installing each font because otherwise it will silently fail to install the next one? You never have it pick a random display for the "font problems" dialog, and then open that dialog buried under every other window on the display?
It was fine in Mavericks. In Sierra it has been a minor player among a very sizable collection of annoyances.
Most welcome! And, yeah, it was kind of a desperation move on my part, but I've found Sierra and the 2016 15" Touch Bar model to be a major regression in that regard. Took most of a week to get external displays to work sort of reliably, and even still I get a hard lock and have to power-cycle if I incautiously plug in the displays before waking the machine.
UPDATE (& TL;DR & Introduction!): Killing Font Book between operations avoids all sorts of errors and weird display issues you'll get if you try to install multiple font files in a single 'session'. Open Font Book from fresh, locate font files in Finder, drag them into it and you'll do everything in one operation, and it will even update to show you what's happened!
> Like what?
Errors about duplicate fonts. Several occasions where dialogs open and close immediately, indicating some kind of problem, but not sure what. Even after going through the "yes, please do really install this font, even though there are 'duplicate fonts'", nothing seems to happen sometimes.
I've managed to install three of the fonts (font variants?) — Regular, Bold, and Bold Italic — but Italic refuses to install altogether.
> How is that in any way "horrible"?
Having to open four separate font files, then click a button each time to actually install them seems like a pretty tortuous process — I'm grateful it was only 4! It would be a LOT nicer if I could just select the files, right-click and choose "Install font(s)" and have it all done in a single step. That's totally aside from all the errors.
Having said that ... pro-tip: drag-and-drop. I always forget that drag-and-drop is sometimes the 'first class' way of doing something on OSX. So the quickest way, I think, would be:
1. Open 'Font Book'
2. Locate files in Finder
3. Drag and drop from the latter to the former
This process finally allowed the "Italic" variant to be installed. I'm assuming it will work with multiple variants at once; I would test that, but trying to remove the family/variants in Font Book just gives me a 'no-op' (after a confirmation dialog).
>UPDATE (& TL;DR & Introduction!): Killing Font Book between operations avoids all sorts of errors and weird display issues you'll get if you try to install multiple font files in a single 'session'. Open Font Book from fresh, locate font files in Finder, drag them into it and you'll do everything in one operation, and it will even update to show you what's happened!
Oh, I rarely happened to need to install multiple files in the same Font Book "session". At best 4-5 files for the different fonts of the same family (X bold, X italic, etc) -- might be why I'm not seeing those issues.
>Having to open four separate font files, then click a button each time to actually install them seems like a pretty tortuous process
Having been there in 1997-200x era Linux, where you had to manually edit config files and jump through hoops to register fonts (and they wouldn't even work across all desktop environments and toolkits) I really don't see the issue...
That said, you can just drag and drop multiple font files into Font Book if I'm not mistaken. In fact, you could just drop them into your Fonts folder and they should work too -- no clicking required -- don't know if Apple removed that, used to work at least in Snow Leopard days.
I'm not adventurous enough for proportional fonts, but the monospaced Input looks quite nice. And I'd not heard of it before. I'll definitely give it a spin.
I was using proportional fonts for a couple weeks. A problem I ran into was that in coding styles that I typically work with, you need to align stuff with spaces to match some artifact on a previous line (e.g. an opening paren of a function call). At that point you pretty much need the space to be as wide as any non-whitespace character that might appear there, otherwise things end up looking wrong. This is what basically killed it for me. a) I don't like how it looks. And b), I don't want to have patches bounced over formatting trivia that I don't notice.
I've been using proportional for a few years now and can never go back to typewriter fonts (code just looks wrong). This looks really nice, I was looking for a proportional coding font. I'll have to give it a shot!
Too bad it doesn't include programmer ligatures, I've been looking for a proportional font that included those (I tried hacking them in myself but couldn't figure out the font hacking tool chain).
This was posted to HN a couple of years ago. Has it changed since then? The discussion back then was fairly comprehensive, and most of the comments in here will likely replay the same questions (ligatures, comparison to other fonts like DejaVu sans, I vs i, etc.).
When I looked at ligatured fonts a few months back I went with Monoid instead, it fits my uses better, and I was especially attracted to the triple-equal ligature for JS contexts (in Monoid, `===` is rendered as a long ≡ making it visually very distinctive from assignment or regular equality).
The best thing about Iosevka is that it's configurable in so many different ways. You're not limited to a configuration that the author of the font thinks to be the best. The attention to details in Iosevka is also notable (like the alignment of special characters). Iosevka is very balanced: it looks good both in a source code editor and a terminal.
Pleasing to the eye, but too wide for my taste. I like to have divide a 1080p screen into three columns of 80 chars width, and most fonts are too wide for this.
If you're referring to a vertical 1080p screen, which is pretty common for developers, then you'd need a 4.5-pixel-wide font, which would be extremely difficult to read (5-pixel-wide + 1 border characters are probably the limits of having recognisable characters for the full ASCII range), but with it horizontal then only 8 pixels wide would be sufficient, and there are plenty of fonts in that range.
Various 8-pixel wide "VGA"/"DOS"/"IBM terminal", as well as the classic "6x13" and "7x14" fonts which are my favourites, would qualify.
Because it's a short, extremely common, word in our field. Choosing to use it will cause confusion, and it's also rather insulting to those who wanted to use it but restrained themselves for the greater good.
There are a lot of things that have the same names as other things. Given the unaccountable absence of namespacing or package prefixing among the generally accepted set of natural human languages, a bit of disambiguation now and again is just the price we pay for using fast, fluent natural language parsers instead of writing SQL queries. In this case, Google understands "hack font" just fine.
Never found that to be the case. "hack font" gives me just the font-related links in the front results -- same with "go language" etc.
And never had an issue finding Apple or Facebook related stuff and being shown actual apples (the fruit) or Apple (the record company) or facebook (the high school thing).
> What if there is a font named Hack and a language
Then one gets confused between them. Next month a story on HN will be titled "New version of Hack released". That's confusing.
> (which, FWIK, exists as well)?
Yes I know. That doesn't weaken my point!
> Would it hurt anyone to use context to know which of the two is talked about?
Of course. Every time one has to spend effort additionally clarifying one's meaning (or worse, someone else's meaning)causes a bit of "hurt". The more popular the project the more the hurt compounds.
A case in point: all the people on HN who click through to discussions on ML thinking it was about the language only to find it's an article about machine learning, or vice versa.
> In fact if it's "extremely common" then already there's no such concern. Now it just has N+1 uses.
I didn't mean it has N different uses as a proper name. I mean that it's a commonly used word as a non-proper-name that represents one concept or a collection of very similar concepts.
Ornithologists shouldn't call their new font "Wing" and we shouldn't call our new font "Hack". The other way round would be fine.
>Then one gets confused between them. Next month a story on HN will be titled "New version of Hack released". That's confusing.
For 1 split second. Every year or so. And only if there's no other context in the title (e.g. www.facebook.com).
>Of course. Every time one has to spend effort additionally clarifying one's meaning (or worse, someone else's meaning)causes a bit of "hurt".
It also exercises the brain for the broader world, where things are not always humanly managed and/or cleanly designed, and only need the least possible effort.
... admittedly not great for small sizes due to the striping, but awesome for a relazing at a big giant terminal window and doing various simple things.
135 comments
[ 2.4 ms ] story [ 110 ms ] threadBut that screenshot on the splash page is utterly unviewable, especially inappropriate given that their subtitle is "Hack is hand groomed and optically balanced to be your go-to code face."
For a minute I thought I must be getting really old, but then it became clear it's just shrunk down. Nobody uses fonts that small, right? right?
Shouldn't it be possible to download a font via CSS only?
Having to explain how to use your UI in your UI is always a red flag.
That said, maybe try http://sourcefoundry.org/hack/playground.html
I scrolled down for an example, saw the screenshot of tiny text and assumed that either I've gone blind or that screenshot is shit; I'm going with the latter. Maybe it looks better on a computer with an apple on it, but not on ubuntu / chrome.
Hack seems to be a nice font, otherwise. I don't know that I would switch to it as my primary, but I'll gladly add it to the collection of 20 or so "programming fonts" i seem to have collected over the years.
Does anyone program in <= 12pt type? I'm looking at this "specimen" link[1] and 12pt seems unnecessarily small. I can read it clearly, but I feel like I'm working harder to do so. 16pt is more my style.
1: http://source-foundry.github.io/Hack/font-specimen.html
I use 9pt fonts in Emacs on my personal laptop, because otherwise I can't use my preferred layout (a maximized frame containing three vertically split windows) and fit enough code on a 13" display.
With a high-DPI display, it's workable enough - at 72dpi it'd be a disaster, as I had opportunity to discover during a brief flirtation with a netbook. Workable though it be, I'd like to find a still broadly similar font that made pairs like i/l and ./, more easily distinguishable at such small size. Hack is not that font; it appears to be a slightly modified Vera/DejaVu Sans Mono, which is no bad thing to be sure - I've used that font exclusively for many years - but hardly revolutionary.
To be clear, I'm not sure whether Hack actually is a modification of DejaVu Sans Mono, or whether it's a novel design. Doesn't change what it looks like either way. And some decisions seem much more driven by style than by usability - for example, curving the tail of the i, to match the l, would actively harm legibility compared to DejaVu Sans Mono, where l's distinctively curved tail makes it very easy to distinguish from every other glyph that consists primarily of a single vertical stroke. That's one of the two most commonly confused groups, and so I'm not really seeing a strong legibility rationale for making one of its members less distinguishable from another.
I do. But the 10-point characters in my editor are the height of the 13 pt characters on that page. For comparable readability, my 10 pt "Droid Sans Mono" is more readable than the 18 pt "Hack" on that page.
Great for both terminal emulators and code editors alike.
These glyphs include a number geometric shapes and symbols. By using a font that supports them with the proper metrics, the status line looks sharp and flawless.
(click side-by-side to compare)
I think I'll switch to Fira Mono, Hack line height seems to be to condensed.
I started using it after discovering the customizer.
Edit: I don't know why this got downvoted; if there's a way in which you want me to alter it to be more acceptable, please let me know.
Like what? Installed it with absolutely no problem at all in both Sierra and High Sierra (GM) -- and never had issues installing it in my older Mac OSes (or any other font -- some fonts created by amateurs --free .ttf varieties-- have broken metrics/config and you're warned about it sometimes. Other than that, absolutely zero issues).
>to be fair, the process for installing fonts on OSX is horrible anyway
It's literally double clicking on a font file and clicking "Install Font" on the preview that pops up.
How is that in any way "horrible"?
It was fine in Mavericks. In Sierra it has been a minor player among a very sizable collection of annoyances.
Thank you! TBF to OSX, it at least says something about general reliability that I didn't even consider this would be necessary.
> Like what?
Errors about duplicate fonts. Several occasions where dialogs open and close immediately, indicating some kind of problem, but not sure what. Even after going through the "yes, please do really install this font, even though there are 'duplicate fonts'", nothing seems to happen sometimes.
I've managed to install three of the fonts (font variants?) — Regular, Bold, and Bold Italic — but Italic refuses to install altogether.
> How is that in any way "horrible"?
Having to open four separate font files, then click a button each time to actually install them seems like a pretty tortuous process — I'm grateful it was only 4! It would be a LOT nicer if I could just select the files, right-click and choose "Install font(s)" and have it all done in a single step. That's totally aside from all the errors.
Having said that ... pro-tip: drag-and-drop. I always forget that drag-and-drop is sometimes the 'first class' way of doing something on OSX. So the quickest way, I think, would be:
1. Open 'Font Book' 2. Locate files in Finder 3. Drag and drop from the latter to the former
This process finally allowed the "Italic" variant to be installed. I'm assuming it will work with multiple variants at once; I would test that, but trying to remove the family/variants in Font Book just gives me a 'no-op' (after a confirmation dialog).
Oh, I rarely happened to need to install multiple files in the same Font Book "session". At best 4-5 files for the different fonts of the same family (X bold, X italic, etc) -- might be why I'm not seeing those issues.
>Having to open four separate font files, then click a button each time to actually install them seems like a pretty tortuous process
Having been there in 1997-200x era Linux, where you had to manually edit config files and jump through hoops to register fonts (and they wouldn't even work across all desktop environments and toolkits) I really don't see the issue...
That said, you can just drag and drop multiple font files into Font Book if I'm not mistaken. In fact, you could just drop them into your Fonts folder and they should work too -- no clicking required -- don't know if Apple removed that, used to work at least in Snow Leopard days.
That was exactly the case in this instance :)
> Having been there in ...
Sure, I don't think I've ever had a great experience installing fonts on any platform, but I hold Apple to a higher standard.
> That said, you can just drag and drop ...
I know, I said that in my update that you quoted! :-)
[1]: http://input.fontbureau.com
I consider myself fairly adventurous, but this is clearly beyond my comfort zone :)
I'm not adventurous enough for proportional fonts, but the monospaced Input looks quite nice. And I'd not heard of it before. I'll definitely give it a spin.
(Edit: typos.)
Too bad it doesn't include programmer ligatures, I've been looking for a proportional font that included those (I tried hacking them in myself but couldn't figure out the font hacking tool chain).
https://news.ycombinator.com/item?id=10140728
Then again, this is probably one of those perennial sorts of topics that's just enjoyable to chew over every now and again.
https://github.com/chrissimpkins/codeface
(Use Input)
Hack is my second favorite, but just the last year I switched to Fira Code: monospaced font with programming ligatures.
I like the zero being a slash as opposed to a dot but the rest is spot on for me.
https://github.com/tonsky/FiraCode#fira-code-monospaced-font...
I've yet to find a better condensed programming font with ligatures, it's close to perfect already (for me).
Agreed. It's narrow, but does not sacrifice readability.
also, this is a later version: http://www.s9w.io/font_compare/
And never had an issue finding Apple or Facebook related stuff and being shown actual apples (the fruit) or Apple (the record company) or facebook (the high school thing).
What if there is a font named Hack and a language (which, FWIK, exists as well)?
In fact if it's "extremely common" then already there's no such concern. Now it just has N+1 uses.
Would it hurt anyone to use context to know which of the two is talked about?
Then one gets confused between them. Next month a story on HN will be titled "New version of Hack released". That's confusing.
> (which, FWIK, exists as well)?
Yes I know. That doesn't weaken my point!
> Would it hurt anyone to use context to know which of the two is talked about?
Of course. Every time one has to spend effort additionally clarifying one's meaning (or worse, someone else's meaning)causes a bit of "hurt". The more popular the project the more the hurt compounds.
A case in point: all the people on HN who click through to discussions on ML thinking it was about the language only to find it's an article about machine learning, or vice versa.
> In fact if it's "extremely common" then already there's no such concern. Now it just has N+1 uses.
I didn't mean it has N different uses as a proper name. I mean that it's a commonly used word as a non-proper-name that represents one concept or a collection of very similar concepts.
Ornithologists shouldn't call their new font "Wing" and we shouldn't call our new font "Hack". The other way round would be fine.
For 1 split second. Every year or so. And only if there's no other context in the title (e.g. www.facebook.com).
>Of course. Every time one has to spend effort additionally clarifying one's meaning (or worse, someone else's meaning)causes a bit of "hurt".
It also exercises the brain for the broader world, where things are not always humanly managed and/or cleanly designed, and only need the least possible effort.
https://github.com/rbanffy/3270font
http://www.sensi.org/~svo/glasstty/
Tl;dr: the monospsce font seems to be (have been) an almost direct copy of DejaVu Mono. I don't know how much has changed over the last 2 years.