Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

I'm trying to convince the company I work for to contribute towards open-source software, specifically building a library/component for ASP.NET web apps. We have an 'Innovation Day' coming up where we can work on our own personal pet projects at work, similar to Google's one day a week policy, except ours is once a month :-), and I have an idea that I want to open-source.

Other companies do this, eg. Headspring Systems (http://automapper.codeplex.com - see banner at top).

What do I tell them? What benefits can I convey to them that would be beneficial to the company? I've already mentioned possible exposure for our company and reputation etc. as well as attracting top software developers when we next go on a hiring spree. But what other arguments could I make?

Update: The company I work for is a software company that mainly builds web applications in ASP.NET and the MS Stack. Our clients are mainly the NHS (public health sector of the UK).

share|improve this question
1  
Find an existing open-source project that you modify. Then, what you release has to be open source. There's probably something already there that can be useful, but just needs tweaking to fit your company's needs. –  Macneil Nov 19 '10 at 16:39
1  
Is your company a technology company - e.g. do you develop and sell technology? I think its easier to make an argument in a tech company because you have a profit motive to advance specific platforms; for example Engine Yard hired the JRuby developers to advance the Ruby ecosystem in general because that will bring them more business. If your company is an end-user of tech I think you've covered the best arguments. –  Jeremy Nov 19 '10 at 16:51
1  
@Jeremy: Yes, sorry, I should probably have mentioned we're a software company that mainly builds web applications in ASP.NET and on the Microsoft stack. –  Sunday Ironfoot Nov 19 '10 at 16:58
    
Macneil, that should be added as an answer, not a comment. –  Peter Boughton Nov 19 '10 at 17:11
    
@Peter: Thanks, although I have doubts that it's actually an argument to make to a company. More just special circumstances. In academia we often build off open source so that we can increase impact and prevent various administration entities from taking control of our code. I know some professors who have patents on their work even though they protested! –  Macneil Nov 19 '10 at 20:22

3 Answers 3

up vote 6 down vote accepted

You have to make a business case. I've done this before by making the case that the intellectual property we'd be open sourcing wasn't a core business asset (didn't differentiate us), but by releasing the code we'd be creating a marketing channel to the users of that open source code, who just also happen to be our target audience.

You can use this theory: "Commoditize Your Complements"

share|improve this answer

Well one of the biggest arguments for open source is that others can contribute to it, idea being that one programmer can't possibly hope to spot and fix 1000 bugs in his program but 1000 programmers can. So in addition to all the benefits you've listed, it's clearly the choice for developing bootstrap software which helps your own business in some fashion.

It also puts you in a position of authority. I might be stretching it a bit, but if your idea is innovative enough, you could create a new standard by which others must meet. It means anyone who wants to do anything with your software for commercial use has to ask you first, meaning you could throw in a couple curve balls which say that while the code is open, usage of your standard for commercial use requires a small contribution which is not at all unreasonable, so it's got potential in later stages as well.

share|improve this answer
    
Restricting commercial use of code is incompatible with the principles of both the Open Source Initiative and the Free Software Foundation. In most cases, I'd think that would cause more problems with the community than it would be worth. If you really want a thousand programmers looking at the code, use an OSI-certified license. –  David Thornley Nov 19 '10 at 17:57
    
You sure about that? I had understood that the Open Source license allows anyone to see the code freely, but it says nothing about products produced from such code. –  Neil Nov 24 '10 at 15:30
    
I am completely sure about that, and mentioned the Open Source Initiative and their licenses to avoid the typical confusion. "Open Source" is an ambiguous phrase. One meaning is that you can get the source, regardless of what you can do with it. One is being licensed with OSI-certified licenses, and that is what is typically meant if the phrase is capitalized. If you want community involvement, go with the OSI definition. Far fewer people will be interested in helping with anything not under an OSI-type license. –  David Thornley Dec 3 '10 at 15:09

Open Source a component makes sense if - and only if - you nurture the project and build a community. Accept bug reports, fix bugs, and make new releases on a regular basis. If you do that, like Eclipse and Mozilla have done, you can harvest the benefits.

If you don't do that, the experienced people can smell a mile away that you just dumped off the code base hoping others would do the work for you.

share|improve this answer
    
We wouldn't be expecting other people to do all of the work. We would probably develop the component fully, then open-source it, allowing others to benefit from it, or develop it further if they wish. –  Sunday Ironfoot Nov 19 '10 at 19:02
    
But would you maintain it then? –  user1249 Nov 19 '10 at 19:32

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.