Remix.run Logo
RugnirViking 2 hours ago

I don't think this article is correct exactly, but I do feel that I'm less proud of my work. Less likely to go the extra mile. At first, I tried to do all the due diligence - reading and understanding all of the black box's output. But its clear what my workplace wants - more velocity, more code. If you take time reviewing, you're a blocker. If you lgtm that 3k LoC PR, that's great responsiveness. If you spend two days on a "simple fix" that involves broad cross cutting changes to the system and multiple library updates, you should be doing something else. We are all working across more areas of the system, less specialization, less understanding.

And it is great. It does produce fixes, produce a facimilie of understanding. It answers my questions, and is often right. And tinkering with the process of it is satisfying. Integrating more and more data, writing better specs, you can get better results. Its tempting to think that it could be sustainable, this way of working, but also so scary to lose the understanding, to not have the confidence in how things work. Finding duplicated stacks using different libraries, or even the same library, is becoming more and more common. Even our debugging tools, our tracing grow fragmented and unstandardized.

I liked the old way of working. It was fun for me, if often frustrating. It was solving hard sudoku on the train. This new way is lower friction, but more stress. It's steering a rocket ship using chopsticks to hold the wheel. You desperately want to slow things down and work methodically, to be sure, and safe. But you won't get anywhere near as far if you do that.

Somewhere quiet, the tech debt demon smiles.

svieira an hour ago | parent | next [-]

> Finding duplicated stacks using different libraries, or even the same library, is becoming more and more common. Even our debugging tools, our tracing grow fragmented.

Same - literally found a re-build of a library feature for use with the library the other day (e. g. MyCustomFooProviderFor(Bar) but Bar already literally has a `.foo` method.) No, it didn't need to be there.

mooreds an hour ago | parent | prev [-]

I have so many questions.

How long have you been doing this?

Are you at a product company, a consultancy, a place where technology is an enabler but not core, or somewhere else?

What happens when there are bugs or an outage due to that 3k LoC PR?

RugnirViking an hour ago | parent [-]

7 years experience as a developer or thereabouts. Its probably been a year since the agentic coding stuff has become really widespread, picking up pace a lot around jan. Even the old hands, 20 years plus at the company and those few holdouts who refused to use AI before are deep in it now.

We're at a product company, not a consultancy. Hard to say exactly about tech, the tech is namely the product, but its b2b, so massive contracts move like glaciers, customer purchase decisions are often as much or more about the claims we made as the reality of the code.

As for outages, its the same as it always was. We have our testing, in layers. unit tests, integrations, e2e, staging envs. Layers and layers before it reaches the customer. If there ever is something that reaches there, as has happened, its so hard to pin the blame on AI, and of course we run a blameless culture here anyhow. Tickets are assigned, emergency patches are made, and the behemoth lumbers on. I don't think AI makes our defences much better though. We catch the things we always caught, and miss those we always missed, in greater and greater volume.

I don't pin blame on stupid management or whatever, I think this is complacency rather than a specific effort to push ai, as some claim. AI has just made it easier to work on more and understand less, and this is the result, no external intervention needed. I don't have a solution other than observing that trying to stop this is fighting the tides. People used to hate working on legacy codebases, where the original developers werent around to explain themselves, now everything is a legacy codebase right from inception - even if you personally don't use ai, the job is fundamentally different.

airstrike an hour ago | parent [-]

Thanks a lot for sharing your story. It's incredibly valuable to hear specifics like that.

RugnirViking an hour ago | parent [-]

No problem. If anyone is feeling anxious about this stuff and wants to chat, my email is in my profile. I figure the only way through from here is forward, and talking about things is a great way to get a better understanding and approach solving them. It's long been a catchphrase of mine in meetings and discussions when people are speculating about some other person or team to say "let's go and ask them!". You'd be surprised how often people don't consider it.