this post was submitted on 05 Nov 2024
892 points (98.8% liked)

Programmer Humor

19623 readers
1 users here now

Welcome to Programmer Humor!

This is a place where you can post jokes, memes, humor, etc. related to programming!

For sharing awful code theres also Programming Horror.

Rules

founded 1 year ago
MODERATORS
 
you are viewing a single comment's thread
view the rest of the comments
[–] Ephera@lemmy.ml 281 points 2 weeks ago (3 children)

Tangentially related rant: We had a new contributor open up a pull request today and I gave their changes an initial look to make sure no malicious code is included.
I couldn't see anything wrong with it. The PR was certainly a bit short, but the task they tackled was pretty much a matter of either it works or it doesn't. And I figured, if they open a PR, they'll have a working solution.

...well, I tell the CI/CD runner to get going and it immediately runs into a compile error. Not an exotic compile error, the person who submitted the PR had never even tried to compile it.

Then it dawned on me. They had included a link to a GitHub Copilot workspace, supposedly just for context.
In reality, they had asked the dumbass LLM to do the change described in the ticket and figured, it would produce a working PR right off the bat. No need to even check it, just let the maintainer do the validation.

In an attempt to give them constructive feedback, I tried to figure out, if this GitHub Copilot workspace thingamabob had a Compile-button that they just forgot to click, so I actually watched Microsoft's ad video for it.
And sure enough, I saw right then and there, who really was at fault for this abomination of a PR.

The ad showed exactly that. Just chat a bit with the LLM and then directly create a PR. Which, yes, there is a theoretical chance of this possibly making sense, like when rewording the documentation. But for any actual code changes? Fuck no.

So, most sincerely: Fuck you, Microsoft.

[–] TrickDacy@lemmy.world 51 points 2 weeks ago (3 children)

Surely you have to blame the idiot human here who actually has the ability to reason (in theory)

[–] unexposedhazard@discuss.tchncs.de 56 points 2 weeks ago (1 children)

You think the decision to build this bot like that was not made by a human? Its idiot humans all the way down.

[–] TrickDacy@lemmy.world 12 points 2 weeks ago (3 children)

Of course but people selling/offering shitty tool options is not only expected, it's guaranteed. I certainly do not understand this tendency to blame the machine or makers of the machine and excuse the moronic developer

[–] unexposedhazard@discuss.tchncs.de 10 points 2 weeks ago* (last edited 2 weeks ago)

Nono i agree with you, people like that cant be trusted with tying their shoes.

I just wanted to point out that the system is the way it is because of "idiot human here who actually has the ability to reason"

[–] firelizzard@programming.dev 4 points 2 weeks ago

The person who uses the shitty tool is a moron. The person who makes the shitty tool is an asshole. At least in this case where the shitty tool is actively promoting shitty PRs.

[–] Kissaki@programming.dev 3 points 2 weeks ago (1 children)

Responsibility is shared. It's not one or the other.

Many people don't know what they're doing. That's kind of expected. But a tool provider and seller should know what they're doing. Enabling people to behave in a negative way should be questioned. Maybe it's a consequence of enablement, or maybe it's bad design or marketing. Where criticism is certainly warranted.

[–] TrickDacy@lemmy.world -3 points 2 weeks ago

Yes the only people ever to blame are everyone but the people who actually did a thing. That's the same reason voters aren't responsible for trump, Democrats are. /s

[–] Ephera@lemmy.ml 11 points 2 weeks ago

Well, for reasons, I happen to know that this person is a student, who has effectively no experience dealing with real-world codebases.

It's possible that the LLM produced good results for the small codebases and well-known exercises that they had to deal with so far.

I'm also guessing, they're learning what a PR is for the first time just now. And then being taught by Microsoft that you can just fire off PRs without a care in the world, like, yeah, how should they know any better?

[–] Swedneck@discuss.tchncs.de 2 points 2 weeks ago

ultimately the people responsible are the ones giving people tools that can be misused, you don't hand a gun to a child.

[–] GreenKnight23@lemmy.world 44 points 2 weeks ago (1 children)

dude. i feel that pain.

i got a dev fired because they absolutely refused to test their changes before submitting.

I'm not talking once or twice either. at least a year of that bullshit. i had to show my boss how many hours of wasted time it was taking me because I look at the code first, like literally anybody. Eventually boss pipd them and fired them but holy fuck i wanted to kick that douche in the groin every time i saw a pr with their name on it.

next place I work I'm insisting on a build step success to assign a pr.

[–] smiletolerantly@awful.systems 4 points 2 weeks ago (1 children)

Lmao, what, that's wild. How did they justify this??

[–] GreenKnight23@lemmy.world 6 points 2 weeks ago (1 children)

"it works on my machine."

It's funny that that's the answer that they always gave, considering there were times that we had screen shares, and I asked them to walk me through how they actually got it to work.

When they attempted to try to run it, unsurprisingly it broke.

There were even a few times that I didn't even review it and the first step I took was to inform them that it wouldn't run. Also, unsurprisingly, I was right.

Management at the time was driven by product development and delivery of "high-value" features. As long as deliverables were delivered, this dev could do anything they wanted to. At the end of a year, I'd lost about four weeks of productivity. That doesn't even cover the hours of after work time that I spent on trying to fix their fuckups.

Needless to say, I stopped doing that. I used to be a nice guy to work with, but now... Let's just say if you can't do the work, I'm not covering for you. If your PR doesn't get merged because it's broken and you can't fix it and you spend six weeks trying to fix it, that's on you.

[–] smiletolerantly@awful.systems 5 points 2 weeks ago* (last edited 2 weeks ago)

Oof.

My employer pays a buttload of money to CircleCI - for extensive checks (build, lint, formatting, full test suite, as well as custom scripts for translation converage, docs,... for the full tech stack) on every push. Reviews start only when everything passes.

I think you have given me a new-found appreciation for the reasoning behind that decision... 😄

[–] Kissaki@programming.dev 16 points 2 weeks ago* (last edited 2 weeks ago)

Commit with Co-authored-by: Copilot

or maybe better --author=Copilot

It would certainly help evaluate submissions to have that context