What sort of human hands make computer fonts? Are you there coding in the ones and zeros on some sort of breadboard, wiring up the data using an oscilloscope and rare earth magnets?
There seems to be this idea that using AI is the same thing as walking away and not touching it. Like that you would just say to the computer, do the thing and then not look at it, read it or edit it in any way. What's the world where you're describing where you wouldn't select and edit and refine? You know, with software as an example, how that works with AI is that you spend all day opting it and refining it and you do it over and over and over and you're guiding it and you're shaping it. So it's not like the computer does it. You're still there. I mean, you're making a typeface. You're not chiseling something into stone. You're making a program of sorts that will make shapes. And I don't know why there would be any world where you would just walk away from your first prompt and call it done.
To answer your first question: almost all good fonts start with sketches on paper. Every tool has a kind of grain, a sort of ‘shape language’ it pushes you towards making, and the bézier curves fonts use internally are surprisingly opinionated.
The first few months of any new typeface involve switching between physical and digital drawings frequently, trying to make sure no single tool has too much influence over the shape.
AI might be just another tool, but its grain is super unpredictable. Refining AI-generated sketches is more complicated, and ultimately the skills it requires can only be developed through firsthand practice of analogue techniques. I literally studied stonecarving (along with calligraphy, brush lettering, etc.) in order to be able to make better digital fonts.
My point, and maybe it's overly simplistic, is that at some point you are using the computer to make computer fonts. At some point the ideas go into the computer and you are using computer tools to build the font. They start in the shower or from the finger feel of carving stones whatever, but before and after AI computer fonts are built with computer software tools. Carving rocks, sure, human hands.
The idea that AI is different, in kind, than any of the many other tools that you use is silly to me -- at no point is it desirable for you to throw out your brain. As you say, every tool has a different sort of "grain", which is neither good nor bad but does in fact influence the final product.
Where you lose me is why would you implicitly throw out your process? What about this tool gives the idea that you should not keep the parts of the process that is valuable, on paper etc? AI probably would do better fiddling with the beziers or whatever, what would be the reason that it's ipso facto a bad idea? Who is saying that?
I'm not sure basically what the other side of your argument was supposed to be.
It’s not about throwing out the process, it’s about making sure the end product is the result of intentional decisions rather than just going with the flow of whatever tool is being used. The grain isn’t intrinsically bad, but in a performant typeface you’re going to be reading for hours at a time, over-reliance on a single tool will noticeably harm the readability.
By switching between digital and analogue drawing tools, you’re translating the work between different media, and the act of translation is what smooths over the bumps of any single tool.
AI might eventually become good at fiddling with the béziers, but doing that part manually is an essential part of the process. If you don’t fully understand how the béziers naturally behave (and when to lean into or push back against that, for both aesthetic and technical reasons), the end result will be meaningfully worse.
My wife suddenly died 4 years ago, we had 3 little kids at the time. You need to focus on a) being kind to yourself, whatever that means to you and b) the good things about the change. All change has good parts and bad parts, and it's easy to focus on negative things. Especially with a death since in magnitude they are probably greater than the good things. But if you focus on what you lost you will simply lose the rest of yourself.
I also think that women have a harder time with this than men, possibly because maternal death in childbirth used to be so much more common. But this is just a guess. Certainly until it happens to you its not the sorts of things that you think about too much, and once it does happen you tend to speak to people who are going through the more acute phase of it since they are still actively processing it.
I tested 15 different agents and come up with my own way to range them. Would you hire an agent? Does it spark joy? What is the output quality? It turned into a 61-page deep dive into all the nitty-gritty.
From IDE beasts like Cursor and Copilot to CLI warriors like Aider and full-stack champs like Replit and v0, etc – it’s a no-BS breakdown of what these tools can actually do when you throw a real-world web app prompt at ‘em.
All the resulting code is on
So, Who’s Crushing It?
Cursor Background Agent, v0, Warp: These three scored a near-perfect 24/25. Production-ready, polished, and just chef’s kiss. Cursor Agent was like, “Huh, didn’t expect that level of awesome.”
Copilot Agent & Jules: Tight GitHub integration makes ‘em PM-friendly, though they’re still a bit rough around the edges.
Replit: Stupid-easy for casuals. You’re trapped in their ecosystem, but damn, it’s a nice trap.
v0: UI prototyping on steroids. NextJS and Vercel vibes, but don’t expect it to play nice with your existing codebase.
RooCode & Goose: For you tinkerers who wanna swap models like Pokémon cards and run ‘em locally.
Who Flopped?
Windsurf. I wanted to hate it (gut feeling, don’t ask), and it delivered – basic tests, flimsy docs, and a Dockerfile that choked. 13/25, yawn.
Pro Tips:
Software Pros: Cursor + Warp is your power combo. IDE + CLI = dopamine hits for days.
Casual Coders: Replit’s your jam. Zero friction, instant hosting.
Designers: v0 for quick, slick MVPs. Just embrace the NextJS cult.
Tinkerers: RooCode or Goose. Total control, local LLMs, open-source swagger.
The full report’s got the juicy details – screenshots, rants, and all. I will be doing another report on agents at the end of the summer – let me know what’s your go-to coding agent in 2025. Drop your hot takes or grill me on specifics below.
Ruby is really good at writing DSLs, Javascript sucks at it.
I'll happily admin that this is user error, but I always have trouble editing Gruntfiles when I start to bring in other packages. Adding an additional task to a Gruntfile is way harder in than Rake, or make, or even Ant for that matter, mainly because you are dealing with hand editing a huge JSON blob.
Tweaking the file to add a different path in or whatever is fine, but there are many times where I wanted to to copy and paste something in to make it work, and I spent as much time fiddling with the format of the js file as I did solving my problem.
A lot of people love grunt, but I'm not one of them.
Thanks for your reply. I've been working with maven and make so far. I'm not used to do much stuff in Ruby, so that's why I don't consider Rake files for a big benefit of my working process.
Anyway I consider your points valid, although I also think you can remove a lot of the boilerplate ( Copy-Paste code ) by introducing some variables to your Grunt build.
I personally use Assemble [1] and I find it pretty decent for generating static content websites.
Good to know there's a good alternative in the ruby world.
There seems to be this idea that using AI is the same thing as walking away and not touching it. Like that you would just say to the computer, do the thing and then not look at it, read it or edit it in any way. What's the world where you're describing where you wouldn't select and edit and refine? You know, with software as an example, how that works with AI is that you spend all day opting it and refining it and you do it over and over and over and you're guiding it and you're shaping it. So it's not like the computer does it. You're still there. I mean, you're making a typeface. You're not chiseling something into stone. You're making a program of sorts that will make shapes. And I don't know why there would be any world where you would just walk away from your first prompt and call it done.