As a research project, I built a needed tool with Claude Code. I thought it would be a disaster, but it wasn't. I have some complicated feelings about it.
Post
@mttaggart how did you find the model’s performance with Svelte? I haven’t had a lot of success there.
@mttaggart This was a great read, thank you for writing up your experiences.
As someone who is going back to school to transition into the field, the whole topic of AI is intriguing and intimidating at the same time. I am thankful I've been a hobbyist programmer for a long time, so I can recognize when it feels bad to use, along a lot of the lines you wrote about.
@mttaggart I wanted to write almost the same post, as this
> I let this thing into my brain, and now it is always there. For any new potential project, there is a voice in my head telling me how much easier it would be to let the model do it. How much faster it would be to simply describe the objective in a prompt and let go.
is what I'm strugling with now, but you wrote it perfectly
@mttaggart Debates aside, your thorough post was also a charm to read this gem.
"Do I think LinkedIn is the digital River Styx, where damned souls clamber over each other and claw at the boat passing overhead in the dim hope of salvation from those who have escaped the shambling horde?"
Also happy to read it works with Discourse.
@mttaggart
This might the best, most nuanced writeup I have read.
@EricCarroll Wow, thank you so much! I really appreciate that, and you taking the time to read it.
@mttaggart really excellent write up! Thanks for taking the time to do it
@mttaggart I feel very similar and have gone down a similar path recently. For me I've found it does very little wrong for the apps I am trying to make and I am more eager to press 2 because I enjoy the outcome and testing that outcome more then have control over the code.
I've been calling myself a self loathing AI user but I'm in the process of building 5 or 6 apps and tools I have wanted over the years but never found the effort to do.
@stefan would you be willing to share one example? The kind of app that you would want to build that you need to use this claud. What would be the difference of you doing it vice the ai doing it? Thank you.
@skykiss I just launched this mastodon client that is focused on live blogging. This probably would have taken me weeks or months to get it to the state I have gotten it in in just 2 weeks.
I certainly didn't need calaude to do it technically... but I did need it to lower the effort bar low enough that I actually got code committed to repo.
@stefan Thank you for sharing that experience, and thank you for reading!
@mttaggart "the best way to be pickled is to stay in the brine" - Gerald M. Weinberg
We are all in the brine now. Does the brine evaporate fast enough, or does it thicken?
@mttaggart thanks for writing this!
@mttaggart thanks for sharing your experience using genAI. I too struggle with it. The tech in itself may be empowering some, while at the same time corroding others to gain / keep knowledge, art & craft. The power unbalance, copyright theft, impact on labour (incl data cleaners/trainers) & climate, land & energy use makes it hard to embrace genAI as just a new technology. Currently IMHO using it is not proportional to the negative impacts it has. The Q: would it be possible to fix these?
Thanks for posting this, it was very insightful.
The human factors issues you raise are important. They strike me as similar to issues with autopilot systems in aviation. If the human-in-the-loop is left with nothing more than tediously approving automated functionality then at least two problems emerge: 1) the pilots lose valuable skills that they may need in life-or-death situations, and 2) the pilots are lulled into stupor as they mindlessly monitor a stream of automated behaviors and fail to recognize and react to problems that are rare events.
The aviation industry's response has been to require manual piloting periodically to maintain proficiency, along with perhaps other interventions that I'm unfamiliar with. I'm not sure what this would look like in practice for software development. Maybe requiring developers to manually generate some features? Maybe intentionally inserting mentally-engaging tasks in the human-in-the-loop code review process?
@DaveMWilburn @mttaggart a key difference between aviation and autopilot and software development and slop is that piloting an aircraft is a life-or-death situation and the autopilot has a very constrained task and a real-time deadline, whereas the LLM (being sold to us as some kind of a general task-accomplishment system) just shits out garbage code fast and all i'm doing is creating unreadable software for future people to have to deal with, under an extremely false pressure to perform
@atax1a @DaveMWilburn I have some bad news for you about where that code is going.
Yes, the stakes can indeed be life and death.
@mttaggart @atax1a @DaveMWilburn *cough*MCAS*cough*
@mttaggart @DaveMWilburn well yes we understand that some code is life-or-death stakes but in that case you REALLY want that to be written my someone and not extruded from a probability model. and vibecoding is more likely to introduce reliability problems than solve them. hence the contrast between the open-ended "generative" machine versus the specific-purpose, known-task system.
@DaveMWilburn We're dangerously close to trade guilds and licensure here, which... yeah maybe?
@mttaggart Very well written and considered, thanks!
@davebauerart Thank you! Appreciate you reading!
I really appreciate all the replies and support on this one. It was hard to write. I do want to call out two points that aren't being discussed, and that I felt pretty strongly about:
- Open source is in trouble, and maintainers need help. Generative code is the help that showed up. What is the expectation here?
- "The tool requires expertise to validate, but its use diminishes expertise and stunts its growth." What does "responsible use" look like that prevents this obvious and pervasive harm?
Did you use ai to write this article? I noticed it's littered with emdashes
@rusty_shackleford I did not and would not. I have used emdashes before models appropriated them, and I'll not surrender them.
@mttaggart A great read, thanks. I’m someone who instinctively knows I’ll hate shepherding an LLM, and who is aghast at the thievery and environmental vandalism required to create them. I also viscerally fear becoming dependent on big tech and eroding my own expertise to do the one thing I’m any good at. But I’m learning not to judge as harshly those who feel they need to use them, even if I think it’s a road to ruin intellectually and financially (as they become more expensive)
@mttaggart Responsible use is maintaining your role as the expert at all stages of the project. AI is a tremendous tool but has been made so easy to misuse by making it entertaining and our little code "buddy". You really hit many of what I consider responsible AI practices. Two of my main rules...
Review everything. If you don't understand the AI's code, the subject matter, references, etc don't commit until you do. Don't ever accept auto-commit.
Security is key. I can't stress that enough to new devs. If you didn't tell your agent to make it secure - it's not. Start your security audit.
@johnofrobotz Even if you did tell your agent to make it secure.
@mttaggart hehe so true. That's why the first rule is so important 😁
@mttaggart Responsible use is maintaining your role as the expert at all stages of the project. AI is a tremendous tool but has been made so easy to misuse by making it entertaining and our little code "buddy". You really hit many of what I consider responsible AI practices. Two of my main rules...
Review everything. If you don't understand the AI's code, the subject matter, references, etc don't commit until you do. Don't ever accept auto-commit.
Security is key. I can't stress that enough to new devs. If you didn't tell your agent to make it secure - it's not. Start your security audit.
@mttaggart
Actually, from my personal experience (CC too, which is probably still one of the better AI coding agents even if it has many warts), yes it "works", but before you start to announce your great successes with it, don't forget so ugly details that people like to overlook.
The human aspect. On one side you need an experienced overseer that makes sure that CC stays on track. I've seen CC go on many fascinating off topic excursions.
@mttaggart I really appreciate your insight, I'm going to be asking my boss a lot of these questions.
@mttaggart That's all pretty consistent with my experience. I've spent some time learning the tools and the underlying theory, and from earlier work I also know a bit about chips and the stack between chat and chips. On the one hand there are some major limits to how well the average person can describe the problems the want to solve. On the other I think the people building their thinking on "it's a bubble" miss that the tech is not fundamentally expensive to maintain once built.
@mttaggart
Thanks for the write-up. An interesting if tricky read. I find myself in a similar place. If we don’t become knowledgeable about these tools, able to map out failure modes and boundaries, and identify how they should be delimited and defanged, we effectively cede the floor to evangelists who won’t know or care.