Submit a patch

We love to complain, and Twitter has just made is so much easier. By merely including a handle or keyword of some company or product, we can attract the attention of those we’re moaning about and have them run to try and solve our problem. The speed at which they run is proportionally direct to the number of followers we have or the ‘people we know’ (I have 10 followers but my best friend is a celebrity with 300K followers and RT’s anything I ask him to). Apparently it’s called Social Media Damage Control.

When it comes to software products, we’re quite good at it too. After all, that’s why we pay for software, to have someone to hear our roar on the other end of a phone, a forum or a twitter handle.

But that only applies to commercial software.

When it comes to OSS however, it seems different rules apply. Specially when it's free. Complaining about OSS is often viewed as ungrateful behavior. Numerous times I’ve seen reactions from OSS developers, contributors or merely a simple passer by, responding to a complaint with: submit a patch or well if you can do better, write your own framework. In other words, put up or shut up.

We’re not all Einstein's

It’s not always a patch they are after. At times, when you find a bug, an OSS team member can ask you for a failing unit test. Now granted that we all strive to unit test and promote unit testing, feeling that every developer should know, understand and practice unit testing, the reality of the matter is that it’s not all green pastures out there. For one reason or another, not everyone has that knowledge, the ability or the opportunity to. So often, sending a failing unit test can seem daunting.

Of course, coming back to patches, there’s the added issue of figuring out how to work with the given source control the project is using, get the right unit testing frameworks to run, creating new unit tests, making the necessary changes, submit them and wait for your pull request to be accepted.  And that’s if the project is using a DVCS and you can figure out what Pull, Push, Clone, Fork and Checkout mean. All this doesn’t even take into account that you need to figure out how the actual code-base works. And we all know understanding other people’s code isn’t easy.

For someone that is merely using an OSS project, all this can be overwhelming, not to mention intimidating at times.

Lowering the barrier to adoption

The OSS community often complain how big “Enterprise” and “Microsoft” shops don’t buy into OSS. It seems they go for commercial software in order for their legal departments to have someone to sue in case things go wrong. A little far-fetched of course, but nonetheless something you hear often. These shops also go for commercial software because it provides them with someone to call, someone that won’t tell them to submit a patch or provide a unit test. Someone they can call when they need support and not be judged (or at least not humiliated publicly on a forum or mailing list). Of course, the somewhat sad irony of this is that often, the support provided on OSS projects outdoes commercial products by a long shot, and that’s not to mention OSS projects that offer the possibility of commercial support.

However, we need to look at ourselves and see how much of this low adoption of OSS that we’re so passionately fighting for is our fault. If we expect all the users of our projects to know how to work with our source control or compile the source and deal with dependencies, submit patches or work with our testing framework, all we’re doing is raising the entry barrier to OSS.

Before shouting that I’m stereotyping OSS projects, I’m not. I’m well aware that there are amazing projects out there with beautiful and thoughtful teams and communities around them that make many commercial support alternative envious. However, I’ve seen the submit a patch attitude often enough, over the many years I’ve been involved in OSS to warrant mentioning it.

What about me? What about my time?

Now there is the opposite side to all this. You. The Project Lead. The Core Contributor. The guy that has spent several years of his life giving to the community, contributing to OSS projects, helping others. Why should you, despite having given so much, take more of your time to help others. The minimum, that someone that is using your project (for free might you add), owes you, is a failing unit test. No? Not just some lousy steps to reproduce…

Here’s the thing. If you’re working on OSS, you’re doing it because you are benefiting from it. You benefit because you enjoy it. You benefit because you learn. You benefit because you potentially can rise to fame (albeit a micro-celebrity), and you benefit because it can ultimately provide you with potential consulting and training opportunities.

Nobody owes you anything for working on OSS!

Posted 02-06-2012 5:56 PM by Hadi Hariri
Filed under:



jdn wrote re: Submit a patch
on 02-06-2012 12:20 PM

Well said.

WOMBAT wrote OSS Submitting a Patch
on 02-08-2012 9:57 AM

OSS Submitting a Patch

Mark Rendle wrote re: Submit a patch
on 02-08-2012 11:49 AM

Yeah, I think I agree with you. I am very happy when people submit patches, probably happier than I would be if I expected it. And if people want to add failing tests and send me a pull request, then that's awesome, but it's not that much effort to take a repro code snippet (which everyone provides) and wrap it in a test myself.

bw wrote re: Submit a patch
on 02-09-2012 8:43 AM

Seems like you hit a nerve out there.  It's obvious to me that you're talking about some open source projects and not others...but regardless I believe many of the points you have raised are valid.  

Rob G wrote re: Submit a patch
on 02-09-2012 7:21 PM

I absolutely agree. I'd love to experiment with OSS more, but often get put off by this attitude. I don't fully grok the config/make system yet, so patching or writing unit tests in such circumstances is well beyond me.

I'm willing to learn, but often get put off by the attitude displayed when I innocently ask a question.

xiaoyan wrote re: Submit a patch
on 03-08-2012 1:17 AM

I agree with you, but when we met smooth complain is of no use to face to find a solution.

so be happy,no complain.

xiaoyan wrote re: Submit a patch
on 03-08-2012 1:19 AM

I agree with you, met smooth complain is of no use to face to find a solution.

xiaoyan wrote re: Submit a patch
on 03-08-2012 1:20 AM

iam agree with you ,but sometimes we  met smooth complain is of no use to face to find a solution.

benly wrote re: Submit a patch
on 01-10-2013 10:44 AM
horny wrote re: Submit a patch
on 02-15-2013 2:50 AM
Swidfeer wrote re: Submit a patch
on 03-08-2013 9:43 PM

7JuEPa The latest news and headlines from Yahoo! News. Get breaking news stories and in-depth coverage with videos and photos.

buy social bookmarks wrote re: Submit a patch
on 04-03-2013 5:50 PM

nVyfGY Really informative post.Much thanks again. Keep writing.

bears wrote re: Submit a patch
on 04-05-2013 9:07 PM

I really like and appreciate your blog post.Really looking forward to read more. Great.

Social bookmarks wrote re: Submit a patch
on 04-08-2013 2:24 AM

ktZSii Wow, great article post.Much thanks again. Really Cool.

camera buying guide wrote re: Submit a patch
on 05-14-2013 12:43 PM

233bbO Fantastic blog article. Want more.

super news that are fun wrote re: Submit a patch
on 08-04-2013 11:08 PM

27uGrh I cannot thank you enough for the blog.Really thank you! Great.

pro link building wrote re: Submit a patch
on 09-24-2013 4:07 PM

suV8gk Say, you got a nice blog article.Really looking forward to read more. Really Cool.

check this out wrote re: Submit a patch
on 11-20-2013 7:25 AM

KqYXO1 Very informative article.Much thanks again. Will read on...

stunning seo guys wrote re: Submit a patch
on 02-07-2014 1:39 PM

fOjJni I am so grateful for your blog.Thanks Again. Fantastic.

check it out wrote re: Submit a patch
on 03-22-2014 6:24 AM

IpuLaZ Wow, great blog post. Will read on...

check this out now wrote re: Submit a patch
on 04-06-2014 2:08 PM

MWRD8a Very good article post.Really thank you! Want more.

horny wrote re: Submit a patch
on 04-09-2014 11:47 PM
john wrote re: Submit a patch
on 04-11-2014 3:35 PM

Add a Comment

Remember Me?

About The CodeBetter.Com Blog Network
CodeBetter.Com FAQ

Our Mission

Advertisers should contact Brendan

Google Reader or Homepage Latest Items
Add to My Yahoo!
Subscribe with Bloglines
Subscribe in NewsGator Online
Subscribe with myFeedster
Add to My AOL
Furl Latest Items
Subscribe in Rojo

Member Projects
DimeCasts.Net - Derik Whittaker

Friends of
Red-Gate Tools For SQL and .NET


SmartInspect .NET Logging
NGEDIT: ViEmu and Codekana
NHibernate Profiler
Balsamiq Mockups
JetBrains - ReSharper
Web Sequence Diagrams
Ducksboard<-- NEW Friend!


Site Copyright © 2007 CodeBetter.Com
Content Copyright Individual Bloggers


Community Server (Commercial Edition)