Random Thoughts

I once talked with my friend, who worked in the field of
virtualisation but in a proprietary software company, about work
practice and code quality. His conclusion was that open source
solution was not as well tested and organised as the proprietary one.

I actually agreed with him, because open source software seemed to be
generally lacking investment. It's next to impossible for our project
to have the equivalent amount of money invested in proprietary
product. While many companies use open source projects for their
products, they either don't have those projects being critical part of
the products or have enough talents to essentially maintain their own
fork if upstream projects go unmaintained.

Why should companies invest in upstream, if at all? Surely they don't
want to easily give away their technology; on the other hand, they
want useful stuff from upstream (contributed by other
entities). Basically the incentive is to share as little as possible
but gain as much as possible. The only concern is that their own fork
might divert from upstream which then makes pulling in changes
impossible. This is not insurmountable provided they have enough money
to pay for the on going maintainence burden.

So I think open source software development model would only work if
those companies who contribute to open source software projects are
not directly making money off the software itself. Open source
software can be a core part of their infrastructure (service
provider), can be a basis of their offering (software company * ), can be
a booster for selling their core product (hardware company).

Needless to say, open source software is important. It's utility
now. As an individual who is enthusiastic in developing open source
software, having relevant experience in the field should be enough to
get myself a job. But then I am a bit pessimistic for open source
software based business model. I surely don't want to start another
utility company now.

Note the line for software companies is a bit blurred -- one could
argue that they are directly making money off open source software,
but I disagree -- because the software is freely (as in beer)
distributed, they can't or don't charge money for it, instead, they
sell support contract.