5 ms·
One the messages told me to go lobby NFS vendors. Many others were as you note bikeshedding the commit. Only one, if I recall, questioned why it was a controv
by georgebarnett 8y ago
One the messages told me to go lobby NFS vendors.
Many others were as you note bikeshedding the commit.
Only one, if I recall, questioned why it was a controversial patch at all.
If you check the patch that was committed eventually, IIRC it’s identical to what I proposed.
As I said, I don’t look back particularly favourably on my interactions with the community.
- pgaddict 8y agoWhich of the messages on the thread do you consider as bikeshedding? I personally don't see any - that's not to say I agree with everything said on the thread, but overall it seems like a reasonable discussion. IMHO it's a bit strange to assume everyone will agree with your patch from the very beginning. People may lack proper understanding of the issue, or they may see it from a different angle, and so on. Convincing others that your solution is the right one is an important part of getting patch done. I don't see anything wrong with that.
- javajosh 8y agoLooking at your submission, it was very good: a clean way to reproduce, reference to the specification that tells users of a syscall how to use it. I'm perplexed that you got so much pushback on this when it seemed pretty straight-forward. I'd guess that this was your first patch to postgres and the default reaction is to be defensive and decline the patch. Thinking about the social structure for a minute, I honestly think you might have done better to leave out some of the content of your patch submission, let people push back on the more obvious stuff, and have ready answers. There's a phenomena where curators feel they must push back, and they feel weird when there's nothing to criticize - you can get around this by giving them something to criticize, with a ready-at-hand response! Sorry this happened.
- noir_lord 8y agoI know that as ‘Take out the duck’. http://mamchenkov.net/wordpress/2012/07/23/a-duck/ http://mamchenkov.net/wordpress/2012/07/23/a-duck/
- sam_goody 8y agoSomewhat OT, but that is generally referred to as a duck[1], and it _definitely_ has its uses. > The artist working on the queen animations for Battle Chess... did the animations for the queen the way that he felt would be best, with one addition: he gave the queen a pet duck. He animated this duck through all of the queen’s animations, had it flapping around the corners. He also took great care to make sure that it never overlapped the “actual” animation. > As expected, he was asked to remove the duck, which he did, without altering the real Queen animation. [1]: https://softwareengineering.stackexchange.com/a/122148 https://softwareengineering.stackexchange.com/a/122148
- javajosh 8y agoHaha cool, I've been around a while but I've never heard of this. I wonder if this concept can be combined with confessional debugging, aka rubber-ducking? :)
- acqq 8y agoIt’s sill wrong to suggest to every contributor to put “the duck” in his contribution, when the fact is then that it’s the people who handle the contribution who are the problem.
- stoolpigeon 8y agoI had an American friend who lived in Germany for many years who had a similar approach to dealing with immigration officials. He learned quickly that no matter how thorough he was when applying to extend his stay, his packet would always be "missing" some form. So he started leaving a few forms out of his packet, that way what they asked for was something he already had.
- jancsika 8y agoOoh, you know it seems like you could use that method to misdirect the official from noticing a forged document. In fact in open source I can imagine a strategy to get an underhanded bug accepted by pairing it with an obvious, trivial bug. The obvious one gets caught and submitter apologizes and resubmits. Then the dev merges the underhanded bug, comforted that a fairly common iteration cycle has been completed with a newbie.
- georgebarnett 8y agoThis is good advice and something I’ve learned over the past years. One of the interesting points I’ve relfected on over time has been how _my_ issue was solved with the patch, however for others it wasn’t. When I think about this I of course recognise that Postgres owes me nothing, however we both had similarly aligned objectives (fix bugs, do good), but because of our inability to successfully communicate, we didn’t get to a productive outcome and so a fixable bug sat in the release for some time. I do wonder how we go about improving that kind of circumstance.
- thaumasiotes 8y agoIt's hard. I'm pretty sure that in the general case, the problem isn't solvable. In Morgan LLywelyn's Finn Mac Cool ( https://www.amazon.com/dp/0312877374/ https://www.amazon.com/dp/0312877374/ ), Finn is a man with no family from an inferior tribe, and he's a troop leader in a band of scummy soldiers of no social standing whatever. On the other hand, his potential is obvious -- he will eventually work his way up to self-made king. While stationed in the capital, he falls in love with a respectable, middle-class blacksmith's daughter. She won't give him the time of day because of the difference in social class, but over time, as his respectability steadily climbs, she warms up to him. They have a failed sexual encounter, and everything falls apart. She feels too awkward to approach him anymore. He believes (incorrectly) that they've become married at a level inappropriate to her class, and eventually comes to her home to propose a much higher grade of marriage. But she doesn't know how to accept without -- in her own eyes -- suffering a loss of dignity. A painful scene follows in which it's obvious that he wants to marry her, she wants to marry him, her mother wants her to marry him, but somehow none of them can see how to actually get to that point. People really don't go for innovation in social protocols, even when the protocols they know are failing them.
- acqq 8y ago> you can get around this by giving them something to criticize, with a ready-at-hand response! So you suggest that the patches should be obviously “worse” in order to have better chance to be accepted?
- guenthert 8y agoHe is (so much was plain). If those sub-optimal patches are accepted against expectations, a follow up patch with improvements can, in due time, be submitted.
- jeffdavis 8y agoI feel this is a little unfair to the community and I encourage others to read the thread before forming a negative opinion. It seems like a fairly good example of an engineering discussion. Even if the patch is correct and conforming and solves a problem, that doesn't mean there is no use for further discussion, and the surrounding discussion does seem to have merit. Things like: * Are there closely-related problems still left unsolved (e.g. retrying reads)? * Is something not configured according to best practices known by other community members? * Expressing an opinion that the use case is dangerous, so that nobody (including other people reading the thread in the future) will take it as an endorsement for running postgres on NFS. * Some legitimate-sounding questions about the specifics of the patch (around zero returns, what writeAll handles versus its callers, etc.). * At least one person agreed with you that it's a reasonable thing to do. I don't think HN is really the right place to assess the technical merits of a postgres patch, but the discussion itself seems well within reasonable bounds.