upvote
The pre-ai reaction was also unwarranted: committing a massive amount of potentially unmaintainable handwritten code isn't a necessarily positive contribution and any decent engineer (or person tbh) would understand that & not expect gratitude, no matter how concerted their effort.

In that context, I wouldn't expect an idiot (of which there has always been far too many in this industry) to change their behaviour in a post-ai world. They were always out of line & continue to be.

Fwiw, a non-technical employee in my workplace has begun submitting ai-generated prs to internal repos I maintain & they're of excellent quality, with review feedback graciously received & expediently addressed, so this isn't a matter of the idiots not being technical, it's an attitude problem.

reply
Sure, but I think we should judiciously avoid the false equivalence yielded by only looking at this on a developer-by-developer basis, rather than systemically. The truth is that in practice, AI is not a neutral force. Obviously AI can enhance the output of smart, experienced developers and improve the efficiency of code reviews, mitigating the effects of garbage PRs. However, it increases the percentage of PRs contributed by entirely inexperienced and/or not-smart devs from zero to, potentially, the majority. It entirely removes the barriers inherent to coding that kept Dunning-Krueger cases from submitting ill-conceived or poorly constructed changes— actually getting them to run in some way, even poorly. That makes them much more difficult to distinguish from well-constructed PRs than those from, say, someone cargo-culting code from tutorials.

Moreover, as these tools become more expensive, people with money to blow on tokens will be able to drown maintainers that don’t have enough token-cash to help them deal with it. People see this as mostly a matter of time and energy, but I reckon it will soon be a financial issue.

reply
I see AI as a barrier remover. Unfortunately some barriers are good or minimally necessary.

I think we'll need to revert to artificial barriers such as bonds, e.g., if you want to do a PR to my repository you need to pay a 10 dollar bond. If the PR is good and I want future PRs, you keep your bond. If it's slop and spam, I get 10 dollars for my time.

reply
This is entirely too much friction in the wrong place. Public open source will simply die before a system like that ever becomes the norm.

The previous barriers worked because they were organically perfectly in line with a contributor's internal incentives. A contributor gains very little benefit from submitting a patch; the likelihood is infinitesimally small they'll ever get any career advancement, financial recompense, or even much community recognition for it. At most, it shifts the burden of maintaining the code they're contributing from themselves to the community / long-term maintainers. The real incentive for a contributor was making the patch, because they get to see the feature or fix they want made for the software. The previous barriers were in making the patch, and contributors would overcome that friction to gain the benefit of having the patch they want. Moving the barrier to merely submitting the patch after it has already been made will simply result in people not bothering, because there is very little incentivizing them to deal with the friction.

reply
I don't disagree, where is the right place for the friction?
reply
A couple of alternatives are:

1) more reliance on systems to track reputation across projects. I'm sure Microsoft, in the form of GitHub, will love to sell you a partial fix to the same problems it so enthusiastically helped to create. But there are the familiar problems of surveillance, identity theft, office politics, and system-gaming, and it doesn't on its own offer an onramp for new players.

2) in-person coding tests at the same Pearson test centres where people take most of their Cisco (and accounting, and ...) exams today. Not as expensive or inconvenient as you might think, but not the cheapest and easiest, and it certainly has the same concerns re. surveillance and identity theft

reply
I agree with the bond in theory, but that would entirely stop contributions from people in economies where a shady maintainer could keep their code, and their weekly food budget.
reply
We already have trouble with people maintaining open source projects without getting paid, now you want people to pay for the privilege to participate in free work?
reply
It's a bond not a fee. If the maintainer feels that it's spam, they keep the bond. If they feel like it's not, they leave it.
reply
That sounds like a massive headache for maintainers and opportunity for people to cry foul. That gets messy so fast.
reply
But your company employs said individual, whereas arbitrary drive-by patches from randos on open source projects with no consequence of submitting a mountain of garbage.

The answer: require a written proposal for changes before a patch will even be considered unless it is sufficiently small.

Also fight AI with AI: have a bot auto reject patches unless they can link to a previously approved enhancement document. Folks who commit minimal effort will f*ck right off.

Then the cognitive burden is focused on the ideas, and code authors should have at least conveyed the intent. If they actually care to invest their skin in the game then they need to collaborate and not just drop garbage on the front door.

reply
just to clarify:

1. my company also employs its fair share of folk that would fit into the so-called "idiot" category of my post - I just thought it was of note that I have encountered exceptions to this stereotype

2. I fully support what Ladybird is doing here & find it unfortunate that they have to. I didn't intend my post to criticise their move - my example is definitely the rare exception in a sea of unmaintainable garbage. I do think however that it was already a challenging prospect to manage garbage oss prs in the pre-llm era (see umpteen posts on maintainer burnout) & I wouldn't have faulted any open source project for doing what ladybird is doing even pre-llm.

reply
yes. github has very minimal controls for PRs (either shut them off completely, or not at all) but through GH webhooks you can essentially script "auto-close" of PRs that dont have correct preliminary approval.

it's time for there to be some really nice workflow tooling that people can plug into their GH repos that does this and other things.

reply
> Fwiw, a non-technical employee in my workplace has begun submitting ai-generated prs to internal repos I maintain & they're of excellent quality, with review feedback graciously received & expediently addressed, so this isn't a matter of the idiots not being technical, it's an attitude problem.

It is hard for me to imagine another engineering discipline that would be totally fine accepting work from those who don't have the actual engineering background required to do the work.

If I had to push this take to the extreme: software engineers never learned class solidarity and it's now biting the industry in the ass.

reply
Man, you must hate those handymen who put up YouTube videos showing how to do basic home maintenance. A truly class-conscious handyman would insist that the homeowner hire them to replace a light switch.
reply
How this is equivalent at all? The proper equivalence would be "You should be happy a random passerby decided to re-wire your home after watching a youtube tutorial and thank him accordingly".
reply
There certainly exists a class of electricians who believe that homeowners shouldn't be changing a light switch, and jurisdictions exist where a permit is required to do so.
reply
Come on, are you really going to strawman "engineering should be inherently disqualifying" into "so people shouldn't DIY in their own home"? Please try a little bit harder.
reply
I’m not strawmanning anything. I’m pointing out what I believe to be ridiculous gatekeeping. Software engineering isn’t some holy magic that must be kept from the masses.

I can go on YouTube and get step-by-step instructions on how to safely wire an entire house. In many jurisdictions I would even be allowed to do that.

I can get instructions on how to completely redo a bathroom, down to the studs and up through the waterproofing and tiling. I can get instructions on how to do foundation repair, which might be a bit much for me but can help me ask the right questions to keep the contractor I hired honest.

These are all examples of experts acting as “traitors” to their particular group. In reality, technology enables both specialization and despecialization. Some people try to cling to their specializations and cry “class warfare” when threatened.

reply
Alright, I guess I'll take the bait. Not much else going on today anyway.

> I’m pointing out what I believe to be ridiculous gatekeeping.

I am not gatekeeping. I am stating that we collectively exist in a professional caste and that will go away or lose influence if you let it do so. Other professional castes do this exact same brain exercise and that is why they have protections in place.

> Some people try to cling to their specializations and cry “class warfare” when threatened.

I'll be blunt and just state that I am post money and not remotely threatened by this stuff anymore. I am observing that software engineering as a profession is blindly giving away a ridiculous amount of leverage in the world - in the form of dollars and influence, the value of their labor - and more crucially doing it to themselves.

I will be fine whichever way this shakes out, and I don't really have a dog in this fight short of having spent decent time in the OSS space and finding it sad what it is turning in to.

reply
Your initial post on class solidarity was extremely reasonable (even if I disagreed with it - see my comment above) but to follow it up with a post describing castes in a non-negative light is wild.
reply
In hindsight, the word "caste" is too heavily loaded and I should have chosen a different term. Sorry for the shit choice.

It's not meant to be taken negatively, and is purely a term that I was choosing to represent "hey, you all need to consider better coordinating/representing/holding the line as a group".

reply
> I am stating that we collectively exist in a professional caste and that will go away or lose influence if you let it do so. Other professional castes do this exact same brain exercise and that is why they have protections in place.

I consider this mode of thinking selfish and anti-progress. It’s pretty much exactly what Americans decry about unions.

reply
> It’s pretty much exactly what Americans decry about unions.

If you consider a union to be a "bad thing" then we are likely going to talk past each other for eternity.

reply
I support workers being compensated for their value; what I dislike are protectionism and ossification.

I am fortunate that software has paid me well to work on problems I am enthusiastic about solving. I understand that a lot of people on e.g. the Ford assembly line are not there because they want to make excellent cars, they’re there because they need a job. I acknowledge that I have no idea what it’s like to structure one’s life and priorities this way; it is just completely alien to me to align oneself with the task rather than the mission. And I believe that task-identification mindset is why we hear about resistance to electrification because EVs require fewer assembly steps, or Teamsters cutting power cables at trade shows if the vendor dares to plug in a TV themselves.

reply
You're throwing around the term "ossification" like it's a guarantee or necessity tied to anything being discussed here, and that's just not the case.

Software developers should not ossify. Nowhere have I said that LLMs as a tool - used by those in this profession! - should be shunned. I was pointing out that people being totally okay with those outside our profession, those without the necessary skillsets, directly doing our work not only devalues our work.

reply
I’ll be blunt and say you certainly sounds like someone “post money” talking if castes and such. Glad you got your nut and do not care how it shakes out.

What is sad about oss? What is it turning into? I will say far before ai came in oss was a few arms deep in the techfluqncer culture where motivations were driven by gh stars and follow counts rather than a genuine interest. Or maybe what was a genuine interest became twisted as the culture changed.

reply
> Glad you got your nut and do not care how it shakes out.

I do care, it's why I commented what I commented. ;P

I already acknowledged that "caste" is an incorrect word choice and I could've done better there, but my core point remains unchanged.

reply
Assuming you're being genuine (which I have a hard time believing because your argument is quite literally a strawman, please read the definition), you're missing the context entirely. You can't conflate small DIY projects done around the house with developing software that thousands of people and institutions rely on. By all means you can go and watch a video on software development, but that does not entitle you to expect that PRs you make will be accepted to any project other than the ones you control yourself.
reply
Please re-read the specific comment I replied to. It was someone expressing indignation that a software engineer would accept “high-quality” PRs from a non-software engineer, accusing the poster of lacking “class consciousness.”
reply
"You can't conflate small DIY projects done around the house with developing software that thousands of people and institutions rely on. "

Who claimed that?

That was the context:

"Fwiw, a non-technical employee in my workplace has begun submitting ai-generated prs to internal repos I maintain & they're of excellent quality, "

reply
> hard for me to imagine another engineering discipline....

Well, that's already the case because you cant just call yourself an engineer and start signing off on projects. It's a legally protected title in a lot of places. You need a professional license, and can face legal liability for your decisions.

Software engineering is not engineering. Software craftmanship or even architecture would be a more accurate term. There are no devs that will go to prison if what they produce has, say, a major vulnerability. That alone disqualifies it from being engineering. There's no licensure, there's no liability, so already software development is not gatekept in any way like other engineering disciplines.

I mean, just go into an aerospace engineering office and say you want to move fast and break things, you'll get laughed out of the room.

No idea what you mean by class solidarity. There are only two; the capital owning class, and then everyone else (the working class). Most devs are working class just like everyone else.

Unless you're proposing that software should be gatekept to the level of other engineering disciplines?

reply
> Well, that's already the case because you cant just call yourself an engineer and start signing off on projects. It's a legally protected title in a lot of places. You need a professional license, and can face legal liability for your decisions.

This was part of the implication of my point, yes.

> No idea what you mean by class solidarity. There are only two; the capital owning class, and then everyone else (the working class). Most devs are working class just like everyone else.

Yes, albeit a highly compensated portion of the working class. Software engineers should protect their own field a bit more.

> Unless you're proposing that software should be gatekept to the level of other engineering disciplines?

I do not like or want to use the term "gatekeeping" here, but yes, I think that software engineering should be held to a higher standard. You can't have it both ways.

reply
> There are no devs that will go to prison if what they produce has, say, a major vulnerability. That alone disqualifies it from being engineering. There's no licensure, there's no liability

The only problem in your theory is that none of those things has anything to do with "engineering".

You're arguing that a surgeon who removes a burst appendix in a hygienic environment isn't "practicing medicine" if they aren't licensed to do that in the jurisdiction where it happens. You'd have to be insane to believe that.

Engineering means solving problems. A license is a license. They're unrelated concepts.

reply
Ooof. This is a big topic - I understand where you're coming from, but it's a common sentiment & one I've recently come to disagree more & more with.

Firstly: class solidarity. The apparent death of (or at least notable decline in) class solidarity is popularly lumped upon software engineers because they're relatively highly paid, but it's equally as absent in newly created positions (mainly within the IT sector) at all salary levels. There's been a concerted effort to erode class awareness in the private sector for the past 40+ years & it's been effective across all sectors, mostly in newly created job categories without pre-existing union culture. It's in no way specific to software engineering as a role nor to high salary positions.

Secondly: ai & llms. Currently these technologies are monopolised by corporate entities, with models generally being far too inefficient to democratise, so it's obviously tempting to conflate their very existence with their owners, but if you're singling out ai usage as some kind of affordance to the capitalist class you're missing the woods for the trees. You need to separate ownership from existence/usage.

reply
> It's in no way specific to software engineering as a role nor to high salary positions.

Yes, I agree. We are, however, on a site and in a thread that is dedicated to the role of software engineering, so I don't really care about the wider discussion at the moment.

My sole input here is that software engineering has not protected itself as a field, and it will now pay the price for that.

reply
> My sole input here is that software engineering has not protected itself as a field, and it will now pay the price for that.

& my point in raising that this is not an issue that's unique to software engineering is to argue that the demons you're proposing software engineers protect themselves from are distractions from the root cause. You're proposing software engineers need to protect themselves from something that's specific to their field when the problem is holistic.

reply
> You're proposing software engineers need to protect themselves from something that's specific to their field when the problem is holistic.

I have not said it's specific to their field. I've just been specifically commenting on that field.

(The lack of solidarity is perhaps specific to the field)

reply
happens all the time. Some business jerk outsources an entire initiative, forces it through review, and we get dumped with externally written crap we gotta deal with. So what if claude wrote it, actually claude is better than money wasted on those outsourced piles of crap projects
reply
Gratitude was maybe the wrong word. As the article mentions, before ai I think larger PRs, while sometimes inconsiderate, at least implied some amount of care / effort / good faith. In my experience, that was often rewarded with the maintainers at least taking a look at the code. I meant it's odd to have the same expectation when you dump 3000 lines in a pr that you won't even personally write a description for.
reply
There is certainly a certain... entitlement? (It's not the perfect word, but I fail to find a proper term) from some of the vibe crowd. Like an attachment to the output and refusal to accept that most of the work was not theirs.

It is seen in the way they approach contributions but also in regular language. I created X, insistence that their 'curation' was very influencial to the output, difficulty to mention LLM contribution, attitude of 'I care about building while others lose time in details', refusal to engage with potential flaws, and so on.

It is surprisingly different to what I'm used to from senior devs, which behave like they always suspect their own work is flawed and half assed. Like impostor syndrome was reversed.

reply
I've experienced the following sequence more than once at work, and I remain baffled by it each time:

- Receive a huge vibecoded PR for complicated new feature.

- Complain that this needs some design doc to figure out the right approach first.

- Author says no need for design doc, easier to have vibed implementation and discuss the concrete code instead of abstract document.

- I disagree (obviously), but review the PR with feedback along the lines: this entire approach is flawed, throw this out and start over.

- Author gets defensive, says "but this is already working and ready, let's just merge".

- I tell them there is no chance in hell this is getting merged. They go sulk to their manager that I'm not interested in helping them launch.

reply
deleted
reply
> helping them launch.

I think that's probably the key - sounds like you are at a place that rewards "launches" and not long term maintenance and so you are ruining their KPOs or promo packet or whatever.

reply
That's every place :(
reply
I agree it's not "entitlement" specifically but there's something there. I guess by now everyone has experienced that type of person that "tries to help" by copy/pasting a bunch of AI slop and expecting you to work through the cognitive load of validating it.

The original post sums it pretty well, such big output inherently meant big effort, which was a proxy for good faith. Now that's gone.

reply
It was a proof of work system. When work becomes cheap, it stops being proof.
reply
> It is surprisingly different to what I'm used to from senior devs, which behave like they always suspect their own work is flawed and half assed

I never trust my own code. And one of the motivations of trying to be fluent with my editor, is to be able to quickly look at it when a bug is reported. I also don’t trust another person with their description of their code. Any surprise, and I’m looking at the source if it’s a available.

reply
If a project has a rule to not submit AI generated PRs, people should never submit AI generated PRs to that project. It's spam. Or if the rule is more nuanced than that in relation to AI, it should be respected.

It's 100% an issue with the people with submitting these PRs. So, if someone has a history of having no issue with breaking project rules (let alone being arrogant about it), it should be a massive red flag about the person for any possible employer or future collaborator checking their profile, etc.

Why people are wilfully destroying their own reputation like that is beyond me. It's infinitely better to have no activity at all on your profile than to create a track record of bad behaviour.

reply
I can empathize with this view but I've also seen one line clear bug fixes rejected because CC signed off on it.

There's no other correct fix - why do you care which pen I used to write it?

reply
I don't really know if this would be the best solution, but we could maybe define a sliding LoC limit per PR? Also a limit on the number of open PRs per contributor. This way those small, reviewable contributions would get a fair shot at being landed instead of being blanket banned, and the maintainer overhead would be more reasonable.
reply
> What's surprising is that while many submitters take that fairly well, some people get really indignant, essentially calling the maintainers ungrateful.

Why is it surprising that some people who expect results without spending any effort also feel entitled to receiving gratitude without putting in any thought?

reply
If I don’t word these critiques in the most diplomatic way possible, this immediately turns into a discussion about the prevalence of anti-ai sentiment on hn. Which would be boring.
reply
I can imagine in these cases the LLM is telling the "contributor" how smart they are and how much the project is loosing out, maybe saying something like: "It's not about maintaining project boundaries, it’s not about ensuring code quality; it’s a gatekeeping mechanism designed by traditionalists who feel threatened by forward-thinking creators like you who truly master the efficiency of AI."
reply
Whether or not they are, I agree it is entirely possible to imagine them doing that, given what we know about how AI chat has reinforced people doing much worse to themselves and others.

(And the whole "miffed AI wrote a shitpost" thing)

reply
I wouldn’t be surprised to find out this is part of their RHLF training, the attitude is so prevalent in these models.
reply
really? in the way the parent comment describes? (genuine) i suppose i've never encountered a context where it would be relevant for an LLM to output that, interesting
reply
Since Godot got mentioned, I thought this recent talk by Juan Linietsky provides a reasonable alternative to heavily restricting contribution.

https://youtu.be/LDSwP37y_W4?si=fMIsdQ2yjoiGChb6

reply
What would be great is something like Pangram for PRs and issues. Detects if the PR or issue is AI-generated (with multiple checkers for redundancy) so that maintainers can choose to auto-close and PR authors have to at least manually write _something_ before they launch 20k SLOC diffs.
reply
> They've massively decreased the work they put in but still expect the same pre-ai reaction/gratitude when submitting a big PR.

I don't think that follows. They expect things to improve, they do something about it and might (unreasonably) be frustrated by what they think is a policy that stands in the way of quicker progress. The first part is certain, the second part less so, and the third is just speculation.

It's clear that open source project are struggling to understand what is going on and coming up with plans – like everyone else – but clearly there are better and worse ways to proceed in this new world, if popularity, adoption and progress are things you want to focus on.

reply
One could call a big lump of code a Tumor.
reply
> What's surprising is that while many submitters take that fairly well, some people get really indignant, essentially calling the maintainers ungrateful.

I would be more sympathetic if they actually spent meaningful time on these contributions and could maybe see an argument for wanting their work to be given due consideration (lots of caveats here), but from what I’ve seen that’s the exception rather than the rule with a lot of these case.

reply
There massive value in AI PR's.

If a feature and ignored, it can forked to provide more value to the users.

If unaccepted bugfixes, the maintainers are just silly. They need to be forked off.

reply
It's interesting to see this perspective in the wild. In the age of AI I wonder what "massive value" your PR is bringing to the maintainer. $1 worth of tokens?
reply
As explained: New features. Bugfixes. Better analysis.

Only stoneagers would say that they are better than a good AI.

reply
I regularly find the code output of opus and gpt 5.5 to be garbage. Overly verbose, unnecessary abstractions, strange duplication of concepts across objects, unnecessary copying of objects and creation of objects. I have found its much more useful to just ping pong some ideas, have it generate helper methods, and do the code implementation by hand.

I guess I am a stoneager.

reply
I think this is one of the grand realisations, and it is why local models are much, much more of a threat to the "metered intelligence as a global utility" business model.

As an AI-cynic I am much more interested in learning how AI solves my problems (of which I have many), not how it can revolutionise programming. How about it revolutionises me not experiencing task paralysis first.

reply
not to throw this word around, but,

> Only stoneagers would say that they are better than a good AI.

projection? lack of confidence in your own abilities? why make such a sweeping statement

reply
[dead]
reply
This thread is in the context of community PRs in open source projects. So it's not about AI or not, it's about maintainers using AI vs random contributors using AI.

My point is that with AI, where the actual code generation is easy, there's little value in community PR contributions anymore.

reply
Hmm. I've read that differently. Maybe you are right. So he is going the GNU/FSF direction avoiding the minefield of external contributions
reply
> Only stoneagers would say that they are better than a good AI.

I am only a bit above average and I clearly still write better code than a good AI.

The only question left in my mind, alas, is whether that is enough to earn a living.

I mean: it is clear that in every domain except for programming, a talented XYZer can do better than an appropriate LLM trained to do XYZ (except perhaps in some absolutely exhausting pattern recognition tasks).

So I am not sure why we see our own field as different. A sort of inverted Gell-Mann amnesia?

reply
I mean, aren't you kind of proving the poster's point?

Fork away. If you want to put in the meaningful effort required to maintain and improve upon a project as significant as Godot, and feel that AI is a mechanism you want in order to do so, go for it. Clearly, the maintainers don't feel that that's the best approach to create the product they want to create, and they are not required to accede to the sense of entitlement of the community.

reply
Even before AI it was trivial to setup a continuous merge script. I did that several years for several projects which refused my PR's.

Nowadays it's even more trivial.

And a community is more of a burden than an advantage nowadays. Users are ok, but a community not so. See python, perl, ruby, node and countless others.

reply