12

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).

6
  • 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, 2010 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, 2010 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. Nov 19, 2010 at 16:58
  • Macneil, that should be added as an answer, not a comment. Nov 19, 2010 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, 2010 at 20:22

3 Answers 3

11

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"

1
  • "intellectual property we'd be open sourcing wasn't a core business asset (didn't differentiate us)"...and that's the key criteria that can help you determine whether or not it is good fit for open-source. Dec 1, 2014 at 8:33
2

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.

2
  • 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. Nov 19, 2010 at 19:02
  • But would you maintain it then?
    – user1249
    Nov 19, 2010 at 19:32
1

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.

3
  • 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. Nov 19, 2010 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, 2010 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. Dec 3, 2010 at 15:09

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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