On Wednesday 18. September 2013 15.23.56 David Deutsch wrote:
Credibility? Eternalize? What? Look - I'm just a FOSS coder and I don't care how "professional" or whatever I come across. What I do care about is an /honest/ track record that can be seen in my github profile, amongst other things. I would like to help out in other projects as well, eventually, and I want to be able to offer an honest, cohesive picture of how past efforts went about. That's why I showed you what I did for RedBean
- to give you a direct view into how it went down in another example. If I
propose help to other projects, I don't think they would care much about how "professional" I am, but they would very much appreciate an honest picture of the process.
I'm mostly lurking on this list at the moment, having made an enquiry a few months ago about something that I've not been able to prioritise (more below), but this thread is too painful to read without commenting.
In principle I also am against the excessive rebase culture that a lot of Free Software projects employ. The joke about this culture is that in its most extreme form one wouldn't bother having more than a single commit in a repository, and that commit would be accompanied by a message reading "Perfection!", "All done!", "Project complete!" or "Nailed it!"
That you also see projects *making* version control software insisting on rebasing or collapsing changesets, even though rebasing may be frowned upon and collapsing changesets may involve advanced functionality, could be considered akin to hypocrisy: people making tools to manage the information in software development insisting that such information be thrown away. (Please note that I'm not saying anything about Roundcube's commit or contributions policy here.)
However, one should respect that projects do have commit policies for good reasons. Some of these policies are infuriatingly strict: the Mercurial project, for example, generally wants a single commit for enhancements, bug fixes and new features (even though no-one in their right mind would do the work in a single commit "for real"), and the commit message must adhere to a specific format; all of this is on top of other policies one may or may not like (line lengths, discouragement of comments, obligatory tests, discouragement of new tests, obligatory documentation, and so on). It can take several iterations to get something that the core developers will accept.
On the one hand, it can seem like people are just making life hard for casual contributors. I am aware of one project controlled by a large corporation who apparently makes contributing very much like a "ring of fire" experience perhaps even more extreme than what I have described above. When people who are paid to work on a project make more work for volunteers, one can legitimately question their motives.
On the other hand, it is understandable that core developers do not wish to readily take on more work that other people have thrown over the wall, giving those core developers code to maintain forever while the contributors enjoy the benefits of their work in the resulting product, with the contributed code magically bug-fixed and updated for any and all of the architectural changes and transformations that might come about.
As others have pointed out, your work will always be available in the form in which you made it available if you continue to publish your repositories/branches. Those who you wish to convince about the substance of your work will still be able to see it and appreciate your efforts. But you should also appreciate that those who have to maintain your contributions should also get to choose how they can work with those contributions. Denying those people any choice sends a signal that may be interpreted negatively by others, regardless of whether words like "professional" are in their vocabulary.
I think it is great to see your enthusiasm to improve Roundcube, and being much more of a Python developer than someone who uses PHP, your work appears to be beneficial to people like me. Please don't squander this opportunity to see good work done by attaching a price to your contributions that may end up with only you bearing the cost.
Paul
P.S. My original business on this list was to inquire about accessibility support in Roundcube. If anyone has any thoughts on the topic (whether Roundcube is perceived to be sufficient/deficient, whether work could be done), I'd be happy to revive that thread.