AI-assisted coding for teams that can't get away with vibes
24 points by mogambo1
24 points by mogambo1
This is genuinely excellent - I think it’s the best piece I’ve read on AI-assisted development patterns.
I partially like the emphasis on how robust software engineering practices help AI tools perform much better - comprehensive and well designed tests, linters, CI, continuous deployment - things that make humans more productive make AI assistance more productive too.
Glad you liked it!
I’ve been following AI developments on your link blog for a long time now. A lot of what I have figured out is directly influenced by a lot of the stuff you have been talking about!
A system in which AI thrives is one with markers of a high quality team and codebase.
This is likely because the messier codebase was as confusing for the AI as it would be for a human.
This seems like a continuation of the theme I see where AI often exposes existing inefficiency in software development. A lot of the article about directing AI to complete tasks works just as well if you s/AI/junior software developer/g.
Rhymes strongly with this other story: https://lobste.rs/s/ldfeqs/gap_through_which_we_praise_machine
The engineers’ skill is required to prompt well.
Someone shared this with me recently, definitely rhymes!
The default information environment that people have access to is very low quality and creates wrong impressions on what these tools are and what they can replace.
They have a keen calibration and feel for what leads to a good system and can steer LLMs accordingly, i.e., they have what I like to call “the mechanic’s touch”.
A perhaps more common term for this is “mechanical sympathy”. (Often misunderstood by car enthusiasts as not abusing the machine, but that misunderstands the use of “sympathy” here which is more about deep understanding.)
… which is interesting - since the word “empathy” is typically used when describing a “deep[er] understanding” of something, whereas “sympathy” is generally used when describing an expression of understanding or pity.
(I can sympathize with those that both experience the hardships of working on cars and steer LLMs, but having neither worked on cars nor steered LLMs, I can’t say that I empathize.)
Perhaps we let those that steer LLMs and enthuse about cars keep “mechanical sympathy”. We can save the more-accurate-in-spirit, but wonderfully deep “mechanical empathy,” for when we upload our consciousness to the mainframe and finally understand - through first-hand-experience - how it feels to be a LLM /s
The (apparent) originator of the term was a race car driver, so precise word selection might not have been his greatest skill.