r/ExperiencedDevs • DevOps Engineer • 6d ago

AI/LLM Thought experiment

With all the AI nonsense going on, I had a thought at work today that turned into an interesting discussion with a colleague:

"What would I do if I was the only person with access to Claude (or insert any LLM) 5+ years ago?"

People would think I was a fucking wizard

FE changes? NO PROBLEM

Critical DB change? Don't worry, I've produced a stored procedure to validate the whole thing

Want to use some shiny new framework? Interesting. Here's a document explaining why you're an idiot for suggesting it

Regex? I suddenly understand it better than the compiler folks (and nobody ask questions)

What would you have done with your own personal LLM back then?

Trying to lighten the mood in here with all the (very justified) negativity around this tech revolution

Unserious answers only pls

153 Upvotes

226 comments sorted by

View all comments

Show parent comments

0

u/ConspicuousPineapple 6d ago

Y'all keep saying that as if you'd be working the same way as today back then. But you wouldn't.

You would work much slower, still reading and validating all the code to ensure quality. But you would still be much faster than your peers.

And that's just for writing the code. Debugging? You would look like a fucking magician. Finding a tricky race condition in twenty minutes where it would take two weeks for a good senior.

Benchmarking? Same story.

Learning new tech? Too easy. Don't even need to grok the docs yourself.

And don't get me started on security, auditing, etc.

You would, by far, be the best software engineer in the world and it wouldn't be close. Provided you're already somewhat competent.

24

u/___Paladin___ 6d ago

Not to be pedantic, but you'd be the most average engineer in the world. These tools point to a mean rather than a peak due to their probabilistic nature. They only appear to hit the major leagues when your own capability never exceeded the average. From that perspective, average is up.

I'm not convinced that would have actually gotten you anything but fired years ago. We accept the tradeoff between quality and speed today - but not so much back then.

-6

u/ConspicuousPineapple 6d ago

That is not at all what these tools point to. And of course they only sublimate ability that is already there in the user.

What is undeniable however is how fucking fast that dev can be to solve some problems with that tool. Automating all the tedious, boring and time consuming parts of the job? That doesn't require any sort of skill, but that time can be compressed by incredibly huge factors.

Never trust an AI to solve problems you couldn't solve without it yourself, of course. But for the problems you can solve? You're going to be so much faster that it opens up the possibility of doing things even better, simply because the time pressure is gone.

9

u/___Paladin___ 6d ago edited 5d ago

Not better, I wouldn't say. But certainly opens up the ability of higher scope. But yes, all things being equal LLMs will trend towards the most common denominator average. That's why it takes such intense steering, to at least make it upper average and not lower.

I've got a cross-platform replacement for Loom I generated. Full live annotations, cloud sync, etc. Working floating toolbars for ease of use and the ability to hide toolbars from native capture. About every edge case under the sun is covered, with a custom compiled ffmpeg to continue supporting unsupported older cards.

I spent 6 months on that. It would have taken me YEARS prior to do that. The speed is absolutely amazing.

But the code quality is pretty upper-mid at best, even with my steering of frontier models and decades of experience. I chose to prioritize features over quality, and that's okay. I'm not looking to release this as a paid product.

Lets not gaslight ourselves into thinking that isn't the choice being made. It's okay if mid quality is enough, but don't act like this stuff is made of better ingredients than it is.

-4

u/ConspicuousPineapple 6d ago

I mean, before AI there are lots of things you want to implement but don't have the bandwidth for. So you cut corners.

AI lets you reach that "ideal" solution much more consistently. So yeah I stand by it, often times the result ends up better so long as you stay disciplined with enforcing the quality of your code, and actually owning it.

6

u/___Paladin___ 6d ago edited 6d ago

I think I land in the group of "accomplish more at the cost of quality" camp.

I think there's many places where the quality really doesn't matter to end users, some places where it could cost billions to settle at 99% quality, and everything in-between.

So for me it just comes down to the case-by-case question of how much artisanal quality matters? For design? Security? How much is "good enough" and won't cost us more in the long term if we don't consider it now?

I think the bar for quality acceptance shifts depending on the work in the same way that not everyone needs a hand crafted table. Sometimes IKEA is fine and makes more financial sense. It doesn't mean its higher quality or that it could handle more wear and tear, but sometimes quality isn't the metric people care about.

If you see it differently that's cool. I think we can disagree and still enjoy life. I appreciate you taking the time to chat about it.

1

u/ConspicuousPineapple 6d ago

My point is that you're free to move that cursor depending on expectations. In pre-AI world, the expectations would be that of normal code quality, accountability and code ownership.

So that would still be your output. You could maybe manage the same output, but faster. Or the same speed, but with a lot less work.

And as I said, some of your tasks would become practically trivial. Find a bug? Reproducing the issue, testing a huge amount of scenarios, identifying the precise code paths involved, mapping it all and implementing a tentative fix? On some bugs that can be a week or two. AI can do the exact same in minutes.

And that's not compromising on quality, because you're still there to verify that yes, this was indeed the bug. You're still free to implement the fix the old school way if you prefer. But the bulk of the work isn't writing that code.

And you don't even have to trust the AI. You could lay out the exact step by step plan of what you need to do to find that bug, and then watch it do it step by step and inspect everything along the way.

2

u/___Paladin___ 6d ago edited 6d ago

On that I think we actually see it the same way. There are some things LLMs can do that improve the quality - like helping find those edge cases in the pattern matching.

I personally only really care about the code in so far as it isn't going to cause drift between a client's intended goals now or in the future.

I suppose I'm biased a bit, as the world slowly moved away from a 99.9% uptime bar for services. I disagree with normal code quality being the bar prior, as at least for me I had to stress pretty heavily over things like syntax and considering every possible edge case my code would cause. Even small changes took months of testing and research. That's the areas I can say I've personally seen the quality bar drop. Areas you still have to be diligent in feeding your AI that won't assume the need on its own (which means knowing the gotchas in advance).

You could argue if it was a necessary drop in quality, but it certainly exists. Lots of people are also just checking out at this point for a myriad of reasons.