8

I work for a company that owns several closed source software. One of our software is used to service clients and generate income so it has commercial value to us (and it pays my salary).

I've talked about open sourcing the code, but the option of open sourcing under something like the MIT or GPL or any other open source license that allows competitors to install it and offer it to our clients for cheaper has met clear resistance.

What about showing the code but not under an open source license?

The arguments I've been getting against this is that this move will confuse clients and developers and will get us more bad publicity than any good thing. The developer of PAINT.NET used to release his code and got a lot of flack when he started reminding competitors that the code is only for educational purposes and isn't really open source.

I've also been told that open sourcing for the sake of open sourcing doesn't make sense, bla bla bla, and that unless I have a plan for how that's going to bring more revenue, it's not for us. Well, honestly I don't have a plan, but I thought why not try. Of course I can't say if this will help us or hurt us. I don't want to take the responsibility for a move that might hurt a company that's doing well and get people laid off.

As I said, an open source license does not look like an option, so it's between closed source or showing the code but still under a normal copyright license. But as I said there's resistance to showing the code because of the worry that competitors will use our code to create their own.

Does anyone know of any facts that can help with this decision, whether in favor or against showing the code.

7
  • 3
    What is the reason for you wanting to open source the code?
    – user1249
    Oct 25, 2010 at 6:37
  • Obviously I'm hoping it will benefit the company somehow, but as I said, I don't know yet exactly how.
    – samiii
    Oct 25, 2010 at 6:45
  • You might want to take a look at this related post, "Why do programmers write apps and then make them free?" at programmers.stackexchange.com/questions/3233/… Oct 25, 2010 at 6:45
  • 6
    It's a bad idea to do drastic things for vague reasons, anyway. Oct 25, 2010 at 17:18
  • 1
    @JoeD: that sounds like a comment with little or no evidence. Which companies DON'T use open source these days? Google and Apple certainly do - their OSs are based on it. Oracle? MySQL. OpenOffice. Adobe? yep. SAP? check. Symantec? sure. IBM and HP have big open source programs. Nokia owns Qt. Even Microsoft uses it now and then. Which "most companies" are you talking about?
    – naught101
    Jun 13, 2012 at 4:05

4 Answers 4

9

In a comment you mention when asked for a reason to open source you replied "Obviously I'm hoping it will benefit the company somehow, but as I said, I don't know yet exactly how."

That's not a good enough reason. You absolutely must know how it benefits the company. It's not a try it and see how it turns out kind of decision.

Like @Vatine said there are many companies that will license the source in addition to the software, sometimes for an additional price. It gives a little peace of mind in that if there's a critical bug affects their customer they can make a hot-fix while they wait for your company to fix it.

The other big benefit of open-source is the community. As @Konrad says, if the source is available but not open it greatly diminishes this effect. Also a community doesn't just establish itself, it needs promoting which costs time and/or money.

Also think about what actually makes the money for your company. Is it the software itself, or is it something external and the software is merely a facilitator? Google makes most of their money through advertisement. The fact they open source most of their software and is a huge proponent of open source isn't negatively impacted by having the source out there. It's the user-base that is their biggest asset, not the software. Open-sourcing helps build that user-base and build good-will.

Does your company have a model that would benefit from a large non-paying user-base? By non-paying I mean paying for the software. If you're selling the software directly you can more or less forget it. If you're providing support or consultation services then you can use open source to give you an edge over the competition. Open sourcing then can help build brand recognition. Notice I said "can" and not "will". It still needs to be marketed and promoted properly otherwise it's useless. It's all about building a community.

In addition to the above, it's also a very personal decision for the company. Is the personality of the company an open culture? If it's not fully embraced by the company, especially at the head, it's not going to work. Once it goes open source you can't just close it. You can close future modifications, but what's out there will be out there, you can't take it back, so it's not a willy-nilly decision. You absolutely must know how and why it will benefit your company specifically.

6

The primary question here isn’t: what do you get from showing the source – it’s what do others get from being shown the source. If you can’t answer this question, then nobody will bother looking at it, and that in turn will mean you and your company don’t benefit.

Now, if the source isn’t Open Source then the usefulness of the code to others is drastically reduced. I can imagine only two scenarios which make it worthwhile publishing the code:

  1. It’s a showcase of good architecture and design. In that case, you can annotate it and publish it as an educational aid.
  2. It uses a hitherto unknown pattern or algorithm that you might want to publish, and your project serves as a demonstration.
1
  • I'd also like to suggest 3. Providing the source of public libraries and APIs so that third-party developers can debug complex integration problems. For example Microsoft provide the .Net framework source for this purpose, with a restrictive license which prohibits reusing or even recompiling the code.
    – MarkJ
    Aug 13, 2013 at 11:21
2

I have certainly seen some companies (with some classes of software) provide the source code to any paying customer, either for an extra licensing fee or as part and parcel of a normal installation. This, however, tends to be niche markets, with few established vendors and clients with demands that can more easily be met by letting them look at the source.

But, that would depend on what you're looking at making happen by allowing people to look at your source code. Unless you have a plan that's a bit more fleshed out than "let's try it and see what happens", I would probably have to argue against it.

1

Its up to the employer's will whether to open-source their code. Even thought you have written that code its not your code. Its your employer's. You need abide by their terms and have good ethics. If open-sourcing the code reduces the revenue then don't open-source it. I'm not against open-source movement.

Your Answer

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