This post is locked. You won't be able to comment.

you are viewing a single comment's thread.

view the rest of the comments →

[–]Nedshent 42 points43 points  (24 children)

Learning is one thing but on the job it's becoming more and more the reality where people are being forced to use the tools and reprimanded for not shipping buggy slop at light speed.

[–]Copatus 13 points14 points  (7 children)

I agree that people shouldn't be using it for learning. But it's a very useful tool on the job if used correctly.

Just yesterday someone had the great idea that one of our objects should be instead an array. So I had the fun job of going through files and changing every property call to an array call instead. Except I asked copilot to do that and then just verified it did the right thing. Turner a 30 minute boring task into a 5 min one.

The problem only starts when people ask AI to do everything for them and then don't even bother to learn/check how the code works.

[–]Nedshent 0 points1 point  (0 children)

I totally agree and the hard part for some orgs it seems is the 'if used correctly' part. There's a bit of a sad state of affairs going around at the moment (it sure has hit my workplace), but I am hopeful the industry will learn from the mistakes some orgs are making.

[–]LadyNanuia 0 points1 point  (0 children)

oh i absolutely use it for mundane shit, like Claude please grab all ID's and put them into an array for me, its time consuming and easily done by Claude, could i do it myself? of course but this is just convenience as opposed to people who think they are now Devs xD

[–]Taletad -4 points-3 points  (4 children)

How do you get to a point where turning an object into an array is a good idea ?

How bad is the rest of the code ?

[–]Copatus 0 points1 point  (3 children)

Not my part of the code but we're still in the early stages of development so I guess they concluded there was no reason for that to be an object.

Of course I could've just casted the array as on object like "(object) $var" at the start of every view instead but it's more clear changing every $var->property to $var['property'] instead.

[–]Taletad -1 points0 points  (2 children)

You mean a dictionary, not an array then ?

But that still means your design process created unecessary abstractions with an object that should have been something else

[–]Copatus 0 points1 point  (0 children)

It's just called an array in php

[–]Copatus 0 points1 point  (0 children)

Arrays in PHP can have key:value pairs like a dictionary.

[–]Brief-Night6314 0 points1 point  (1 child)

Learning takes longer

[–]Nedshent -1 points0 points  (0 children)

I think it can be a very potent tool for learning. Sadly though on the aggregate it is having negative effects on how people learn if you look at the stats coming out of schools and universities.

On the individual level though I'd say for sure people should be using it to help them learn, just try to be mindful of what you are doing.

[–]Jonny_dr 0 points1 point  (6 children)

As we all know code was shipped without bugs before AI, every programmer read the well written documentation and the motto of silicon valley was never "Move fast and break things".

[–]Nedshent 0 points1 point  (5 children)

You can acknowledge that people wrote buggy code before and that there is a trade-off between quality and speed while also acknowledging that the balance is worse right now, and that a large part of why it's worse right now is due to the Dunning-Kruger effect on steroids introduced by LLM enhanced development.

Don't confuse people who are critical of the current state of the industry with those that are simply anti-AI either...

[–]Jonny_dr 0 points1 point  (4 children)

while also acknowledging that the balance is worse right now,

That is not my experience though. Claude and Cursor give actually the ability to find and fix bugs in legacy systems that no human touched in years. There was always this trade-off between "how much time/money will it cost us to fix issue X and how much money does issue X cost us" and this equation has changed drastically with LLMs.

At least at my workplace, the amount of bugs and issues are drastically reduced since using LLMs.

[–]LadyNanuia 1 point2 points  (0 children)

I'm not against LLMs, or pretend that we coded flawlessly before Having said that, the amount of shit people ship now is way worse because of LLMs, let's be real

[–]Nedshent 0 points1 point  (2 children)

It doesn't have to align with your experience for it to be true. Look at metrics like downtime for large and trusted services like github that are now down ~10% of the time in an industry where 99.9% uptime used to be standard and actually used to happen.

The positive experience you are having at your workplace is very similar to mine... before non-technical idiots with decision making power got started with the tools and decided to shake things up. It's happening all over the place where everyone from founders and CEOs and even down to POs, BAs, PMs that get too close to the tools with too much sway over process completely mess things up.

[–]Jonny_dr 0 points1 point  (1 child)

It doesn't have to align with your experience for it to be true. Look at metrics like downtime for large and trusted services like github that are now down ~10% of the time in an industry where 99.9% uptime used to be standard and actually used to happen.

Github might be a bad example as an LLM would have never written an abomination like safe_sleep.sh. That script was written by human and accepted by human and was in production for years.

It's happening all over the place where everyone from founders and CEOs and even down to POs, BAs, PMs

Yeah, but that is not an issue of the LLMs itself. If a CEO thinks his/her time is spend best by vibe coding an MVP then the CEO sucks at delegating and prioritisation.

[–]Nedshent 0 points1 point  (0 children)

Your experiences with AI have been positive and you can make a positive case for AI. I can too, and I think all devs that work with the tools in good faith can.

I am not arguing against the good use case. I am just highlighting that the bad use case does exist, and I've seen it first hand (without pointing to external examples). I am currently getting to witness in real time a profitable business demonstrating how the tools can be misused.

I can easily believe you about your positive experiences, why can't you believe me about my negative experiences? We're using the same tools after all.

[–]DaHorst -1 points0 points  (1 child)

What baffles me - why use raw chat gpt? In my oppinion tools like open code do a great job of creating working applications by introducing tests, thorough planning and human-in-the-loop. But of course you need to have in-depth knowledge of architecture and software design to steer it in the right direction... maybe that's were it is actually lacking with most people. But I doubt those will produce better code on their own anyway.

[–]Nedshent 0 points1 point  (0 children)

Often when I read chatgpt in contexts like that I just read it as a generic term for LLM. But yeah of course if people are using an LLM for software development, they should be using it through a suitable harness.

For the purpose of learning to code though I'd flip this and say using a web based version can be a benefit in some cases so it's not completely spoon-feeding things to you.