« Your company has a knowledge debt problem | Main | News Feed in 38 lines of code using Cascalog »

Why your company should have a very permissive open source policy

Having a permissive open source policy is important if a company wants to recruit truly stellar programmers. Or put another way: great programmers will be less inclined to work for you if you have a restrictive open source policy because being involved in open source projects is one of the best ways for a programmer to increase his market value.

Traditional methods for measuring programming ability are ineffective

The job market for programmers, especially the top programmers, is notoriously inefficient. This inefficiency is due to employers lacking good methods for evaluating programmers. The standard techniques used to evaluate programmers -- resumes, on-the-spot coding questions, take-home projects -- are at best crude approximations of a programmer's ability, and none of them will be indicators of the truly visionary people. Sure, there are other indicators like being involved in successful companies or having past impressive titles, but those are still indirect indicators of programming ability.

If you're a programmer, this difficulty in measuring your skill means its really difficult to make a potential employer's perceived value of you match your actual value. Top programmers aren't differentiated from the next tier of programmers and get badly mispriced in the market. Top programmers need better mechanisms to communicate their value so that they can be priced more fairly in the market.

Open source makes the market for an individual programmer more efficient

Open source is an equalizer. An open source project shows how a programmer goes about solving real problems that didn't have serviceable solutions yet. An open source project has much greater scope than anything that can be given to a programmer in a job interview and shows the kind of quality work a programmer produces from design to implementation to testing. If you're an awesome programmer, this means you can significantly reduce that gap between perceived and actual value and be priced more fairly in the job market.

The more mispriced a programmer, the more that programmer should desire being involved in open source to normalize his perceived value. The most mispriced programmers are those at the high end, the so called "rock stars" and "ninjas", so these programmers have the most to gain from open source.

A restrictive open source policy prevents stellar programmers from raising their market value

Since the best programmers have a strong incentive to build their open source portfolio, they should avoid working at companies with restrictive open source policies and prefer to work at companies with permissive open source policies. This means that companies with restrictive open source policies are putting up a barrier to recruiting stellar engineers.

Companies may dislike open sourcing internal projects for a variety of reasons. They may feel like they are giving code away to potential competitors. They may not like the fact that they're making their own employees more expensive by allowing them to normalize their values in the market. They may feel that open source distracts the team from building out the products of the business. These are the tradeoffs in having a permissive open source policy and are tradeoffs that must be made to have access to "rock stars".

Companies receive other benefits from open sourcing projects. Open source helps give the company a strong technology brand in the engineering community. Additionally, open source can give the company access to speaking engagements at user groups and conferences which is a great way to get the company's name out there and source candidates. Finally, there's the obvious benefit that the company can receive "free work" from outside contributions to their open source projects.

This knowledge isn't universal yet

A lot of programmers don't yet realize the value of having an open source portfolio, and there are certainly great programmers working for companies with restrictive open source policies. However, as more and more programmers realize how open source can increase their value, more and more companies will use a permissive open source policy as a recruitment tool. For example, my company BackType has a very permissive open source policy, and we're hiring.

Of course, it takes more than having a permissive open source policy to recruit the superstar programmers. It's just that not having a permissive policy will eventually become a barrier to recruiting those programmers at all.

You should follow me on Twitter here.

Reader Comments (6)

Agree with dasil003. Open source increases quality not only of the incoming candidate but also of the existing candidates, and their work. Contributing to a collective effort yields more than an individual effort.

May 27, 2010 | Unregistered CommenterRobert Hawkins

I've hired a lot of programmers. As much as I like the premise of the article, I have never once considered rooting through the check-in history of an open-source project to try and determine if a potential employee is a fabulous programmer. That would be far, far more inefficient than the technical tests people usually use.

May 28, 2010 | Unregistered CommenterCliff

I see your point, but not every open source project is a huge many person effort. If someone has an open source project that he's built by himself or with a small number of people, then that's much more reasonable to evaluate. Most of the projects on Github are like that.

May 28, 2010 | Unregistered Commenternathanmarz

No pain no gain... typical technical tests are very inaccurate.

But more to the point: instead of checking actual source code, I would rather consider evaluating quality of open source projects rock stars have contributed to (or started); and spot-checking discussions on mailing lists.
Or, spot-checking source code -- checking individual check-ins is indeed pretty stupid way to go about things, given how hard it is to determine context from snippets.

So I agree in that combing through check-ins makes little sense. But I don't think that would be one of first things I would consider when evaluating a candidate from open source perspective.

May 28, 2010 | Unregistered CommenterOpen Source Guy

The catchy website with the interesting posts. You give the very useful information that many people don’t know before. most of your contents are make me have more knowledge. it is very different. I was impressed with your blog. Never be bored to visit your blog again.

January 21, 2011 | Unregistered Commenterhoriafrorriex

I genuinely like the style of the site. I had a peek at your source code, hope you don’t mind, to check what theme you are utilizing. Is it it a no cost theme or do I've to purchase it?

January 25, 2011 | Unregistered Commenterhoriafrorriex

PostPost a New Comment

Enter your information below to add a new comment.
Author Email (optional):
Author URL (optional):
Some HTML allowed: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <code> <em> <i> <strike> <strong>