Commercialized Open Source (Repost from January 2009)

One nontrivial area of decision making that is of increasing import in recent years involves the choice between open source and commercial products.  If you have not yet noticed, a fair number of open source software products have been acquired by commercial firms, and much open source has the backing of commercial entities, which has a number of implications, including the fact that when the choice of one of these products is made, one often has the choice whether to obtain support for a fee.

As architect for a recent client, for example, I was able to help sell the use of JBoss Application Server (JBossAS) as a low-cost alternative to more costly commercial Java EE application server packages, primarily due to the available support of the product by its recent acquirer, Red Hat.  While development of a full Java EE compliant product was under way by the firm, with a planned version 5.0.0 release, a series of smaller releases were made available after Red Hat involvement and before this Java EE release was made available earlier this month.

After version 4.2.0 of JBossAS, when Red Hat made its purchase, the JBoss website was transformed and a quick makeover of user and technical manuals began.  While the content changes between the open source and commercial versions of the JBoss line of products are debatable (the two versions are still kept separate), some of the disclosure that was made available during this transition phase was new.  For example, strong warnings against production use of the embedded JBoss database, Hypersonic, were suddenly included in JBossAS documentation.  Discussions with fellow colleagues confirmed that such warnings were a new development.

There are likely trade-offs with any architectural decision.  Open source software can be a very viable alternative to commercial products, especially when community support of open source is high.  In addition, many technology innovations appear in open source before their commercial counterparts (and many commercial products are now embedding open source, such as Apache HTTP Server, into their products), and depending on the technical abilities of open source adoptees, costs can be much lower (and in the case of JBossAS, much of the available technical talent is already familiar with the product since it has grown to be the most highly deployed Java EE application server).  And with JBossAS as an example, more readily available, thorough documentation can sometimes be the result of commercial involvement, although this is not necessarily the case.

MySQL, an open source relational database product, was also acquired by a commercial entity, Sun, this past year.  Whether MySQL is a viable alternative to commercial relational database products is open to debate.  However, what is apparent at this point in time is that corporate adoption of MySQL has steadily increased since its initial release, and Sun hopes to continue to transform the product in a space that is shared by database heavyweights such as Oracle and IBM.

This past week, Computerworld magazine reported that MySQL co-founder Michael Widenius advised users to be “very cautious” about recently-released version 5.1.GA of MySQL due to a number of serious bugs that the release still exhibits.  It is interesting to hear Widenius quote Marten Mickos, Senior Vice President of Sun’s Database Group, who apparently said that “MySQL version 5.1 will be released as GA in or before December [2008] because I say so“.  The original blog entry by Widenius also declares that MySQL version 5.0 was also released too early.  Now, it does need to be pointed out that Widenius toned down his message shortly after his blog entry, but attention to development team communication by open source groups that is often not readily available from commercial counterparts is an important responsibility of the architect.

Subscribe to Erik on Software

Don’t miss out on the latest issues. Sign up now to get access to the library of members-only issues.
jamie@example.com
Subscribe