This is incredible news. Congratulations to Igor and the rest of the nginx team.
Does anyone know if the model of open-source with a consulting/premium support company behind it works? I've paid 10gen for MongoDB assistance before, so I know there has to be some legitimacy behind the model. And, you know, MySQL.
It's tough. Linuxcare, where I worked in the dot.com days, wanted to be the support company for open source software, but they got derailed by ... other issues.
Most of the 'successful' open source companies are not just straight up service outfits. Redhat, for instance, has a model where you must buy a subscription, or you don't get support. In fact, you can't even use Redhat if you don't buy a subscription. They do this with some trademark trickery, which creates some of the artificial scarcity that open source software lacks.
People's time, is of course scarce, but services can be difficult to scale, as doing so requires people/management skills much more than actual technical expertise, or some kind of product. Also: to be profitable, a services company should spend as much time as possible billing for services, which may come into conflict with time spent on things like building a product that is then given away.
There are two main models -- we could label them the "Redhat" and "MySQL / Qt" models.
The Redhat model establishes a brand, often the original source for the product / project and uses that to market their expertise. Redhat is primarily a support and consulting organization. If you want to run an SAP system on Redhat, for it to be certified (and hence supported, which anyone buying an SAP contract will want) it has to be on Redhat Enterprise Linux with the support contract that goes along with that. In this case support can easily go all the way up to e.g. patching the kernel / glibc / whatever, and Redhat can charge a premium for offering that kind of in-house expertise.
The MySQL / Qt model is a mixed proprietary / open source model. They offered their libraries under the GPL (instead of the LGPL, BSD or other more permissive licenses) meaning that if you wanted to be able to distribute their libraries as part of a proprietary application, you had to pay for a license.
Since nginx is BSD licensed, I assume they are going for the prior.
Qt is under the LGPL. So long as you do not modify the main libraries you are free to link against it with a proprietary app and can distribute the binaries so long as you also provide source when asked.
I dunno about the rest, but last I heard (sometime last year, I think) Canonical hadn't made it to break-even, so I'm not sure one can use it as a "working" example yet.
This is what the FSF has been preaching for years. Their claim is that Free Software is the most capitalistic of them all: the consumer gets a choice in who supports it, and anyone can open a support/consulting business. Red Hat is probably the most successful company running on this model.
It doesn't make sense to try to stuff software into socialism/capitalism boxes which essentially deals with ownership/distribution of scarce goods. Software is not scarce at all.
In a way open source is perfectly socialist: There is almost perfect shared ownership of the production means (the software itself is free, the means to create new software - your brain and a computer that can run Linux - is well within the reach of anyone just moderately motivated.).
On the other hand, it's perfectly capitalist, libertarian and free market: You alone own what you produce (provided you alone created it). No-one can tell you what to do (unless you let them) and it's hard to imagine a field where it is easier to become your own boss. Competition is fierce, creative destruction rules, the entire field surges ahead at a blinding pace.
I have been researching this because there is a product for a start up I am involved with for which I am considering open source as well. It seems that paid support/free software open source models work in fields where there is an established custom to pay for support. This works for both desktop and server OSs, as most enterprises are trained to pay for OS support (thanks to Microsoft) and in databases where enterprises are used to paying shitloads for support (thanks to Oracle) and other enterprise software.
Will it work for webservers? Probably. Usually companies that use webservers are supposed to have capable webmasters, but once a company becomes large enough the biggest motivation of its executives becomes to cover their asses, and at that point they will probably start paying for support.
Unfortunately, this model will probably not work for our software because we are trying to make it a zero configuration zero support product. The paid support/free software model is a bit of a perverse incentive as it rewards products that are more difficult to use and configure.
I don't know that it's quite as sinister as incentivising products to be actively anti-user friendly.
If you think about it, the only products that are typically supported via contract seem to be extremely sophisticated, large, or cornerstone products. Making such products OneTouch-EZ is likely a waste of everyone's time and resources, because you have to hamstring the product and spend a ton of development effort making it idiot-proof, when you could have just been making it better instead.
You are right, it is not really sinister and I never suggested it was. It is just unfortunate that you cannot go the open source route if you are not within a certain range of products.
I don't see a billion dollar business here, but I'd imagine a stable of consultants and the growing power of the nginx brand will be quite profitable for Igor. Best of luck and thanks for saving all our asses!
XenSource, SpringSource and JBoss all sold for $400m+. You definitely need to have traction in the market and a product that is loved by enterprises to make that big of a business though.
Comments
This is incredible news. Congratulations to Igor and the rest of the nginx team.
Does anyone know if the model of open-source with a consulting/premium support company behind it works? I've paid 10gen for MongoDB assistance before, so I know there has to be some legitimacy behind the model. And, you know, MySQL.
It's tough. Linuxcare, where I worked in the dot.com days, wanted to be the support company for open source software, but they got derailed by ... other issues.
Most of the 'successful' open source companies are not just straight up service outfits. Redhat, for instance, has a model where you must buy a subscription, or you don't get support. In fact, you can't even use Redhat if you don't buy a subscription. They do this with some trademark trickery, which creates some of the artificial scarcity that open source software lacks.
Somewhere, somehow, something has to be 'scarce' to be able to sell it: http://journal.dedasys.com/2007/02/03/in-thrall-to-scarcity
People's time, is of course scarce, but services can be difficult to scale, as doing so requires people/management skills much more than actual technical expertise, or some kind of product. Also: to be profitable, a services company should spend as much time as possible billing for services, which may come into conflict with time spent on things like building a product that is then given away.
There are two main models -- we could label them the "Redhat" and "MySQL / Qt" models.
The Redhat model establishes a brand, often the original source for the product / project and uses that to market their expertise. Redhat is primarily a support and consulting organization. If you want to run an SAP system on Redhat, for it to be certified (and hence supported, which anyone buying an SAP contract will want) it has to be on Redhat Enterprise Linux with the support contract that goes along with that. In this case support can easily go all the way up to e.g. patching the kernel / glibc / whatever, and Redhat can charge a premium for offering that kind of in-house expertise.
The MySQL / Qt model is a mixed proprietary / open source model. They offered their libraries under the GPL (instead of the LGPL, BSD or other more permissive licenses) meaning that if you wanted to be able to distribute their libraries as part of a proprietary application, you had to pay for a license.
Since nginx is BSD licensed, I assume they are going for the prior.
Qt is under the LGPL. So long as you do not modify the main libraries you are free to link against it with a proprietary app and can distribute the binaries so long as you also provide source when asked.
See: http://qt.nokia.com/products/licensing
Historically, that wasn't always the case: http://en.wikipedia.org/wiki/Qt_(framework)#Licensing
The LGPL option was only added in 2009. Prior to that, various licencing mechanisms were used to extract revenue on various platforms.
(Eg, at one point the *nix version was GPL'ed but the Windows one wasn't, so you needed to pay to ship it on Windows)
Other working examples:
* Percona: MySQL
* Canonical: Ubuntu
* Best Practical: RT
* Concurrent: Cascading
* Basho: Riak
Automattic: WordPress
http://plone.net: http://plone.org
CodeWeavers: Wine and maybe also Wikia: Wikipedia
Couchbase - Apache CouchDB
Gluster: GlusterFS
I dunno about the rest, but last I heard (sometime last year, I think) Canonical hadn't made it to break-even, so I'm not sure one can use it as a "working" example yet.
This is what the FSF has been preaching for years. Their claim is that Free Software is the most capitalistic of them all: the consumer gets a choice in who supports it, and anyone can open a support/consulting business. Red Hat is probably the most successful company running on this model.
Uh... I think it's a bit far-fetched to think of Richard Stallman has a pro-capitalist. He is at best a social-democrat from what I've read.
But not from what _he_ says...
It doesn't make sense to try to stuff software into socialism/capitalism boxes which essentially deals with ownership/distribution of scarce goods. Software is not scarce at all.
In a way open source is perfectly socialist: There is almost perfect shared ownership of the production means (the software itself is free, the means to create new software - your brain and a computer that can run Linux - is well within the reach of anyone just moderately motivated.).
On the other hand, it's perfectly capitalist, libertarian and free market: You alone own what you produce (provided you alone created it). No-one can tell you what to do (unless you let them) and it's hard to imagine a field where it is easier to become your own boss. Competition is fierce, creative destruction rules, the entire field surges ahead at a blinding pace.
Red Hat is the poster child for making money off of supporting open source
They do far more than support. They pay a lot of kernel devs, compiler devs and they maintain a secure, well-tested stable kernel for years on end.
Saying that they only do support (discarding all of their engineering work and contributuions) is not accurate.
No one is saying that is all they do. However they get paid by selling support contracts. They don't get paid for kernel or compiler development.
MySQL as well.
I have been researching this because there is a product for a start up I am involved with for which I am considering open source as well. It seems that paid support/free software open source models work in fields where there is an established custom to pay for support. This works for both desktop and server OSs, as most enterprises are trained to pay for OS support (thanks to Microsoft) and in databases where enterprises are used to paying shitloads for support (thanks to Oracle) and other enterprise software.
Will it work for webservers? Probably. Usually companies that use webservers are supposed to have capable webmasters, but once a company becomes large enough the biggest motivation of its executives becomes to cover their asses, and at that point they will probably start paying for support.
Unfortunately, this model will probably not work for our software because we are trying to make it a zero configuration zero support product. The paid support/free software model is a bit of a perverse incentive as it rewards products that are more difficult to use and configure.
I don't know that it's quite as sinister as incentivising products to be actively anti-user friendly.
If you think about it, the only products that are typically supported via contract seem to be extremely sophisticated, large, or cornerstone products. Making such products OneTouch-EZ is likely a waste of everyone's time and resources, because you have to hamstring the product and spend a ton of development effort making it idiot-proof, when you could have just been making it better instead.
You are right, it is not really sinister and I never suggested it was. It is just unfortunate that you cannot go the open source route if you are not within a certain range of products.
I don't see a billion dollar business here, but I'd imagine a stable of consultants and the growing power of the nginx brand will be quite profitable for Igor. Best of luck and thanks for saving all our asses!
Red Hat is pretty close to being a billion dollar business:
http://www.businesswire.com/news/home/20110323006450/en/Red-...
XenSource, SpringSource and JBoss all sold for $400m+. You definitely need to have traction in the market and a product that is loved by enterprises to make that big of a business though.
Definitely - I used to be a sysadmin a company which sells premium support/implentation/design/etc. on top of an open-source CMS.