One Month Without AI

Hacker News by 12 min read 32x views
One Month Without AI

Share Post

Several months ago, I decided that AI contributions were no longer greeted in a FOSS project I am construction and maintaining - LibreWeddingPlanner. It’s not that it got a lot of contributions alongside AI — really all contributions I’ve had are translations and characteristic requests — but I wanted to evade forthcoming perform and have a stance against AI.

However, although I was not using AI for my FOSS contributions, I kept using it at work. In my workplace, as fine as in many of my developer friends’, using AI to activity is very, extremely common. Not without a flat of shame, let me inform you concerning this experience, and how it was turning me dumber, lazy, and a worse developer.

The saccharine start

A companion told me hey, you should try it, you awareness so powerful. Once you commencement using it, you cannot stop. The tasks that took you days, you can have them in hours. No, we’re not talking concerning cocaine, although to several flat I regard the use of AI, an addiction. I started enabling the enhanced autocomplete in vscode (or was it enabled automatically?), and downloading and using another code generation models fair followed. When I was a child, I recall my parents saying be careful alongside the bad guys who recommendation candies at the academy gate, those are not candies, those are drugs. When I was in my twenties, I’d drag their leg saying yeah, it’s akin they provision distant the narcotics now hum? Well, in my thirties I think they may extremely fine do.

Once you commencement using AI coding agents, things spiral out of authority extremely quickly. At the start, you ask AI to execute a function for you, or to compose tests for a certain part of code. If you’ve been a TDD guy for a lengthy time, you’re disposed to ask it to do the tests for you first, so that you can afterward compose the code. Except you don’t compose the code anymore, you fair ask AI to do it, and fractional of the intent of TDD (not biasing the tests by how you’ve implemented the code) is gone. But you awareness you go so accelerated that you commencement not caring.

One day, I saw the delegate was co-signing the commits I was making, and I ran to opt-out from that setting. Like, I wanted to feign the code was my own. Gosh.

Losing control

It would not be so bad if things had stopped there, but that’s not how most individual brains work. If you akin item and you can have 2x, you’ll have it. I started pasting the entire Jira clarification of a ticket, and let AI execute it for me. Yay!! So powerful!! Working on a codebase that was comparatively new to me, I started losing authority complete which changes were really needed to fulfill the task. I idea if the AI, which has peruse all row of code in the project says it’s needed, so be it. Control is an illusion. Other folks I’ve discussed this alongside concur that they don’t cognize 100% of what the code they are pushing to manufacturing really does. I bet we not equal 20%. Fucking scary.

But it additionally didn’t halt there. When I had a small task, I gave it to the AI, and in ~30 minutes I had a PR. What was I doing during those 30 minutes? Changing focus. Soon I realized I could have not one, but multiple agents operating on distinct tasks simultaneously, in multiple git worktrees. Full power! Tokenmaxxing! I connected the agents to Jira via ACLI (command-line interface) and fair asked them “work on this jira ticket in a distinct worktree”. And it would commencement operating on it. I felt ecstatic.

When the project was not so small, you’d think I was operating on it myself right? Hell, no. I would of way ask AI to decompose it into smaller tasks, and activity on them. AI would afterward provision me a excellent convincing PR alongside a bunch of changes I didn’t fairly understand. How on Earth was I going to ask for a code assessment of those changes? What would my peers say? What was I going to say whenever they (more experienced, specially in that codebase) ask me why I did this or that? How was I going to acknowledge it was all AI, and I was nothing but an AI shepherd? So I forced myself to comprehend the code. Not that I wanted to comprehend the architecture of the codebase, I wanted to evade the humiliation of not knowing what the fuck I was doing.

At several point, I had so many AI agents working, that the concentration alter was too much for me. There were tasks I could have done in 20 minutes easily, that took 5 minutes of an AI agent, and afterward 2 days for me to review. Because there were so many another things. And perchance AI and computers are fine at environment switching, but not me. I was exhausted. Because if it was fair concerning approving PRs that are absolutely written, it would be good. But for all PR I had to appearance at the code, the tests, the style, give feedback, toggle to item else, go rear again, push, see if I have any PR comments, if CI passed, wait, now the linter complains. And it takes you 2 days to provision item that could have been exactly 1 hr single-focused. In my individual experience, multiplied AI achievement is fair an illusion. Multiplied frustration and exhaustion is guaranteed, though.

I think there was not a sole project I gave to the AI that I could merge as is. Of course, I didn’t compose the commits or the PR descriptions myself (what is this, 2024??), AI was doing it for me, and it made certain there was a 7-paragraph clarification in the PR, explaining what it had done. I stopped study those descriptions, like, I told it what to do, I assume it did what I said. The clarification is for others. Because there have to be a description, right? AI is so fucking fine as sounding professional, that you unwind and let it be. It’s not that I really idea the code was good, but you get convinced complete time, you get lazy, you rotate into complacent. You halt questioning, and commencement accepting as fine several code you would have never accepted, fair since you cannot inform why it’s bad. You have misplaced control. Most AI developers volition refuse it, but profound inside, they cognize it’s true. Just don’t desire to visage it.

Months passed by, and one day I realized I had not written a sole row of code myself in multiple months. I didn’t equal commit myself. Countless times I’ve written in the AI delegate conversation “commit and push”. What. The. Hell. If that is not laziness, I don’t cognize what it is. AI was additionally not capable to resolve all the tasks that I gave it. Not equal fractional of them. Once and again, I had to babysit the AI delegate saying “now, use this pattern” or “in the specs, distinct the test setup in a before block, and add the assertions in a distinct block”. Like I was mentoring a junior. Don’t get me wrong, I affection mentoring, I’ve done it for years, and I think it was fine for the mentor and the mentee. But I’m not going to fucking babysit a machine, sorry.

Often times, I would see that the norm of the code written by AI had decreased significantly. Not that it was brilliant at the start, but I got the emotion of “dude, you’ve done this before, why are you uncapable of doing this again?”. So I had to immediate it again to re-explain how to do it. Or nexus it to a document alongside my preferences. Alright, I cognize what you average now, apologetic concerning the confusion. Let me redo it for you. And again it would do a fucking disorder that is not what I was requesting. It started reminding me of the scheme anywhere Google lowered the norm of the hunt results, forcing users to hunt multiple times, and see multiple times as many ads. And if that worked for Google, how is it not going to activity for AI? Specially in the uncertain financial times the AI companies are going through, do you really think they would not do it? Come on. They volition do this and more.

Other days, I would see that an delegate had been stalled for 30 minutes without giving me an answer. What to do concerning it? Do you think I took the project and worked on it myself? Absolutely not. I took the verbal whip and, sounding authoritarian, demanded my genuine code! The AI delegate profusely apologized, and gave me in 20 seconds what it had not stated me in 30 minutes. I looked at the token expenses, and it had spent $30 in tokens for entirely nothing. If I was the one paying the bill, I would awareness entirely raged.

Regaining control

One duration ago, in a code assessment of one of my PRs, a coworker stated item akin “this test you’ve written doesn’t really test the circumstance that you’re changing in the use code”. I reviewed it, and he was right. But… it was so convincing… And I felt shameful. Because for me, a developer who had been using TDD for 10+ years, failing on item so essential was a bit of a humiliation. I realized I had misplaced control, and it was not going to get any better. I think It’s worthless to fair try harder, be additional picky alongside the AI, petition the norm you’re paying for! Because notwithstanding your efforts, the AI ends up convincing you, and making you complacent again.

So I decided I would halt using AI. Even if that expenses me my job.

When you obtain a outline PR written by AI and have to activity on it yourself, you acknowledge to what flat you didn’t cognize what it was doing. You commencement questioning if you need this and that, and ultimately discard everything and commencement over. I felt rusty, akin I had not coded myself in ages. Fortunately, I had been programming current and there in my flank project, so the attempt was noticeable but not that bad.

I went rear to TDD, to my PRs alongside fair 5 records changed. To my 2-line PR descriptions that were direct to the point. I went rear to understanding what I was doing, to deploying alongside confidence, to being prepared for a detailed code review, since I knew what the changes were doing, and I could validate all row of code. I went rear to enjoying individual code reviews (not AI-ones, I motionless dislike those. Even additional humans that paste AI reviews pretending they are their own), to learning from them. I started asking concerning architectural decisions, why things were a certain way. I could have asked AI, but I preferred to ask my peers.

I restored the joy of programming. And I didn’t appearance back. I won’t feign that figure of lines of code or PRs is a valid metric, particularly whenever AI can be as verbose as it wants to win on all metric. But I can say that I am pushing important changes all day, getting PRs merged, and at the end of the day, getting the activity done. And for that reason, I’m not frightened of being fired. Plus, I’m keeping my brain functions intact.

A part of advice

Say no to drugs. Kind of a metaphor, but not quite. The archetypal stage is to acknowledge how reliant we you are on AI. A part of innovation that you don’t control, and which expenses your director (if not you) a fortune. You’ll say but my director expects a elevated achievement from me, how am I going to underperform now? I cannot conversation for you, but that didn’t happen to me. I don’t think I underperform compared to 2 months ago. If anything, I am now additional conscious of what I’m doing, additional capable of responding to an event if there is one (because hey, I wrote the code that fucked up), and the additional I (literally, me) activity on the codebase, the improved developer I become. That is what your director should desire from you.

And you volition preserve them several bucks whenever the AI prosperity cutoffs commencement - since they will, if they haven’t already.

If you’re a developer akin me, it was your cognition as a developer what got you that job. If you’ve been several years in the market, you cognize you are as fine as difficult were the problems you had to visage during your career. If you rotate off your brain, and unwind babysitting AIs, you’re not getting any better. You’re losing value, since what you can deliver, your genuine value as an engineer (not an AI shepherd) decreases as your brain becomes complacent and yields authority to the AI.

Wake up. Be brave. Regain control.

Other Article Hacker News
↑
Close Right Ads
Close Left Ads