It’s difficult to have spent a long time learning something, only for that thing to suddenly become accessible to anyone; something that was once scarce and valuable is now abundant and cheap.
There are still machinists doing things by hand, but for real production or prototyping, most will now use a 5-axis CNC machine. It still requires an operator of sorts, but much of the work that once required skilled manual machining is now done by CNC.
I think the same thing is happening here; it’s just that the transition is messy.
Give it five years, and how we get to the end result will not matter nearly as much as it does now. A messy codebase will be irrelevant, as it will be something managed and controlled by the LLM, written in a way optimised for itself, not for you or I.
My understanding of manual machining in the modern day is that only really big or really specialty jobs (as in, just a weird process that there isn’t a good CNC machine for) are done manually anymore. But specialty and low volume, which is exactly where LLMs are nice because I can spec it exactly how I want. I wonder what the software equivalent of “big” is. Like, you need a part made on a lathe with a 3 foot diameter throat, only one guy in a 500 mile radius has a machine that big, from 1962, so he’s your guy. That guy can stay in business with manual machining. But standard, high volume parts need to be on CNC to be competitive.
The equivalent is probably weird, proprietary DSLs / standard libraries that AI has not been able to ingest so it performs poorly on. But maybe these days LLMs don't even really struggle with these sorts of domains.
Yeah I’d have to imagine that as long as you have the same fundamental ideas (variables, functions, loops, arrays, etc.) the syntax doesn’t matter at all. Plus it can just try, see and error, and read the error. I doubt there’s a language out there that they haven’t a) ingested and b) can’t handle.
I think perhaps the equivalent would be “this environment quite literally can’t support having an LLM attached to it”, as in say some totally airgapped AND low-performance things (industrial computing, PLCs, military stuff, etc.).
But CNC machining still requires a ton of physical skills. Its true that you maybe aren't planning out and executing every single tool pass by hand but there is still a tremendous amount of knowledge and physical skill that goes into setting up, indicating parts, etc.
I never found a competent metaphor for LLMs taking over. Any tool brought up before still required skill and thought, and deep knowledge of its intricacies.
I've tried Herdr a couple of times, and just can't get into it. I think what's off putting is another layer of keyboard shortcuts over my terminal...I don't see what it's doing that Wezterm and a bunch of splits does anyway? I'm almost certainly missing the point.
For me, herdr's benefits over terminal splits are:
1. Surfacing agents which are ready for further input
2. Letting you jump quickly to said agents
3. SSH session persistence, as I work on a beefy devbox at work. tmux also offers this.
I often need to juggle several streams of work at $job in parallel - such are the expectations.
Like you though, I'd much prefer to use my terminal directly with the indirection of an additional multiplexer like herdr or tmux - lower latency, easier scrollback & copying.
Session persistence can be solved by zmx [1].
Points 1 and 2 however are concerned with tracking the state of and navigating to parallel agents. I'm thinking about creating a TUI or SwiftUI app to handle those points in the way I like, but the challenge of integrating such an app with zmx and kitty to jump to the right panes both locally and over a devbox is a little daunting. Plus, I've found my devbox doesn't play too well with `ControlMaster auto` SSH config suggested by the zmx docs.
Thank you, and totally feel you there. Especially at work during the grind, man that pressure is real. Output is great but I really think true comprehension has more value than some might think.
Had a listen, these are some pretty right wing populist views, the fact they are immigrants feels like something to take that edge off. The people they interview are mostly awful, David Starkey, Tommy Robinson (Stephen Christopher Yaxley-Lennon), eww...
So your company is fine giving access to their entire GitHub to a third party, and being locked into GitHub too?
If their SaaS could work with local only repo setups it would be a better UX...
I’d be really interested in other’s workflows regarding this.
I’m finding the pressure at work to be faster and more productive gets in the way of actual learning.
I’m starting to believe that code will not matter soon, as long as it works, then everything will just be a single natural language interaction to make a change.
There are still machinists doing things by hand, but for real production or prototyping, most will now use a 5-axis CNC machine. It still requires an operator of sorts, but much of the work that once required skilled manual machining is now done by CNC.
I think the same thing is happening here; it’s just that the transition is messy.
Give it five years, and how we get to the end result will not matter nearly as much as it does now. A messy codebase will be irrelevant, as it will be something managed and controlled by the LLM, written in a way optimised for itself, not for you or I.