I am eternally annoyed at GNOME Project for, among many many other reasons, forcing the removal of bitmap font support as of Pango 1.44 due to forcing Harfbuzz as the only supported shaping library:
I have a different opinion. I had access to real terminals when I was young and they had amazingly sharp fonts. They had hardwired optically etched fonts and were incredible. 100% smooth.
I had to work with DOS screens that were sketched to different aspect ratios and blurred and it was so painful, specially after having seen proper fonts on the screen.
One of the reasons for starting to use Linux was using high quality fonts with the terminal.
> One of the reasons for starting to use Linux was using high quality fonts with the terminal.
Yes! Speaking of Linux, I'm personally very font of Terminus.
I like it so much my main coding font is a modified, pixel-perfect (no AA at all) version of Terminus since forever (I modified a few letters like the 'l' and the 's' and took a few glyphs from a pixel-perfect Monaco font [like %, &, @ and modified those a bit too). I did it so many years ago I don't remember the process (but I've got notes about it, so I could redo it).
I'm on a (non-retina / non 4K) 38" ultra-wide display that does 3840x1600 natively (and it's the resolution I use). I love it for I can have three 1280x1600 "columns" side by side (but I'm using a tiling WM so I've got many preset layouts anyway). YMMV.
A few years ago, when I wrote my own Invaders-like game [1], I was quite unhappy with the rendering quality of the HTML Canvas fillText() method. The antialiasing introduced multiple shades of green, whereas I wanted to render the text in a solid monochrome green while the glyphs retained their crisp, jagged edges. Although `canvas { image-rendering: pixelated }` improved the crispness and jaggedness but it still introduced some shades of green.
I finally decided to take the matter into my own hands. I looked for IBM PC OEM fonts [2] and similar ones [3], stored the bitmaps as integer arrays within my code [2], and used them to render each character cell by cell. I am very happy with the results.
It was a childhood dream of mine to write a game like this, but I did not have sufficient access to computers as a child. So I could fulfil this dream only as an adult, a few years ago. The implementation is very simple, and everything on the canvas, including the text, is drawn using fillRect().
By the way, if you happen to do something similar, I have made all the bitmaps available as integer arrays in a separate, standalone project [5].
I loved the look of the fonts on DOS after I upgraded from a C64. My favorite was the exclamation mark on 1024x768 (VGA). It had curves! Pointy at the bottom right above the dot, and the rounded curve at the top. I've never found a monospace non-bitmapped font that had the same character. (ha!)
I use Terminus TTF for my terminal and text editor. I fully agree with their description of it as a workhorse font. The Gohu font they mention also seem interesting.
In general bitmap fonts avoid the blurryness of modern font rendering made for high DPI monitors, which fails spectacularly on low DPI monitors (which is what I still have). And blurry text give me literal headaches. And this is why I gave up on anything but bitmap fonts in recent years.
I've been using it for a long time and I can't use a new computer or a work computer without it for long before I feel like my eyes are going bad. I specially like the bold version, seems to do well with my astigmatism, specially in reverse video/"dark mode".
I never knew there was a TTF variant, might be a good fit on software that stubbornly blurs it when rendering in hi-dpi.
Well-hinted fonts such as Consolas are indeed very rare.
I think I've only found Liberation and Hack to appear decent on standard density display. Roboto Mono is nicely shaped but blurry. I think Noto Mono used to have hints but dropped them. It was hours spent trying out different fonts only to ultimately go back to msttcore-fonts for me.
I have to show people extremely zoomed-in screenshots of how $VENDOR default monospaced fonts get rendered compared to Terminus at the correct size in order for them to understand my pain. The hinting is just blurry bleh.
These days, because I am also old, I want a comparatively large pixel-perfect font. I've yet to find a good one but haven't looked much beyond Terminus honestly. Maybe I can render it an acceptable integer multiple without it being too large?
I've dabbled a few times in writing bitmap font parsers for both technically constrained and artistic projects. There is a reason that design has resolved to the same few cliches, because expectability, latent understanding, and 'obviousness' reduces onboarding curve and fatigue. It's a cognitive accessibility issue before you even get to legitimate accessibility concerns. Render a .F16 at anything larger than 16px in a modern application and you're introducing issues which are solved, quantitatively and qualitatively, by vector graphics and antialiasing. There's an optimistic naivety which is nice to have, but misunderstands design as a conduit for informed action vs design as an aesthetic function independent of intent is legitimately dangerous if you're doing anything other than building narrative products emulating older tech.
Conspicuously missing to this list is uwe's ttyp0 [0].
One of the few bitmap fonts (with terminus) having somewhat complete unicode support and going to very large pixel sizes, so that they are visible on modern screens with tiny pixels.
Couldn't disagree more, I get headaches from blurry text, so I daily drive Terminus TTF, and have done so for years. Modern font rendering really has becole quite terrible unless you own a high DPI screen, even when using full hinting.
And no, subpixel anti-aliasing doesn't help, the colour bleeding is even worse.
Buy a modern monitor or just run your display at a low res and disable antialiasing? Phones are now 500 PPI+, theres no real excuse for using a low DPI screen.
It's so bad that whenever I click on blog post I don't start by reading the content, first I skim to see if it's even worth my time. This one is not.
> The part I keep coming back to
Immediately caught my eye. Reading in...
> Bitmap fonts make computers feel like computers again. Not abstract “digital products”. Not generic interfaces. Not frictionless panels pretending to be neutral.
Actual computers.
It's gotten to the point where I barely even skim first. I sort of unfocus my eyes and can sometimes see the shape of LLM writing. Sort of like when I'm birding and I switch from eagle vision to owl vision, and I can ID a bird just by catching the way the light reflects off its wingflash in the corner of my vision.
Someone here a couple of months ago made a tool[0] to detect AI writing on websites. This one gets categorized as "pure slop" https://tropes.fyi/vetter/d7cebcde
Too bad that tool sucks. I ran my own blog through it and it gave me a middling score, even though I’ve never touched it with an AI tool of any kind, even Grammarly.
From that website:
"Every bullet point or list item starts with a bolded phrase or sentence. Extremely common in Claude and ChatGPT markdown output. Almost nobody formats lists this way when writing by hand. It's a telltale sign of AI-generated documentation and blog posts AND README files (especially with emojis)."
It's also reasonably effective proxy to determine whether somebody is actually passionate about the topic they're writing about. If you've got a very strong interest in a specific niche you're typically able to pour pages and pages of ink down talking about it. If you can't be bothered to take the necessary time to distill your thoughts, it signals to me that your thoughts on the topic aren't as worthwhile as someone who's deeply invested in it.
Of course this proxy isn't perfect, I understand many people use AI to make their writing more comprehensible when English isn't their first language.
The attention economics are bad more than anything else. LLM articles ask us to put more time into reading it than the LLM put into writing it. Actually committing time to production is the minimum bar which suggests something is worth our time in a world where so much is already vying for our attention.
Who would want to read about the thoughts of an AI?
All it knows about your thoughts are from what text you already fed it with, and it will end up adding things you don't intend or agree with. Even just telling it to fix grammar it can subtly do this.
We need an update to the HN posting guidelines that addresses this. We already have:
Please don't complain about tangential annoyances—e.g. article or website formats, name collisions, or back-button breakage. They're too common to be interesting.
I'm not welcome to complain that the website is a tiny vertical strip down my screen with 6 inches of whitespace on each side, so we should also not welcome the boring, common "The article is written by AI" criticism, which is going to apply to 99% of articles by the end of 2026. It's already too common to be interesting criticism.
It was an era when you could know a machine. I had a C64 and had a huge chunk of its kernal addresses memorized from sheer repetition. You could remember its whole ISA and timings. The memory map was learnable. The hardware interfaces were simple.
I have zero desire to use a C64 again, aside from the occasional nostalgia pang for a specific game or program. But I do miss that feeling of complete, total understand of the thing in front of me. I think that’s the feeling that implanted on me, and that the aesthetics conjure. “Hey, the world is complicated, but this font looks a lot like the time when you felt like you knew everything.”
I started programming on an IBM 1620 with 20,000 BCD digits of memory, 20 usec to add 2 digits, 160 usec for branch not taken, 200 usec for branch taken. I remember these and many other details but I have no desire to go back because I'm not an idiot. The first computer I owned was an Amiga 1000, to which I added a 50 MB hard drive that cost me $1000. Again, no desire to go back. Same with bad fonts.
Because there were constraints. Name it: CPU speed, RAM, screen size, connection speed, whatever. We long for those days when we had to sit back and think the problem out instead of adding another package import.
Perhaps because we grew up with it. The VGA 8x16 font reminds me of growing up when I had my first computer that was all mine, with a plasma display where the pixels were clearly visible, yet quite restful on the eyes.
the nostalgia doesn't check all the boxes, even though yeah it's hard to deny, but it embodies a different mindset, a strange limited visual form that promised the future. it was also its own kind of design and aesthetic, today we have infinitely capable machines and all possible fonts but we lost that difference.
ps: i have the same relationship to vintage desktop computer form factor, something about an old blocky box, an hdd led, a cd drive
What I love most about Iosevka — and there are surely many things more than just one thing to love — is that it is not merely defined as a typeface using a fount encoding, but it is defined in a programming language. Of course it shows up in its router-sign aesthetics, but knowing how it is all defined is a huge part of its charm. A kind of Esperanto of faces.
> Bitmap fonts are the ones that look perfect at their intended resolution.
This seems to be the center of the author's argument.
But I prefer legibility, readability, being easy on the eye. I also prefer antialiasing for its smoothness.
Every screen I have has been Retina for a long time. I greatly appreciate that text is now as legible as it is in books. No distracting jaggies.
I don't want my computer to feel like some nostalgic 1980's computer. I just want to get my work done, which involves a lot of reading and writing, both code and non-code, which is just more legible with vector fonts on a retina screen.
At the end of the day, jaggies are a visual distraction. They're cool if you want a retro vibe that distracts and calls attention to itself for aesthetic purposes. But not for general computer usage.
> Every screen I have has been Retina for a long time. I greatly appreciate that text is now as legible as it is in books. No distracting jaggies.
Not all of us are in that position, and modern font rendering has gotten really bad on non-high DPI monitors, so using a bitmap font has been a way to get rid of the blur and get back to sharp crisp text.
For me, I'd rather have jagged text than a blurry literally headache inducing mess.
That said, the issue here isn't that one is better than the other, but that for some people one or the other is easier to read, and the right answer is that all of this need to be configurable. Just like light and dark mode.
So are serifs, and people don't complain about those. Whether any "visual distraction" actually distracts you is a matter of what you're accustomed to. If you read enough cursive or blackletter it will start to look normal to you. I disable anti-aliasing because I'm accustomed to aliasing and it doesn't distract me at all. In exchange, I get sharp text on an 1080p monitor, effectively quadrupling my graphics performance because I no longer need 4K. I'd prefer bitmap fonts, but in practice I find full automatic hinting of vector fonts good enough.
The only cases where I can see anti-aliasing helping are with Chinese and Japanese fonts, which have characters with unusually fine details. But on any GUI using Fontconfig you can enable anti-aliasing for those fonts specifically and leave it disabled for the rest.
Serifs are chosen intentionally to be harmonious with the overall letterforms. They provide a feeling of visual stability and additional cues for recognizing letterforms. They provide a kind of consistency. They're not a distraction.
Jaggies come from a limitation of the pixel grid. They arbitrarily make diagonal strokes and curves bumpy while horizontal and vertical strokes are perfectly smooth, an inconsistency that would otherwise have no rhyme or reason behind it. Before letterforms were constrained to square grids, nobody was making diagonals and curves bumpy because it was a desirable aesthetic effect.
Jaggies are a distraction from the underlying letterform we all recognize. We know they are an undesirable distortion. Serifs are not. They serve an intentional aesthetic purpose, proportioned in a carefully balanced way.
Serifs are a skeuomorphic artifact of stone-carved text. They're no more legible than sans-serif fonts (see https://news.ycombinator.com/item?id=47492894 ). The only reason people like them is because they're used to them. You can get the same feeling from bitmap fonts if you read them enough.
I very intentionally didn't say serifs were more legible than sans-serif.
There are reasons people like them more than just that "they're used to them", however. I named a couple of them. Just because they originated in stone doesn't mean we kept using them for the same reason. A lot of things originate for one reason and then become used for other reasons.
Believe me, I got "used to" bitmap fonts throughout the 80's and 90's. But I still always preferred the 300dpi version of a document from my LaserWriter and then inkjet. Getting used to bitmap fonts never meant preferring them for general computer usage. Jaggies that appear arbitrarily on some strokes but not others is not visually pleasing. Nostalgic, maybe, but virtually never anything you'd choose if you weren't intentionally trying to create a retro vibe.
I am eternally annoyed at GNOME Project for, among many many other reasons, forcing the removal of bitmap font support as of Pango 1.44 due to forcing Harfbuzz as the only supported shaping library:
- https://blogs.gnome.org/mclasen/2019/05/25/pango-future-dire...
- https://gitlab.gnome.org/GNOME/pango/-/issues/386
I have a different opinion. I had access to real terminals when I was young and they had amazingly sharp fonts. They had hardwired optically etched fonts and were incredible. 100% smooth.
I had to work with DOS screens that were sketched to different aspect ratios and blurred and it was so painful, specially after having seen proper fonts on the screen.
One of the reasons for starting to use Linux was using high quality fonts with the terminal.
> One of the reasons for starting to use Linux was using high quality fonts with the terminal.
Yes! Speaking of Linux, I'm personally very font of Terminus.
I like it so much my main coding font is a modified, pixel-perfect (no AA at all) version of Terminus since forever (I modified a few letters like the 'l' and the 's' and took a few glyphs from a pixel-perfect Monaco font [like %, &, @ and modified those a bit too). I did it so many years ago I don't remember the process (but I've got notes about it, so I could redo it).
I'm on a (non-retina / non 4K) 38" ultra-wide display that does 3840x1600 natively (and it's the resolution I use). I love it for I can have three 1280x1600 "columns" side by side (but I'm using a tiling WM so I've got many preset layouts anyway). YMMV.
A few years ago, when I wrote my own Invaders-like game [1], I was quite unhappy with the rendering quality of the HTML Canvas fillText() method. The antialiasing introduced multiple shades of green, whereas I wanted to render the text in a solid monochrome green while the glyphs retained their crisp, jagged edges. Although `canvas { image-rendering: pixelated }` improved the crispness and jaggedness but it still introduced some shades of green.
I finally decided to take the matter into my own hands. I looked for IBM PC OEM fonts [2] and similar ones [3], stored the bitmaps as integer arrays within my code [2], and used them to render each character cell by cell. I am very happy with the results.
It was a childhood dream of mine to write a game like this, but I did not have sufficient access to computers as a child. So I could fulfil this dream only as an adult, a few years ago. The implementation is very simple, and everything on the canvas, including the text, is drawn using fillRect().
By the way, if you happen to do something similar, I have made all the bitmaps available as integer arrays in a separate, standalone project [5].
[1] https://susam.net/invaders.html
[2] https://int10h.org/oldschool-pc-fonts/fontlist/
[3] https://www.dafont.com/modern-dos.font
[4] https://codeberg.org/susam/invaders/src/branch/main/invaders...
[5] https://codeberg.org/susam/pcface#readme
I loved the look of the fonts on DOS after I upgraded from a C64. My favorite was the exclamation mark on 1024x768 (VGA). It had curves! Pointy at the bottom right above the dot, and the rounded curve at the top. I've never found a monospace non-bitmapped font that had the same character. (ha!)
I use Terminus TTF for my terminal and text editor. I fully agree with their description of it as a workhorse font. The Gohu font they mention also seem interesting.
In general bitmap fonts avoid the blurryness of modern font rendering made for high DPI monitors, which fails spectacularly on low DPI monitors (which is what I still have). And blurry text give me literal headaches. And this is why I gave up on anything but bitmap fonts in recent years.
I've been using it for a long time and I can't use a new computer or a work computer without it for long before I feel like my eyes are going bad. I specially like the bold version, seems to do well with my astigmatism, specially in reverse video/"dark mode".
I never knew there was a TTF variant, might be a good fit on software that stubbornly blurs it when rendering in hi-dpi.
Same. Pixel-perfect Terminus for the win in my terminals and in my beloved Emacs.
Well-hinted fonts such as Consolas are indeed very rare.
I think I've only found Liberation and Hack to appear decent on standard density display. Roboto Mono is nicely shaped but blurry. I think Noto Mono used to have hints but dropped them. It was hours spent trying out different fonts only to ultimately go back to msttcore-fonts for me.
100% the same problem here.
I have to show people extremely zoomed-in screenshots of how $VENDOR default monospaced fonts get rendered compared to Terminus at the correct size in order for them to understand my pain. The hinting is just blurry bleh.
These days, because I am also old, I want a comparatively large pixel-perfect font. I've yet to find a good one but haven't looked much beyond Terminus honestly. Maybe I can render it an acceptable integer multiple without it being too large?
I've dabbled a few times in writing bitmap font parsers for both technically constrained and artistic projects. There is a reason that design has resolved to the same few cliches, because expectability, latent understanding, and 'obviousness' reduces onboarding curve and fatigue. It's a cognitive accessibility issue before you even get to legitimate accessibility concerns. Render a .F16 at anything larger than 16px in a modern application and you're introducing issues which are solved, quantitatively and qualitatively, by vector graphics and antialiasing. There's an optimistic naivety which is nice to have, but misunderstands design as a conduit for informed action vs design as an aesthetic function independent of intent is legitimately dangerous if you're doing anything other than building narrative products emulating older tech.
Conspicuously missing to this list is uwe's ttyp0 [0].
One of the few bitmap fonts (with terminus) having somewhat complete unicode support and going to very large pixel sizes, so that they are visible on modern screens with tiny pixels.
[0] https://people.mpi-inf.mpg.de/~uwe/misc/uw-ttyp0/
This is like the (fortunately brief) fad of ‘shabby chic’ — it's a signal that you've never had to suffer the real thing.
Couldn't disagree more, I get headaches from blurry text, so I daily drive Terminus TTF, and have done so for years. Modern font rendering really has becole quite terrible unless you own a high DPI screen, even when using full hinting.
And no, subpixel anti-aliasing doesn't help, the colour bleeding is even worse.
Buy a modern monitor or just run your display at a low res and disable antialiasing? Phones are now 500 PPI+, theres no real excuse for using a low DPI screen.
Income and effective cost of things like desktop monitors vary wildly across the world, that argument doesn't really fly.
Why is Greybeard listed as "License: Custom, double-check before reuse" when the LICENSE file in the repo is MIT?
It's an AI generated article; don't trust anything in it unless you verify it.
Ai writing
It's so bad that whenever I click on blog post I don't start by reading the content, first I skim to see if it's even worth my time. This one is not.
> The part I keep coming back to
Immediately caught my eye. Reading in...
> Bitmap fonts make computers feel like computers again. Not abstract “digital products”. Not generic interfaces. Not frictionless panels pretending to be neutral. Actual computers.
Aaand there it is. Tab closed.
It's gotten to the point where I barely even skim first. I sort of unfocus my eyes and can sometimes see the shape of LLM writing. Sort of like when I'm birding and I switch from eagle vision to owl vision, and I can ID a bird just by catching the way the light reflects off its wingflash in the corner of my vision.
Yeah, I got 2 minutes in before a "x isn't just y, it's Z"
It just feels disingenuous. Put a disclaimer at the top, so at least I know. But there's not, it's the author's name.
I can prompt chatgpt to write me this. I want to hear from people who know the tech/history.
Someone here a couple of months ago made a tool[0] to detect AI writing on websites. This one gets categorized as "pure slop" https://tropes.fyi/vetter/d7cebcde
[0] https://news.ycombinator.com/item?id=47291513
Too bad that tool sucks. I ran my own blog through it and it gave me a middling score, even though I’ve never touched it with an AI tool of any kind, even Grammarly.
I rather see the prompt they used to make that article, than the article itself. It overstayed it's welcome to say nothing.
From that website: "Every bullet point or list item starts with a bolded phrase or sentence. Extremely common in Claude and ChatGPT markdown output. Almost nobody formats lists this way when writing by hand. It's a telltale sign of AI-generated documentation and blog posts AND README files (especially with emojis)."
That’s bullshit. It’s very common.
Attacking the source of the message instead of the merits.
Ad-HomineLLM
AI writing is worse on the merits: it is lower quality and has concerning externalities associated with its production.
It's also reasonably effective proxy to determine whether somebody is actually passionate about the topic they're writing about. If you've got a very strong interest in a specific niche you're typically able to pour pages and pages of ink down talking about it. If you can't be bothered to take the necessary time to distill your thoughts, it signals to me that your thoughts on the topic aren't as worthwhile as someone who's deeply invested in it.
Of course this proxy isn't perfect, I understand many people use AI to make their writing more comprehensible when English isn't their first language.
The attention economics are bad more than anything else. LLM articles ask us to put more time into reading it than the LLM put into writing it. Actually committing time to production is the minimum bar which suggests something is worth our time in a world where so much is already vying for our attention.
an article written by an AI about fonts, when the AI fundamentally does not look at rendered text, is inherently without merit
Who would want to read about the thoughts of an AI?
All it knows about your thoughts are from what text you already fed it with, and it will end up adding things you don't intend or agree with. Even just telling it to fix grammar it can subtly do this.
It reads like a dog wrote it. Whether the writer is terrible or LLM being terrible, get this shit out of here
We need an update to the HN posting guidelines that addresses this. We already have:
I'm not welcome to complain that the website is a tiny vertical strip down my screen with 6 inches of whitespace on each side, so we should also not welcome the boring, common "The article is written by AI" criticism, which is going to apply to 99% of articles by the end of 2026. It's already too common to be interesting criticism.Well written article, a great eye opener. I did not at all consider the bitmap fonts in context of aesthetics, which is such an oversight.
The fonts presented do look amazing, so absolutely will ck figure my terminal with one of them.
I'm good with my Iosevka ExtraLight with iTerm2's thin strokes enabled.
But the bitmaps do make me nostalgic, maybe useful to read my own old code and cringe a little less.
I often question myself on why the aesthetics of personal computing were so special our brains that it sticks to this day.
It was an era when you could know a machine. I had a C64 and had a huge chunk of its kernal addresses memorized from sheer repetition. You could remember its whole ISA and timings. The memory map was learnable. The hardware interfaces were simple.
I have zero desire to use a C64 again, aside from the occasional nostalgia pang for a specific game or program. But I do miss that feeling of complete, total understand of the thing in front of me. I think that’s the feeling that implanted on me, and that the aesthetics conjure. “Hey, the world is complicated, but this font looks a lot like the time when you felt like you knew everything.”
I started programming on an IBM 1620 with 20,000 BCD digits of memory, 20 usec to add 2 digits, 160 usec for branch not taken, 200 usec for branch taken. I remember these and many other details but I have no desire to go back because I'm not an idiot. The first computer I owned was an Amiga 1000, to which I added a 50 MB hard drive that cost me $1000. Again, no desire to go back. Same with bad fonts.
Because there were constraints. Name it: CPU speed, RAM, screen size, connection speed, whatever. We long for those days when we had to sit back and think the problem out instead of adding another package import.
Perhaps because we grew up with it. The VGA 8x16 font reminds me of growing up when I had my first computer that was all mine, with a plasma display where the pixels were clearly visible, yet quite restful on the eyes.
the nostalgia doesn't check all the boxes, even though yeah it's hard to deny, but it embodies a different mindset, a strange limited visual form that promised the future. it was also its own kind of design and aesthetic, today we have infinitely capable machines and all possible fonts but we lost that difference.
ps: i have the same relationship to vintage desktop computer form factor, something about an old blocky box, an hdd led, a cd drive
Can confirm that Terminus is pretty nice, used it as my main programming font for a little bit, before moving over to Iosevka!
What I love most about Iosevka — and there are surely many things more than just one thing to love — is that it is not merely defined as a typeface using a fount encoding, but it is defined in a programming language. Of course it shows up in its router-sign aesthetics, but knowing how it is all defined is a huge part of its charm. A kind of Esperanto of faces.
I made a bitmap font for the PhobGCC project for use in its video output but I don't know how to make it into a bitmap font for use on computers.
> Not because they are retro.
> Because they still work.
I find this writing style so viscerally infuriating.
> Bitmap fonts are the ones that look perfect at their intended resolution.
This seems to be the center of the author's argument.
But I prefer legibility, readability, being easy on the eye. I also prefer antialiasing for its smoothness.
Every screen I have has been Retina for a long time. I greatly appreciate that text is now as legible as it is in books. No distracting jaggies.
I don't want my computer to feel like some nostalgic 1980's computer. I just want to get my work done, which involves a lot of reading and writing, both code and non-code, which is just more legible with vector fonts on a retina screen.
At the end of the day, jaggies are a visual distraction. They're cool if you want a retro vibe that distracts and calls attention to itself for aesthetic purposes. But not for general computer usage.
> Every screen I have has been Retina for a long time. I greatly appreciate that text is now as legible as it is in books. No distracting jaggies.
Not all of us are in that position, and modern font rendering has gotten really bad on non-high DPI monitors, so using a bitmap font has been a way to get rid of the blur and get back to sharp crisp text.
For me, I'd rather have jagged text than a blurry literally headache inducing mess.
That said, the issue here isn't that one is better than the other, but that for some people one or the other is easier to read, and the right answer is that all of this need to be configurable. Just like light and dark mode.
>jaggies are a visual distraction
So are serifs, and people don't complain about those. Whether any "visual distraction" actually distracts you is a matter of what you're accustomed to. If you read enough cursive or blackletter it will start to look normal to you. I disable anti-aliasing because I'm accustomed to aliasing and it doesn't distract me at all. In exchange, I get sharp text on an 1080p monitor, effectively quadrupling my graphics performance because I no longer need 4K. I'd prefer bitmap fonts, but in practice I find full automatic hinting of vector fonts good enough.
The only cases where I can see anti-aliasing helping are with Chinese and Japanese fonts, which have characters with unusually fine details. But on any GUI using Fontconfig you can enable anti-aliasing for those fonts specifically and leave it disabled for the rest.
Serifs are chosen intentionally to be harmonious with the overall letterforms. They provide a feeling of visual stability and additional cues for recognizing letterforms. They provide a kind of consistency. They're not a distraction.
Jaggies come from a limitation of the pixel grid. They arbitrarily make diagonal strokes and curves bumpy while horizontal and vertical strokes are perfectly smooth, an inconsistency that would otherwise have no rhyme or reason behind it. Before letterforms were constrained to square grids, nobody was making diagonals and curves bumpy because it was a desirable aesthetic effect.
Jaggies are a distraction from the underlying letterform we all recognize. We know they are an undesirable distortion. Serifs are not. They serve an intentional aesthetic purpose, proportioned in a carefully balanced way.
Serifs are a skeuomorphic artifact of stone-carved text. They're no more legible than sans-serif fonts (see https://news.ycombinator.com/item?id=47492894 ). The only reason people like them is because they're used to them. You can get the same feeling from bitmap fonts if you read them enough.
I very intentionally didn't say serifs were more legible than sans-serif.
There are reasons people like them more than just that "they're used to them", however. I named a couple of them. Just because they originated in stone doesn't mean we kept using them for the same reason. A lot of things originate for one reason and then become used for other reasons.
Believe me, I got "used to" bitmap fonts throughout the 80's and 90's. But I still always preferred the 300dpi version of a document from my LaserWriter and then inkjet. Getting used to bitmap fonts never meant preferring them for general computer usage. Jaggies that appear arbitrarily on some strokes but not others is not visually pleasing. Nostalgic, maybe, but virtually never anything you'd choose if you weren't intentionally trying to create a retro vibe.
Sometimes I think all the HN "get off my lawn" postings need to be moved to another site.
Glad I have a good font in my browser to read such nonsense.
ai slop