When comparing Adobe Source Code Pro vs Input Mono, the Slant community recommends Adobe Source Code Pro for most people. In the question“What are the best programming fonts?” Adobe Source Code Pro is ranked 2nd while Input Mono is ranked 4th. The most important reason people chose Adobe Source Code Pro is:
The characters in Source Code Pro are easily readable. They have consistent widths across all weights as to not break up words. Commonly used programming symbols (such as various kinds of brackets) are made easily discernible from each other while various punctuation marks are made bigger than normal. This makes them especially good for programmers who keep staring at code for hours.
Specs
Ranked in these QuestionsQuestion Ranking
Pros
Pro Easy on user's eyes
The characters in Source Code Pro are easily readable. They have consistent widths across all weights as to not break up words. Commonly used programming symbols (such as various kinds of brackets) are made easily discernible from each other while various punctuation marks are made bigger than normal. This makes them especially good for programmers who keep staring at code for hours.
Pro Legible on all displays
The characters have been made in such a way that they are easily discernible and usable regardless of font size, weight, and display.
Pro Free and open source
The font is licensed under SIL open font license with source code available on GitHub. Being an open source font, it's also reasonable to expect incremental upgrades and additions to character sets and functionality.
Pro Even spacing
Characters are evenly spaced, making for better readability.
Pro Great in print
The font works particularly well when it is in print.
Pro Several styles available
The code comes with seven style variants: ExtraLight, Light, Regular, Medium, Semibold, Bold, and Black.
Pro Offers italics
The beta release version of Source Code Pro introduced italicized characters on Jul 18, 2015.
Pro Available with Google Web Fonts
The font is hosted on Google Web Fonts directory, meaning that it can be easily embedded in web pages.
Pro Powerline symbols included
Powerline symbols are useful for programmers to display a nicer status bar or mode-line on Vim and Emacs.
Pro Version with ligature support for Haskell is available
A version of Source Code Pro with support for common Haskell composite glyphs such as >>= is available here. An editor with ligature support, such as Leksah, is required.
Pro Light and Extra Light weights available
The Light and Extra Light weights make the font less "bold" looking when reading.
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.
Cons
Con Dotted zero lacks clarity
Dotted zero characters are less distinct from capital "O" characters than slashed zero characters.
Con Very difficult to read compared to Consolas or Courier New
The characters are much too widely spaced apart to be easily readable.
Con Excessive line spacing
The lines are spaced too far apart.
Con Ligatures missing but you can try Hasklig font if you want ligature
Con Can be somewhat odd for hex numbers with certain styles
With certain font-size and font-weight combinations (12 pt and regular, for example) capital letters are bigger than integer digits, making hex numbers look weird.
Con Incomplete Unicode support
This font is missing many unicode characters used to "beautify" various terminal apps. Also missing are programming ligatures used in some languages.
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.