Quick, think of an enterprise stack that runs on the x86 hardware you have lying around, provides email, calendaring, single-sign-on services, and all the other day-in day-out needs a business needs. I'll bet you are thinking of some Microsoft software, Exchange will figure prominently, and ActiveDirectory. Perhaps you will break out some of the functionality to non-Microsoft software, for example maybe Apache rather than IIS, but in essence the solution most people think of is Windows based, and (for the most part) requires windows and office throughout the rest of the network infrastructure to take advantage of the features.
The Microsoft stack is well proven, well marketed, and, well, kind of expensive. Also as a developer who prefers Unix/Linux to develop on, I find myself as a third class citizen with the Microsoft stack. Active directory and single sign-on are frankly more trouble than it is worth to get working with Unix. Exchange usage comes down to either IMAP for email and Outlook Web Access for calendaring. Certainly it could be worse, but it could also be a lot better.
What would be really nice is a full enterprise solution that provides all of the same functionality of the Microsoft stack, doesn't penalize users for moving off of the "recommended" OS. While we are wishing, lets throw in low cost, easy install, and easy migration from whatever we are using now. Reliability and security are also desirable, especially given the seemingly constant stream of attacks, worms, viruses and so on against IIS, exchange, outlook IE, etc.
Now, what if I told you that much of this wish list is already available, right now, for download? It might not be a surprise to everyone, but Sun has released Solaris Enterprise for anyone to download, experiment with, and use for real day-to-day operations, for free. As they point out, it is the only Open alternative to the full Microsoft stack that runs on commodity hardware (x86/x64) that matches the features. As a Linux enthusiast I am not quite so sure of this claim, but I do know that matching the Microsoft stack feature for feature on Linux, while it might be possible, would be quite a lot of work.
The Solaris Enterprise System is a bundling of:
- Solaris 10 - which has been free for a while and has been capturing mind share well, despite a few catches (more on this later),
- The Java Enterprise System (JES) which likewise people have already been able to download and experiment with for while, although were expected to get "honest" before using commercially - to the tune of $140 per seat. The JES includes much of the functionality you would expect from the Microsoft stack including calendaring, email, web serving, single-sign-on and identity,directory services, intranet portal, instant messaging, etc. Also the Java Application Server is included.
- The N1 grid provisioning and management software. A nice bonus in the form of a ready-made grid computing system, all included in the price (free)
- The SOA software from the SeeBeyond acquisition in the summer of this year (announced at JavaOne). The importance of the inclusion of this software for free should not be underestimated. It is now named the "Java Integration Suite".
Figure 1: The Solaris Enterprise System.
This actually should not come as a great surprise to anyone who has been following Sun's moves recently. Jonathan Schwartz has repeatedly promised to free and eventually open-source all of Sun's developer and developer-related software, and he and Sun are making good on that promise. The stated reasons are to grow market share and increase volume, and as Jonathan notes, free is an important way to do that (there are others - again more on this below). The plan is to get the software out there, in use, and then sell support for it, a model that works for a number of smaller open-source companies right now (like JBoss, MySQL, etc.)
It is also a brave move. When you give away software and sell the value add, the value add has to be valuable enough to sell. You can't write some software, achieve lock-in, and then rest on your laurels and vague promises for years while extracting licensing fees. Instead you have to make the software good enough to be used, and the value add (support, etc.) even more compelling to sell it. I like the model, it has an honest feeling, and there is less opportunity (if not incentive) to achieve lock-in.
So, free, as a friend of mine delicately puts it, gets butts into seats, then you sell them the hot-dogs and ice-cream.
Moreover, free does allow the curious to just download and use the software without the worry of being hit with licensing fees or, worse, having to get those fees past the company bean-counters at some point in the future after investing time to make it all work.
However, I also think that free software that you run yourself is not always the cheapest or most compelling option. Heresy you say for a self-professed Linux guy? Maybe so, but the SugarCRM or SalesForce.com examples show that sometimes the cheapest or most compelling solution is a rented one. A monthly fee gets you the services you need, with little to no lead or setup time, and someone else has the headaches of keeping it all working (someone who already knows the system).
I do believe there is room for both models in the marketplace. Free software that can be downloaded and used for an enterprise network is attractive to many companies, especially for those with the expertise to run it (or who are willing to invest the learning time necessary), and individuals may do this off of their own backs in order to bring in some of these tools. Other companies though, particularly the small ones - say 10 to 100 employees - might prefer to simply let someone else do it. Sign up for a fee based on seats, CPU hours, data size or other models, and avoid the expense and time of a resource to do the setup and management.
So to back up to an earlier statement, free is one way to get volume, but eliminating time and effort is another, and I wonder if this is not potentially a more compelling way to grow a market right now.
Having a separate analysis section is a bit odd, because I think I have sprinkled a fair few of my opinions through the article already, but here I will go in to some of the points and statements in the announcement that interest me.
A statement that I have heard Jonathan state several times, is that developers don't buy stuff, they join stuff, and I agree with that to a point.
In fact, as a developer, my focus is to enjoy my discretionary time. Of course there is the non-work related stuff like hiking and cycling, but when it comes to examining new software and applications, the free argument is certainly there, but so is the fun argument.
My own belief is that rather than just joining stuff, developers like to play with stuff. In other words, when freed from the confines of their work focus, any extra-curricular investigatory work tends to go not only into what is free, but also what is interesting and fun.
I believe this is an important point. As a developer, I tend to quickly drop a technology, no matter the price, if it is not scratching some itch that I have, or if it is just more trouble than it is worth. I do this in order to move onto something else that is potentially more fun or useful.