Sunday, January 27, 2013

In defense of Open Source

A lot of debate has been done about Open Source. And it is still matter of discussion. So, probably I will not say anything new in this post. But I'm going to describe our experience. I expect to make Open Source to gain followers.

I think that there are many reasons for realeasing your framework/library as Open Source. Some of them are purely idealistic/egocentric:
  • It is good to give back something to the community (most of people uses Open Source!).
  • It is cool to share something that you created !!! Specially when people likes the work that you have done.

Other are related to development itself:
  • The code becomes better, since it is tested and revised by more people. It should be more solid and have a better design.
  • Since releases are not commercial deadline driven, the product is released when it is ready.
  • If your framework is widely used, you can easily find programmers who already know it. 

But there are also some commercial reasons:
  • You can improve the company image (it is like free advertising).
  • You can sell services over your framework (an area where you have expertise!).
  • You can get new customers (due to the interest in using the framework).
  • Customers don't want get locked with a closed source solution.
  • Nobody is going to pay for your framework anyway!!! Customers don't want pay for frameworks, there is a lot of Open Source out there.

Despite the commercial reasons, many companies are reluctant to open source their code.

At Oxen we support Open Source by sharing our frameworks and libraries (check the Open Source Projects links on this blog) as Apache 2.0 (we don't mind if somebody makes money with them, go ahead). We started sharing small libraries, but at some point, we developed a full server side development framework, Nibiru. We doubt about releasing it and we asked many people for an opinion. Some were in favor, but many colleagues who owned a company recommended us not releasing it.

They talked about the "competitive advantage" of having the framework closed. I didn't get convinced with that argument (which could be such competitive advantage? developing a solution in less time?) and released it. In fact, we also released NibiruMobile.

The only weak point in my argumentation was that it was pure theory. But now, we have a concrete case. A company from China (Jinan Roof Technology) stared using it and we're working together in order to run Nibiru on Karaf container using OSGi Blueprint (the work is almost finished at the moment of writing this post).

Our company doesn't have the commercial structure required for selling projects in such distant country.  Until this project, we were limited to near markets, like USA, Mexico, Brazil and, however, Argentina.

So, I just want to say: thanks, Open Source !!!



  1. Congratulations! Being myself a free software supporter, over the years I've read many times, and in different articles, these same advantages about releasing software using free/Open Source licenses, not only for ideological reasons, but also thinking from a business perspective.
    However, it's great to read an actual success story, and better if it comes from "offshore guys"!

    Great Job, keep it like that.

    1. jajajaja, Thanks! (from the "offshore guys")

  2. Lautaro,

    Very good article, as usual.

  3. Is nice read this kind of Article, not only for the content itself, but also motivate people to follow this path against the current belief!!!

  4. Great and concise article, both inspiring for the open source community and thoughtful for those who are reluctant or reject the idea. Time will tell us which is the best approach but I think the one that can balance good business, growth, interest for sharing and personal reward will get the most benefit.

    Congratulations for the achievement and keep on posting !

  5. I believe that having a closed framework is a competitive disadvantage, except you have done awesome projects with it and already have gained world wide acceptance by some spectacular feature no other framework has.
    You have to be quite nuts to buy a product that relays on a closed framework except of course it matches the stated above.
    Anyway what I really pisses me off are those who take another framework extends it in some way that makes the original framework loose it's flexibility and attaches to it a "cool" name then flood it with 3rd party libraries no one ever requested and tries to sell that framework to clients as an advantage.


    congratulations for your framework and the oriental brand new client!

  6. I must say it takes lot of guts for you have posted about in here. a really great company Cooperative Computing.