Duospace. Wait, what? Duospace?

The folks who make the "distraction-free" text editor iA Writer have added a second typeface to the options available for writing in iA Writer. It's a modified version of IBM Plex Mono called iA Writer Duospace. The blog post detailing the thought behind it is here:


I too have been on the search for the perfect writing font! But that's a broader topic.

iA Writer Duospace's raison d'être seems to be the innovation of introducing 150% widths for m's and w's to keep them from being too squashed. It's an interesting idea but I have to admit that it irritates me. I'm not 100% why.

Any thoughts about this? How does this change the readability? And what makes a face more writeable than readable?

I've long thought that there ought to be almost-monospaced faces with characters with 200% and 300% widths, but I've never gotten off my duff to do anything about it. Specifically I find ligatures and en/em dashes to be terrible in monospaced faces. But there's a big difference: a 200% or 300% width character keeps the letters lined up, and doesn't introduce ragged changes in alignment. 150% is an interesting compromise, but I can't help but feel that if you're compromising there, why not just go with a proportional face?

PS Is this actually the first time this has been done?

Comments

  • Interesting post. I've been theorycrafting a while on making a triple spaced font: 150% for the 'w' and 'm', 50% for the 'i', '.', etc.

    I've never started experimenting with it, because I think it will problably look like a bad spaced and kerned  proportional font.

    Besides that, if you create a duo or triple spaced font, you break one of the core functionalities of a mono spaced font: it's not mono spaced anymore. For design related work this should not be such a problem. But mono spaced fonts are still widely used to generate output from programs. This can be on screen (terminal), or emails (think of a basic invoice in plain-text format) etc.

    So I think whe have to stick to mono spaced or proportional fonts. Anything in between is a bad trade off in functionality. But, as an expression of a certain taste (more precise – the love for the rugged and awkward look of mono spaced type), duo or triple spaced font may be viable in limited scenario's.





  • Yep. Once you go with the 150% it's a slippery slope to the 50%. I think there's a strong argument for the 200% and 300% varieties, although even that will mess up columns in a terminal or when coding.

    Nevertheless, I'm finding that I do have different criteria for faces for programming and prose. I'm presently enjoying using IBM Plex Mono in Scrivener and Byword; it's entirely unsuited to writing code. When writing prose, I want to be able to see the difference between dashes and hyphens; I never use ligatures when programming.
  • I deeply despise ligatures in monospaced fonts. They're overengineered and mess up the 'expected' layout. 
  • I deeply despise ligatures in monospaced fonts. They're overengineered and mess up the 'expected' layout. 
    I agree that they look terrible. Do you have an example of a face with ligatures as 200% width? There may be no way to make them work right, but in some cases (ie æ) it's not a matter of making something look fancy but of getting the spelling correct.

    To be clear, you're totally right. That's why I keep hoping there's a solution out there somewhere, or one which can be invented.
  • I was mostly referring to 'fi' etcetera, the one's like 'æ' I have less trouble with, because of correct spelling as you pointed out wisely. I don't have a 200% width axemple at the moment, neither do I have a solution. 

    For me ligatures like 
    'æ' are a real big issue in a monospaced font. They need to be in the the font, but at the same time there's not enough room for them. In my (semi condensed) mono spaced font in development I've omitted them – until I've found a solution.



  • For me ligatures like 'æ' are a real big issue in a monospaced font. They need to be in the the font, but at the same time there's not enough room for them. In my (semi condensed) mono spaced font in development I've omitted them – until I've found a solution.

    Even with a full-width mono font it's terrible.



    I can live with the em dash surrounded by spaces. When I publish I'll change <space>—<space> to <thinspace>—<thinspace> anyhow. But the æ is like nails on a chalkboard.
  • Perfect example. What's the font? Except for the dreaded ligature is looks exceptionally well.
  • Steven Scotten
    Steven Scotten Posts: 15
    edited November 2017
    It's IBM Plex Mono, on which iA Writer Duospace is based. It's quirky — especially the italic — but I like it a lot. It fails at programming code tho.


  • Now I want to read that book. :grimace:
  • Now I want to read that book. :grimace:
    I'm working on it, but the best I can promise is fragments. It's a book within a book, like Irulan's histories of Muad'dib. I'm very flattered! <3
  • joeclark
    joeclark Posts: 122

    monospaced fonts are still widely used to generate output from programs.

    That was addressed in the iA posting (and you will note here that I have produced an actual link, like every other Web page you’ve ever looked at, instead of pasting in a bald URL).

    Programmers use monospaced fonts for their indentation and because it allows them to spot typos.

    Of course they mean “indention.” But they’re German.

  • joeclark said:
    That was addressed in the iA posting (and you will note here that I have produced an actual link, like every other Web page you’ve ever looked at, instead of pasting in a bald URL).
    For the record, though in the post at the top the entire URL appears, I did use the link button in the editor to make sure it would be clickable.

    I think it's a mistake to judge a face based on something other than its intended use. Nothing is stopping someone from having iA Writer Duospace and IBM Plex Mono on the same computer and using them both for different things. So I think we're in agreement that it's legitimate to change the spacing and say to heck with programmers.

    Besides, as I said earlier I don't think Plex Mono works well as a programming or terminal face. So it's not really a lot of sacrifice to optimize for writing.

    That lowercase 'g' though… there's no excuse for that.
  • @Steven Scotten

    Could you explain to a non-dev why Plex Mono fails at programming code?

  • Could you explain to a non-dev why Plex Mono fails at programming code?
    Most natural-language applications rely on legibility (eg signage) or readability (eg books). Code requires both. Every character must be distinct because context doesn't provide definite clues. In good programming typefaces you'll see much more attention to making lc 'l' unmistakably distinct from numeral '1' or uppercase 'I'. Zeroes will have a dot in the center or a diagonal slash.

    I think the biggest culprit in Plex is the lowercase 'r', but it's not the only offender. When reading prose we can count on seeing word shapes to give hints about the word. Programming code tends to be full of made-up words (names of functions, variables etc). These things aren't the same from program to program and so we don't have the fallback of word shapes to help read what we see on screen.

    In the screenshot above, it's hard to tell what prepareRealTimeClock is. Is it piepareRealTimeClock? This function is defined only in this program so there's little hope of scanning through and finding a typo visually.

    This can obviously still be a problem with prose — recall iA's assertion that monospaced faces make it easier to find typos — but it's a much bigger problem with code.
  • I find programmers obsession with monospace fonts to be just an obsession. I have been programming full time for 10+ years and I just whatever is the default monospace font on the system and never had any code readability issues. When I chose a non-default font it is usually for other reasons (e.g. Arabic support).

  • Guilty as charged. I'm more guilty than most. I programmed as a hobbyist for a decade years before going to art skool and set type professionally for some years before ever programming for a living. I'm certainly disposed to pay obsessive attention to type, even in my IDE or terminal.

    In most environments the default fixed-width face on the system is perfectly good. I don't recall them all, but off the top of my head Menlo or Monaco on the Mac, Consolas on Windows, Ubuntu Mono — these are all perfectly functional.

    That doesn't mean that some others aren't better or worse, or that readability isn't a real concern. Sure, I can code without syntax highlighting, but it's certainly easier with than without. I think it's the same idea.

    It's equally (or almost equally) true that typographers' obsession with type is "just" an obsession. The world would probably still read books and magazines if there was only one font per language. That scenario undoubtedly horrifies all of us on TD but the Web proved that people will still read even when all type is the same. Subtle differences do add up over time and provide qualities that make real differences. I mean, that's why we're type geeks, right?
  • Apple is an interesting case: they had Monaco for years which was, well, anything but suitable for code. Then they did Menlo, a fork of the opensource DejaVu Mono, which was uglyish and uninspired but servicable. But now, with XCode, you get SF Mono, which is just fantastic. 

    Microsoft had it better. Andale Mono was great and superbly hinted, but for an unclear reason never got beyond just one style. They also had Lucida Console, very cool. But most of the code environments defaulted to Courier New, which was just terrible. But then, they made the right choice and had Lucas do Consolas, which is fantastic (still my favorite). One thing that's great about Consolas is that it has a superb monospaced italic — not too simple (oblique) but also not too quirky. Just right. 

    Today, SF Mono and Consolas are IMO way ahead of the competition, for code fonts. 
  • Apple is an interesting case: they had Monaco for years which was, well, anything but suitable for code.

    […]

    Today, SF Mono and Consolas are IMO way ahead of the competition, for code fonts. 
    I agree and I'm happy to be corrected about Monaco. I'm sure I was confused.

    I used Consolas for years (on a Mac!). Today I prefer Source Code Pro, but I'd certainly agree that Consolas is top-notch.

    Wait. I have XCode. Where is my SF Mono? If it's that good I want to try it!
  • From experience having non-monospaced characters in a font that declares itself as monospaced can cause problems in some apps. 
  • Adam Twardoch
    Adam Twardoch Posts: 515
    edited November 2017

    Wait. I have XCode. Where is my SF Mono? If it's that good I want to try it!
    Actually, in Sierra and High Sierra, SF Mono is also bundled with the Terminal app, so https://simonfredsted.com/1438

  • Actually, in Sierra and High Sierra, SF Mono is also bundled with the Terminal app, so https://simonfredsted.com/1438

    Thank you! Found and installed. I'll give it a try.
  • Here's an interesting article about this "fauxnospaced" concept:
    https://www.isoglosse.de/2018/02/proportionally-spaced-typefaces-with-a-monospaced-appearance/
  • John Savard
    John Savard Posts: 1,135
    edited February 2018
    I don't recall encountering anything duospaced before. But the mechanical Vari-Typer only provided characters with widths of 2, 3, and 4 units, and there was a manual typewriter with proportional spacing by Olivetti that offered a form of proportional spacing with limited widths.

    Friden had split the patents on the original IBM typebar electric typewriter; this was because it had descended from the company that manufactured the electric motor for it. This is why a Flexowriter looks a lot like an IBM electric. There was a proportional-spacing version, the Justowriter, and one I had seen used the exact same spacing system as the IBM Documentary typestyle did. (2, 3, 4, and 5 units.)

    I remember reading in Alexander Lawson's Anatomy of a Typeface that Centaur was adapted to this spacing, under the name "Rogers", but I haven't seen the result.

    Here's an interesting article about this "fauxnospaced" concept:
    https://www.isoglosse.de/2018/02/proportionally-spaced-typefaces-with-a-monospaced-appearance/

    One of the typestyles for the IBM Executive was Secretarial, which had the classic typewriter serif style, so it might fit on that list.
  • Patiently waiting till iA discovers the 18-unit system
    This year they move a step forward by introducing a “quattro” -spaced type: https://ia.net/writer/blog/a-typographic-christmas

    Feel like they’re abandoning the proclaimed “typographic rawness” in iA Writer Duo’s introduction.

    I am happy to see their new solution to CJK emphasis though.
  • John Savard
    John Savard Posts: 1,135
    I took a look at their IA Writer Quattro. As most upper-case letters and most lower-case letters still share the same width, of four units, it still looks like a monospaced typeface, but with the letters that would cause difficulties to such a typeface adjusted to two, three, and six units.

    As for the 18-unit system... the IBM Selectric Composer had only 9 units, but unlike the 5-unit Executive, the coarseness of the unit system was invisible. However, letters like W and M were adjusted to be narrower than their ideal relative width to keep the design of the typewriter simple, and allow larger point sizes to fit on the spherical typewriter element.

    If that compromise hadn't been made, the Selectric Composer's typefaces would have had some characters as wide as 11 units.

    Not vastly less than 18, but it still shows you can get by with less.