I used to share this sentiment but the more I used AI for programming, the less I enjoyed it. Even writing "boring" code (like tests or summaries) by hand increased my understanding of what I wrote and how it integrates into the rest of the codebase, which I think is fun.
Letting a robot write code for me, however tedious it would be to write manually, made me feel like I was working in someone else's codebase. It reminds me of launching a videogame and letting someone else play through the boring parts. I might as well not be playing. Why bother at all?
I understand this behaviour if you're working for a company on some miserable product, but not for personal projects.
I gain comprehension through the authoring process. I've always been weaker on the side of reviewing and only really gained an understanding of new tooling added by coworkers when I get to dig in and try to use it. This is absolutely a learning style thing and I have ADHD and have known since high-school that I am more engaged in the practical and have trouble with dry lecture style teaching - I have even excelled in pretty abstract and theoretical fields but it takes trying to work through problem solving, even if those problems are abstract and hard to mechanically represent.
So I am in the same boat, AI can write some good skeleton code for different purposes so I can get running faster but with anything complex and established it serves very little benefit. I'll end up spending more time trying to understand why and how it is doing something then I'd spend just doing it myself. When AI is a magical fix button that's awesome, but even in those circumstances I'm just buying LLM-debt - if I never need to touch that code again it's fine, but if I need to revise the code then I'll need to invest more time into understanding it and cleaning it up then I initially saved.
I'm not certain how much other folks are feeling this or if it's just me and the way my brain works, but I struggle to see the great savings outside of dead simple tasks.
AI stops coding being about the journey, and makes it about the destination. That is the polar opposite of most people's coding experience as a professional. Most developers are not about the destination, and often don't really care about the 'product', preferring to care about the code itself. They derive satisfaction from how they got to the end product instead of the end product itself.
For those developers who just want to build a thing to drive business value, or because they want a tool that they need, or because they think the end result will be fun to have, AI coding is great. It enables them to skip over (parts of) the tedious coding bit and get straight to the result bit.
If you're coding because you love coding then obviously skipping the coding bit is going to be a bad time.
> For those developers who just want to build a thing to drive business value, or because they want a tool that they need, or because they think the end result will be fun to have, AI coding is great. It enables them to skip over (parts of) the tedious coding bit and get straight to the result bit.
Then they aren't programmers anymore, are they? We don't call people using no-code platforms "programmers" and we wouldn't trust them one bit to review actual code.
AI is simply the new no-code platform, except that the scope of what it can do is much larger while the reliability of what it produces is much lower.
Right not coding with AI requires a lot of skill in understanding where the AI is going wrong, so it's still coding. Someone who can't code isn't going to make a good app with AI (although a 'working' app is definitely possible.)
In the future though, sure,it'll be possible to build a decent app without ever seeing or understanding the code.
> The customer/user can't tell the difference between a good working app and a poor working app.
Come on man, this is the whole reason Duolingo was people's favourite language learning app, or people claim they like iPhones over Android phones or Photoshop over Canva. These apps and devices all work, but which one is good or better is a debate. People have preferences; some apps in a category are easier to use than others, and some apps have branding that signals status. Now, those things become more important in differentiating your app than "It does what it is supposed to do". Until now, just getting an app to do what you wanted it to do was a competitive advantage, that's becoming a smaller advantage day by day
For me, it has been the journey. I love being able to say "do this" and just magically have it done, then looking over the result and saying, "well not exactly like that, I actually want it to be a little more like this." I am slowly vibe-iterating over what I hope is a solid platform, and it's been a lot of fun
I generally agree with you. As a recent father with a toddler, and two parents with a full time job, I’ve found that the only way I can make time for those personal side projects is to use AI to do most of the bootstrapping, and then do the final tweaks on my own. Most of this is around home automation, managing my Linux ISO server, among other things. But it certainly would be more fun and rewarding if I did it all myself.
This feels like the same moment for me when I realized I couldn't keep using Gentoo and needed to move on to a Linux distribution that was ready to go without lots of manual effort. I have a family and kids I need those hours. I had the same feeling as OP of losing a fun learning activity. No longer progressing on Linux knowledge just maintaining. Granted it was good enough level to move on but it's still a loss.
I do the same as you with AI now, it's allowing me to build simple things quickly and revise later. Sometimes I never have to. I feel similarly that I'm no longer progressing as a dev just maintaining what I know. That might change I might adapt how I approach work and find the balance but for now it's a new activity entirely.
I've talked to many people over the years who saw coding as a get shit done activity. Stop when it's good enough. They never approached it really as a hobby and a learning experience. It wasn't about self progression to them. Mentioning that I read computer books resulted in a disgusted face "You can just google what you need when you need it".
Always felt odd to me, software development was my hobby something I loved not just a job. Now I think they will thrive in this world. It's pure results. No need to know a breath of things or what's out there to start on the right foot. AI has it all somewhere in it's matrix. Hopefully they develop enough taste to figure out what's good from bad when it's something that matters.
My favourite code to write used to be small clean methods perhaps containing ~20 lines of logic. And I agree, it's fun coming up with ways to test that logic and seeing it pass those tests.
I'm not sure I'll ever write this kind of code again now. For months now all I've done is think about the higher level architectural decisions and prompt agents to write the actual code, which I find enjoyable, but architectural decisions are less clean and therefore for me less enjoyable. There's often a very clear good and bad way to right a method, but how you organise things at a higher level is much less binary. I rarely ever get that, "yeah, I've done a really good job there" feeling when making higher level decisions, but more of "eh, I think this is probably a good solution/compromise, given the requirements".
Well, that's the thing. You have to shut your programmer brain off and turn on your business brain. The code never really was that important. Delivering value to end users is the important thing, at least to the people that count.
Tim Bryce, one of the foremost experts on software methodology, hated programmers and considered them deeply sad individuals who had to compensate for their mediocre intelligence and narrow thinking by gatekeeping technology and holding the rest of the company hostage to them. And, he said upper management in corporate America agreed with him.
If you place a lot of value in being a good programmer, then to the real movers and shakers in society you are at best a tool they can use to get even richer. A tool that will soon be replaced by a machine. The time has come for programmers to level up their soft skills and social standing, and focus their intelligence on the business rather than the code. It sucks but that's the reality of the AI era.
I think we (developers) need to get over that. Code was always the means to an end, which is providing a product to solve a problem, not the end itself.
It isn't, no one is buying code on it's own - but it's a component of the product. I dislike the phrasing above since it assumes the two are distinct things.
This is the standard way to refer to an unknown person in English, anything else sounds awkward. "What does the person want", "what does he or she want", "what does this 'someone' want", none of these will sound natural to a native speaker.
It's called "singular they". It's used like: "We have a new joiner in our team! They became the talk of the town very fast". I love this feature of the English language, while a bit confusing at first, I think it works much better than "he/she" or "s/he" when talking about someone with an unspecified, unknown or unrelated gender.
ƿrong. "they" is norþmannisċ. It sċuld be he, forðat hē and hēo ƿuld'fe melded into he, and forðat Englisċ is an Indo-Europisċ tung, ƿere ƿerelie is ðe first kin.
The CSS outline property is (was?) unreliable on Safari. Things like the border-radius don't affect the outline shape -- it's always square even if you to to create some Apple-patented rounded rectangles using border-radius.
I've tried many note taking methods, including paper, and none of it really fit my needs. So I wrote my own application, just for me, with nobody else in mind. It's perfect and I recommend everyone to do the same.
The difference between those two is that, by smoking, you become the aggressor. If being considerate and empathetic is "solving someone else's problem" then I don't see how that's entitled. Don't smoke in public.
Letting a robot write code for me, however tedious it would be to write manually, made me feel like I was working in someone else's codebase. It reminds me of launching a videogame and letting someone else play through the boring parts. I might as well not be playing. Why bother at all?
I understand this behaviour if you're working for a company on some miserable product, but not for personal projects.