this post was submitted on 27 Sep 2023
49 points (69.0% liked)

Programming

17313 readers
208 users here now

Welcome to the main community in programming.dev! Feel free to post anything relating to programming here!

Cross posting is strongly encouraged in the instance. If you feel your post or another person's post makes sense in another community cross post into it.

Hope you enjoy the instance!

Rules

Rules

  • Follow the programming.dev instance rules
  • Keep content related to programming in some way
  • If you're posting long videos try to add in some form of tldr for those who don't want to watch videos

Wormhole

Follow the wormhole through a path of communities [email protected]



founded 1 year ago
MODERATORS
top 50 comments
sorted by: hot top controversial new old
[–] [email protected] 66 points 1 year ago (2 children)

Somebody is pretty salty for no good reason. The maintainers own patch is nicer code than the suggested patch - and the change is small enough that there just isn't anything available to guide the reporter to a better solution without wasting everyone's time.

I'd probably have added a thanks for debugging effort into the commit message myself - but "please accept my patch because I want to have code in the kernel" is a very stupid thing to say, and the maintainer offering a suitable problem to fix is more than I'd have done in that situation.

[–] [email protected] 27 points 1 year ago* (last edited 1 year ago) (2 children)

As someone who had a mildly unpleasant interaction with kernel folks, I can totally understand the issue.

This is one of the very few open source projects I had the feeling they don't appreciate new contributers. There is no on boarding material available and picking the wrong subproject mailing list results in being ignored. You have to spend days without any possibility of help and if your are lucky you get mentioned as a reporter. For the next issue you start from square one as there was no guidance, so you could only learn the bare minimum.

So yeah, his patch may be underwhelming. But the help and credit he got for days or weeks of unpaid work was basically nothing. You may be okay with spending days and only getting credits for the bug report, but I suspect many aren't and will not contribute again after such an experience. And post like this try to point out the issue they have and why many people won't contribute to the kernel ever again.

[–] [email protected] 15 points 1 year ago (2 children)

So yeah, his patch may be underwhelming. But the help and credit he got for days or weeks of unpaid work was basically nothing. You may be okay with spending days and only getting credits for the bug report, but I suspect many aren't and will not contribute again after such an experience.

Especially in this particular case the effort is in debugging the problem, not doing the actual fix - which is the bug report, where he got credited for. lkml is not the place for "how I debugged this problem" - that'd be what goes into his blog. And if you look around you'll see a lot of "how I helped solving this problem" kind of blog posts.

This change is so simple that guiding him to do it in a good way would involve fixing it yourself in the explanation - and then you'd not show the code so he can do it himself? That's just silly. If he cares about that he came out of that with quite a bit of experience on how to handle it the next time - and he mentions he even got an (assumed to be starter friendly) other issue suggested if he wants to have code in the kernel.

From the perspective of hiring people he turned this from a "nice work debugging a problem, might be a useful candidate" to "tries getting low quality code merged for vanity reasons, let's avoid that guy"

[–] [email protected] 7 points 1 year ago

I didn't meant to defend the patch and I see your point. But I personally think that it's not unreasonable to expect to land a bugfix commit after spending multiple days debugging a complex issue, that's why understand that he feels robbed of a kernel contribution.

I don't know what could have been a good solution for this scenario. But taking potential future contributors feelings more serious would help to keep them around and make them feel appreciated.

[–] [email protected] 5 points 1 year ago (1 children)

From the perspective of hiring people he turned this from a “nice work debugging a problem, might be a useful candidate” to “tries getting low quality code merged for vanity reasons, let’s avoid that guy”

The shit storm he brew up in response to getting feedback on his very first pull request is way more concerning than churning out low-quality code.

Coding skills can be improved, specially from the first pull request onward. Toxic behavior such as putting up very public smear campaigns in response to getting feedback on his very first patch submission is a major red flag, and is as toxic as it gets.

[–] [email protected] 5 points 1 year ago

That's roughly what I meant - he should've come out of that experience having learned a lot (there's even an explanation why the other code is better on the mailing list), and had the option of working on a different problem (while he didn't say which I assume it was selected to be more beginner friendly). And instead he's throwing a temper tantrum - that's too risky behaviour for hiring.

[–] [email protected] 2 points 1 year ago (1 children)

But the help and credit he got for days or weeks of unpaid work was basically nothing.

We should keep in mind that this is a one-sided account on how a mundane bugfix issue was handled. Grain of salt required.

Nevertheless, the blog author said he received feedback from members of the Linux kernel security mailing list. Even though I think he could have received more credit than reporting the issue, that was basically his contribution: he pinpointed where the bug was. He also contributed a couple of patches that were faulty and unusable, and the maintainer had to step in and roll out his own fix.

I understand that fixing a nontrivial bug is a badge of honor, and getting credit for critical contributions might have more implications than a warm feeling. However, if the submitted patches were unusable then what would be the desirable outcome? I mean, should Linux users be deprived of a bug fix because a first-timr contributor is struggling with putting together a working patch?

[–] [email protected] 6 points 1 year ago (1 children)

Good point, this could just misrepresentat the situation. I also haven't looked over the mailing list thread and comments here are very salty.

But giving him the benefit of doubt of a nice potential contributer who just debugged a very hard issue and sending in a basic concept of a potential fix. I think it would be beneficial for their community to take the wish for more credit more serious and try to make him feel welcome. But I recognize it was probably hard to do in this case.

Overall I just wanted to recognize that I do see how he feels robbed of his contribution. It reminded me that I also had an experience with the kernel developers that made me not want to contribute again.

[–] [email protected] 0 points 1 year ago* (last edited 1 year ago) (1 children)

I think it would be beneficial for their community to take the wish for more credit more serious and try to make him feel welcome.

I think they did. Apparently the maintainer trusted the first-time contributor enough to propose tackling another bug.

If the goal is to get more contributions, I think that's exactly what should happen. I feel the kernel maintainer is being treated unfairly.

Whining about getting extra work feels like the author didn't intended to contribute anything else and just put all this reputation chips on that one isolated ticket.

[–] [email protected] 6 points 1 year ago* (last edited 1 year ago)

Apparently the maintainer trusted the first-time contributor enough to propose tackling another bug.

There is no trust needed when asking someone to fix a bug. It's not like the maintainer would lose anything if the contributor failed to fix the bug.

Besides, I think it is natural to want recognition when you do a lot of work for free. Many other people wouldn't do this unpaid work at all; recognizing their contribution is the bare minimum of good manners. Even in a company where employees are paid for their work, it is customary to give credit to co-workers who have helped you. Most people don't like to work in places where they don't feel appreciated, and that is also true in Open-Source.

[–] [email protected] 28 points 1 year ago (1 children)

Regardless of deserved credit your reputation in the kernel community will be that of a drama llama at least for awhile. Making a mountain out of a mole hill, will be remembered, does not play well with others.

I'm not saying you don't deserve credit, but the method you went about emoting over this event will be noticed by community managers, not just the kernel community. Be aware of how your reputation is developed. Lots of us had to eat some humble pie in our career development.

If you had spun this in your personal blog on how you helped fix a kernel bug, and spoke of the positives, then you would be seen as more of a team player, plays well with others, doesn't get bogged down on small issues.

Our character isn't defined when times are good, but with how we deal with adversity.

[–] [email protected] 8 points 1 year ago* (last edited 1 year ago)

There's a difference between being a team player and a subservient pawn though - if the maintainer wanted to play as a team they would've suggested changes to the patch and accepted OP's PR. As it happens they didn't as they clearly have some sort of a power/superiority complex or something, or at best are dismissive of others to the detriment of the project they work on

[–] [email protected] 22 points 1 year ago* (last edited 1 year ago) (1 children)

Did a bit more digging through the mailing list (also looking through the links posted on the HN thread), and to me it looks a bit weird.

OP came up with an initial patch (Wed, Jun 1, 2022 at 12:36 PM) that wasn't deemed to be good enough to be merged. Maintainer came up with a different patch (Tue, 7 Jun 2022 00:34:56 +1000) saying "but I wanted to fix it differently". OP then posted a reworked patch (Fri Jun 10 17:15:49 AEST 2022) that looks a lot more similar to the maintainer's patch.

The maintainer's patch and OP's reworked patch look quite similar, but from what I can see from the mailing list, the maintainer actually came up with that approach, and OP didn't then credit the maintainer in his reworked patch. @[email protected] can you please clarify, what am I missing?

[–] [email protected] 3 points 1 year ago

Between the initial patch and the maintainer's patch there was a private conversation between me and the maintainer (I don't have access to it because I've used my work email and since then I switched companies). I posted my reworked patch only for visibility, since by then they have accepted the maintainer's patch. But I sent the reworked patch in private to the PowerPC maintainer, before sending it to the powerpc mailing list.

[–] MajorHavoc 17 points 1 year ago* (last edited 1 year ago) (1 children)

I'm surprised there's not more discussion of the ~~git~~ GitHub co-author feature here.

A simple co-author line in the final commit sounds like an appropriate way to use the best final code while also giving due credit.

[–] [email protected] 3 points 1 year ago (1 children)

I believe that is just a GitHub feature. Trailers are not some special field in the commit, just things at the end of the commit message. Sort of like an email signature. (Not a great example, I know.) My point is that the use of trailers will vary from project to project.

[–] MajorHavoc 3 points 1 year ago

Good point!

It looks like GitLab doesn't have Co-Author support yet, yet.

At least - as part of the git history - co-author notes in commits can survive a migration away from GitHub.

It's not clear if the current GitHub implementation will be the long term accepted standard, of course.

[–] [email protected] 9 points 1 year ago (1 children)

I submitted a pull request to Vim and the maintainer thanked me, tweaked it, and my name is not in the commit history because of it. I use to be bitter about it, if only a little. So I know how you feel but I put significantly less time into mine so the magnitude of the feeling is much smaller for me. My name is still there in the GitHub pull request though. Just like your name is still in the commit itself and in the mailing list. Try not to fret too much about the specifics of your name being in the author field. It's really just a technical detail.

It sucks but it is what it is. I don't think treating this like you were slighted is appropriate.

[–] xanu 5 points 1 year ago (1 children)

To be fair, wasn't the vim codebase entirely committed by a single person? He did that with everyone and, while I don't agree with that at all, it reads less like elitism / stolen credit than this particular story.

I may be wrong about that, so feel free to correct me 😊 either way, people should be credited for the work they do! and preferably not in the footnotes of a commit authored by someone else that didn't fix the bug

[–] [email protected] 4 points 1 year ago (1 children)

No, you're correct, it definitely was all (or mostly) committed by Bram. That's part of why I was saying it didn't feel as bad but I didn't think it was relevant to mention. But yes, you're definitely correct.

[–] [email protected] 1 points 1 year ago (1 children)

Git has different fields for author and committer - and modifying a commit should leave the author field intact, and just change the committer field. It is possible that github does something weird (I'm usually not doing much in their web UI) - but coming from working with git directly I'd expect you to be present in the author field.

[–] [email protected] 2 points 1 year ago (1 children)

I didn't write the content of that commit. Author and committer being different is for things like rebasing commits written by other people.

[–] [email protected] 2 points 1 year ago (1 children)

You mentioned a pull request, and that it got edited - which in my workflow is pulling the commit and amending it.

[–] [email protected] 1 points 1 year ago

Okay, I probably misspoke about the technicalities. I opened a pull request, then they made a new commit and closed the PR (like it was an issue) and didn't touch the commit. Hope that makes sense now.

[–] [email protected] 2 points 1 year ago (1 children)

I feel like the takeaway here should be that the experience of contributing to the project was not great. That's it.

There is value in complaining, even if you don't have solutions. You can only make people aware of the consequences that their actions have caused by telling them.

I don't even take issue with him posting this publicly to his own Dev blog. I think its a perfectly fine piece of on-the-job experience OP has shared. Maybe in a few years he would like to come back to it with a different perspective.

I do however think that OP posting this here (and apparently other boards) is a choice I don't agree with. I think OP would have been better served writing a response email to the maintainer, explaining how they felt. Beyond that, what can one do?

[–] [email protected] 6 points 1 year ago

I feel like the takeaway here should be that the experience of contributing to the project was not great. That’s it.

I don't think this is a valid summary. I think the first-time contributor had a rather self-centered approach to the bugfix, and turned a run-of-the-mill bugfix in a huge drama-riddled personal attack on a FLOSS maintainer for no good reason.

Only in the OP's one-sided and vindictive account of the whole ordeal does the project maintainer have questionable behavior. The central theme of the one-sided account is also absurd, as if a kernel maintainer needs to wait around for first-timers to contribute a patch for them to "rob" it to have a commit to show for.

The whole soap opera is so regrettable, and the OP comes out not looking good at all.