Number One, Pipe Character, lower case L, upper case I, zero and O, Parentheses and Brackets, are so common pain points on coding and terminal fonts. Those should be painfully distinct.
Maybe that's what they meant by "inspired by typewriters" (on many typewriters there was no 1, you had to use lowercase L)? But I agree that this is not a "feature" you want to have in a font that you use in terminals and/or for programming.
I kinda feel like the difference between the 1 and l is still reasonably obvious, the top serif is significantly different. But it could be improved by removing the bottom left serif from the l.
I've never understood why the lowercase l and 1 so often look the same in monospace fonts. It's not like anyone actually writes an l like that — why not just a small bottom right hook? And maybe a top left hook as well? But a whole base is insanity.
I agree that this is a bad decision for programming, but the reason most fixed-width fonts do that is that they can look visually uneven if they don't use exaggerated serifs on narrow characters. It can even get to the point where words look like they have spaces in them if the wrong characters are next to each other.
Monospace (https://monaspace.githubnext.com/) has a feature that dynamically changes between different versions of characters and moves them inside their space in the font grid to make up for that. But even so, its bottom serifs on 1, I, and l extend to both sides.
Cascadia Code (https://github.com/microsoft/cascadia-code) has a lower-case L whose bottom serif only extends to the right. It's the typeface I use for writing code, and IMO, it's currently the best option available.
This one has those and a distinguishable zero vs. O, so far so good.
Whoops; someone pointed out that 1 and l are indistinguishable. That's a major failing.