2 Apr 2012 ryuslash   » (Journeyer)

So lately I've actually been able to contribute tiny bits to some projects here and there.

It's difficult, every time you send something to someone to review, well, they review it, and might find out that it's crap. Luckily, so far, that hasn't happened to me.

It's also not easy because everyone has a different sense of style, or a different idea of where to go with a project. Of course, with that second one it's easy to fork any free or open source project and take it in your own direction, but when you send something to someone and they just don't like the look of it (though the code is valid) things get weird.

A week or so ago I sent someone a pull request on github (yes, sadly I'm using this again now) and it fixed a problem. The change didn't come from me, I just took over maintainership of the package for it in the Arch User Repository and felt that the right thing to do was pass along what a user of the package told me.

It was just one line, it was a single extra #include line in a single file, and me being forever in doubt I took a few seconds (perhaps even minutes) to think about where the author would like this one extra line to be.

It was a C++ file, so there were mostly .h-less includes, and there was #include <errno.h> in its own paragraph. So I thought stick them together, that probably looks best.

Turns out the author disagreed, haha. I sent him a pull request with the one line added and he threw it away and added it where he liked it to be. As he should have, of course, since it's useless to take my commit, create a merge commit and then create another commit to move that line up.

The whole thing struck me as funny, though. Personally, I probably couldn't throw someone elses pull request away, I'd be afraid they would dislike me for it. Perhaps that also has something to do with only having had two contributions to any of my projects so far, so perhaps I'm too worried about losing what little I have.

I can't imagine how really big projects do this, it must get messy, even with well defined coding standards. I don't think it would be fun to have to decline a contribution that does some really cool things just because it looks bad.

Latest blog entries     Older blog entries

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!