

My GitHub pull request was not merged and closed - thawt
https://github.com/wolfeidau/ofuda/pull/5
I found a node.js hmac lib on github.  Yay.<p>I noticed an open issue requesting express/connect support.  I was using express.  Perfect, I'll add it.  Yay.<p>Submitted a pull request. Yay.<p>My PR was closed without merge.  =[<p>The reason included this perl of wisdom along with some others:<p>"Don't leave commented code in a pull request it looks untidy and rushed"<p>Am I crazy?
======
dalke
So? This happens all the time.

"I feel like I have to defend my honor here."

That's a source of the problem. There's no attack, nor nothing to defend. I
see a difference in coding styles. I see that cmawhorter react in a way which
does nothing to help the process.

If I understand, one of the points of the exchange is that cmawhorter has a
peeve against the use of 's === t' while wolfeidau prefers that style. Douglas
Crockford, of course, suggests using '===', and it's perfectly acceptable for
wolfeidau to require that of any contributed code. That cmawhorter reacts so
strongly to others who don't share this peeve disagree suggests that
cmawhorter may not be an appropriate collaborator for wolfeidau.

"working with me into making this something you find acceptable"

It is not a reasonable to assume that others are obliged to work with a pull
request submitter.

~~~
thawt
The defense of honor was a kindof tongue-in-cheek response.

The reason I posted this here is that I think it speaks more to a systemic
problem with open source.

The great thing about OSS is that it's always possible to fork, but then
you're fragmenting communities and investments in time.

I really wish github (and OSS in general) was more democratized.

Every popular repo out there has half a dozen PRs sitting open -- some of them
good, a lot of them bad -- but code rot is alive and well in the node.js
community and there is no reason for it.

> It is not a reasonable to assume that others are > obliged to work with a
> pull request submitter.

I do disagree with this. If you're going to release software publicly, then
it's your responsibility to make it the best software it can be, and if you
can't, you need to hand over the reins.

~~~
dalke
Your statement certainly did not come across as tongue-in-cheek. Gerald
Weinberg developed the concept of "egoless programming" as a counter to people
who feel that criticism of their work corresponds to criticism of them
personally. I suggest you read <http://c2.com/cgi/wiki?EgolessProgramming> .

I can't even begin to figure out what a "more democratized" system would look
like, and you didn't describe how the principles of democracy apply here. It
sounds like you have confused a mandatory consensus requirement with
democracy. Democracy does not require unanimous consensus.

Your one and only right, in the context of free software, is that you can take
on the code development and yourself. Github even gives you the ability to do
all of that yourself. You don't need someone to "hand over the reigns", you
can take it up yourself. If you do a better job of development, maintenance,
community relations, and so on, than the original group then go for it. No one
is stopping you.

You worry about fragmentation. That's a false worry. Most programers fork,
make a couple of changes, and stop. Because continued development of a given
project on ones own is hard. But if you want to take on the challenge, again,
go for it. Don't complain about how people have offended your honor.

As to your last statement. You are just wrong. I have no obligations. Zero.
None. Nada. To insist on such shows a complete lack of understanding of the
reasons for why some people release software. To insist that an obligation
exists will lead to problems.

I've gone on holiday, or otherwise not worked on a project for several months.
Do I have an obligation to check for pull requests during that time? What if I
take a year off? When does the obligation kick in? If I switch carriers, go to
jail, or die, am I obligated to "hand over the reigns"?

The answer to all of these is "no." Now, if I wanted to do community building,
then that's a different question and a different answer.

I've released software which was a week-long experimental project. I used it
to explore an idea then released it so that others might use it as a stepping
stone. I have no obligation to make that be the "best software" it can be,
especially if the best solution is to write a totally new system using the
lessons learned.

How do you even know what "best" will be? Developing software is a journey,
and as you saw, wolfeidau even said that your changes "don't match what I want
to do with this module." What you've said is that you want the best Caribbean
holiday that can be, while wolfeidau wants to go to the South Pacific. You
can't both have the same best holiday with the same boat at the same time.

