When comparing Monaco vs Hack, the Slant community recommends Hack for most people. In the question“What are the best programming fonts?” Hack is ranked 5th while Monaco is ranked 12th. The most important reason people chose Hack is:
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](https://github.com/chrissimpkins/Hack/tree/master/build) of the repository.
Ranked in these QuestionsQuestion Ranking
Pro Easy on user's eyes
Monaco's rendering is similar to that of Consolas but slightly more playful. Each character seems to be a tiny bit larger when compared to Consolas, yet code takes up the same amount of space.
Pro Good differentiation between clashing characters
The curly braces are easily distinguishable from parentheses, "0" is distinguishable from "O", and "1" is distinguishable from "l", to name but a few.
Pro Beautiful braces, perfect parens
Parentheses are half-circles. Square brackets, half-squares. Curly braces, unmistakable. Geometric, classy, fun, and most importantly clear.
Other fonts' bracket delimiters might start to look lifeless and wilted.
Especially well-suited to those who color their brackets as the colors show even against light backgrounds.
Pro Excellent legibility at non-antialiased small sizes
This font shines for legibility at non-antialiased small sizes. It was originally designed as a 9 pt bitmap font. This is excellent for when maximizing on-screen code is a priority.
Pro Small file size
Even if you are struggling with memory, this font is no concern. Its ttf file is just about 50 kb.
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 Very readable
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 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 Free/Open license
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.
Con Only comes with Mac OS X
While it generally only came with OS X, you can try here for installing on other platforms.
Con Ability to select different anti-aliasing grades was dropped
Before OS X Snow Leopard, it was possible to apply varying degrees of anti-aliasing to the font. At present, the previously "medium" anti-aliasing option is the only choice.
Con Too similar to DejaVu
See this gif comparison between the two fonts: https://gfycat.com/SomberUnitedGermanshepherd
Con Sometimes difficult to distinguish lowercase "i" and lowercase "l"
When using a higher resolution monitor and a smaller font size, the lowercase "i" and lowercase "l" 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".