Input Mono vs Hack
When comparing Input Mono vs Hack, the Slant community recommends Input Mono for most people. In the question“What are the best programming fonts?” Input Mono is ranked 4th while Hack is ranked 7th. The most important reason people chose Input Mono is:
Input can be configured online with preview: width, weight, line height, and alternate letterforms.
Specs
Ranked in these QuestionsQuestion Ranking
Pros
Pro Highly configurable
Input can be configured online with preview: width, weight, line height, and alternate letterforms.
Pro Available in Mono, Sans, and Serif
There are a couple advantages to using a proportionally spaced font in code: comfort of reading, ease of spotting typos, and better differentiation between different kinds of code with font styles. Fontbureau dedicated an entire page to this topic. Unfortunately, a lot of text editors only support monospaced fonts.
Pro Clear distinctions between similar characters
The font is easy to read, has a clear distinction between similar character types, is very customizable with weight and line height. Free for personal/unpublished usage. You can customize the font how you like it on their site before downloading it to use.
In some fonts, it's difficult to distinguish between similar characters such as i/L/1, or o/zero, or m/rn. This font does an incredible job at making all of these examples clearly identifiable.
Pro Clear on low resolution and retina display
The code stays clear on low resolution and retina display with the same font option.
Pro Large, obvious punctuation
Pro Light, Extra-Light, Thin weights
The designer advises using a lighter weight for light-on-dark color schemes.
Pro Serif font is remarkably readable
Pro Condensed and Compressed Thin saves a lot of space
When using the condensed or compressed version with the thin typeface, you gain a lot of screen space and it's still extremely readable for all day coding.
Pro Very readable
Pro Libre webfonts are available in svg, eot, ttf, woff, and woff2 formats
Hack is free for unlimited commercial and non-commercial use. The webfonts are hinted (TrueType instruction set) to optimize display on the screen and are built into all commonly used web font formats with each new release. They include the complete release character set and smaller (filesize) basic Latin subset releases. They are available in the build directory of the repository.
Pro Fixes many readability issues in Vera/DejaVu
The tilde symbol ('~'), comma (',') and semicolon (';') glyphs have been modified to be more readable at small sizes and/or on non-HD displays. In addition, the underscore symbol ('_') has been slightly lifted for alignment with surrounding characters.
Pro Avaliable in many GNU/Linux distro package manager
Including Debian/Ubuntu (fonts-hack), Fedora (font-hack-ttf), OpenSUSE (hack-fonts), Arch (ttf-hack) and probably many more. Much nicer than having to manually install/update
Pro Free/Open license
Pro Renders accurately on Windows on all font sizes
Pro Based on the tried and tested Bitstream Vera Sans Mono
The fonts are in the Vera Sans Mono lineage with a significant expansion of the character set (which includes Cyrillic and modern Greek character sets), new glyph shapes and modifications of the original glyph shapes, as well as improvements in metrics and hinting/TT instructions to make it more legible at small text sizes used for source code.
The changelog is available here.
Pro Powerline glyph patch is included
The regular set is patched with Powerline glyphs by default. There is no need to patch the font to use it in Powerline environments.
Pro Source code is released in UFO format
UFO source format is widely supported by all modern font editors if you would like to modify the typeface.
Cons
Con Closed source
Although font designers need to make money too, open source model is preferred.
Con No ligatures
This can be a pro or con depending on who you ask, but it would be nice to have the option.
Con In VS2017 this font does not work and displayed as "Courier New"
Con Hard to distinguish "8" from "B" at low sizes
This often impacts upon designers working with hexadecimal numbers. Many fonts address this by either changing the x-height for numerals, making "8" more of an hourglass shape, or making the "B" cap smaller. At 10 pt, there's less than three pixels of a difference (anti-aliased).
Con Gets the job done, but not rounded enough to be pleasant/easy on the eyes
Con Bold 5 and 6 are too similar
Con Decimal digits can blend together in Mono variant
A lot of decimal digits have a similar form, 2's can sometimes look like 8's and so forth, which makes long strings of digits hard to read. I find other fonts like Consolas's digits more legible even at smaller sizes.
In the proportional variants this is less a problem.
Con Easy to confuse lowercase "i" with "1" if you're not used to it
The dot is so close to the body that they fuse, and with the serif on top it looks like the cap of the letter "1". When you put them side by side it's easy to see which one is which, but if you see a code that reads "a+=i" you're going to read that it increments a by 1.
Con The tilde is indistinguishable from a dash
Tilde is basically indistinguishable from a dash, unless you blow the size up huge. The curves in the tilde are too shallow.
Con No ligatures in the default font
Although patched versions with ligatures do exist - see here.
Con Sometimes difficult to distinguish lowercase "i" (eye) and lowercase "l" (ell)
When using a higher resolution monitor and a smaller font size, the lowercase "i" (eye) and lowercase "l" (ell) are very difficult to distinguish. The space between the dot and the remainder of the letter seems to somehow disappear, thereby making it look like a solid line, similar to the lowercase "l" (ell).
Con Too similar to DejaVu
See this gif comparison between the two fonts.