Sun Microsystems cannot ignore the open source community, and the open source community cannot ignore Sun. While Sun's history with open source is slightly checkered, the times do seem to be a changin'.
It’s been an interesting couple of years for Sun Microsystems. In the fall of 1999 Java was slated to become a European Computer Manufacturers Association (ECMA) standard, Solaris cost $700 a pop, and the company’s Chief Scientist, Bill Joy, was telling Linux Magazine that the GNU General Public License (GPL), “just doesn’t solve my business problems.” A year later Solaris was free, Java was not, and Sun had not only released the largest single whack of GPL code in history, it had also coughed up $1.3 billion to acquire a Linux company.
Conventional wisdom credits Sun with winning the Unix wars by virtue of its most significant and intangible asset — something financial analysts call “focus.” Throughout the last half of the 1990s, Sun Microsystems prided itself on having the simplest product line of the Unix vendors. While competitors like HP and IBM struggled with their multi-OS, multi-hardware strategies, Sun became the platform of choice for the new generation of Internet-enabled applications, branding itself as the “dot in dot-com.” The strategy worked, in part, because inside that dot was a single microprocessor platform, the UltraSPARC, and a single operating system, Solaris. Focus.
However, focus will only get you so far in the hi-tech industry, and in September 2000 Sun surprised everyone by announcing plans to acquire server appliance manufacturer Cobalt Systems. Suddenly the dot had some company. Cobalt’s product line featured two important technologies that were new to Sun — a new microprocessor from AMD and a new operating system called Linux. “It was, in a sense, an admission of failure on the part of their hardware design team,” says IDC Program Vice President Dan Kusnetzky. Sun’s low-end Netras, with their proprietary architecture, simply could not compete in the high-volume and rapidly growing Web appliance space.
Sun is getting its feet wet in the open source ocean. These are the projects it’s working on.
A House Divided
Even before it acquired Cobalt, Sun vacillated between being dismissive (Sun CEO Scott McNealy once called Linux a “better NT than NT”) and friendly toward the Linux community. In its new role as a Linux vendor, Sun has a long way to go in convincing Linux developers that it actually wants to help. “They’re not seen as contributing anything of value,” says SAMBA developer and VA Linux employee Jeremy Allison. He accuses Sun of holding strategic technologies such as Java close to its chest. Not that Sun’s reluctance to open-source the popular platform surprises him. “If you’re doing well, why would you bother?” he asks.
|photo: GARY WAGNER|
|“While IBM’s engineers are part of the community, Sun engineers are not.” – Jeremy Allison, SAMBA developer|
The list of Sun’s sins against Linux is long. Sun is not seen as having given serious support to Linux on its UltraSPARC hardware; its restrictive licensing policy delayed the development of a Java virtual machine for Linux, and it has snubbed key open source developers. In late 1999, the hackers working on the Blackdown project were up in arms when Sun released a Java virtual machine for Linux that included their code but failed to give them credit for their work. Nearly a year later, noted device driver author Donald Becker saw red when Sun released a cross-compiler for Solaris that included his code and was, in Becker’s opinion, in violation of the GPL. Add to this McNealy’s occasional inflammatory remarks, and the Linux community’s nagging suspicion that Sun sees Linux as more of a threat than it lets on, and you get the basis of a stormy relationship.
But there is no doubt that open source has Sun’s attention. Pat Sueltz, the Executive Vice President of Sun’s Software Systems Group and the person who is ultimately responsible for both Solaris and Java, says that Sun clearly has a lot to learn from the open source community. “I can see that it actually changes the way we’re developing code,” she says. “There’s an iterative process that comes out of the open source community, and we’re exploring that.” (See the Q&A with Pat Sueltz sidebar, pg. 42.)
And though Sun has spent years casting itself as a white knight in a battle with proprietary software’s most vilified dark lord, Microsoft, there is a clear financial incentive for the company to get on the open source train. In a recent report entitled “Open Source Infrastructure: A Manifesto for the Coming ‘Big Bang,’” Deutsche Banc Alex Brown analyst Phil Rueppel cited Sun Microsystems as his top pick for investors looking to buy stock in an established company that stood to profit from the open source space. “Despite the company’s appearance as being hostile to open source,” wrote Rueppel, “we believe that Sun understands both the advantages of an open source development model… and the rich value proposition of a ‘single stack’ IT solution.”
Rueppel, now a principal with TA Associates in Boston, says that while Sun stands to gain much from open source, it still needs to figure out how to better embrace the Linux and open source communities. “On one hand,” he observes, “they don’t believe that Linux will work at the high end, so they dismiss it. But on the other hand, they support it because it undermines Microsoft. They’re speaking out of both sides of their mouths, and I think that’s going to have to be clarified.”
Letting Tomcat Out of the Bag
|I was young and dumb… It was about 14 months of my life — meeting with people, talking with people. – James Duncan Davidson, Sun Microsystems, on getting the Tomcat code released. |
Work on what would eventually become the first significant piece of open source code written and maintained by Sun engineers began in 1998, when a developer inside of Sun’s Java group named James Duncan Davidson began a rewrite of Sun’s Java Servlet Reference Implementation. At the time, Sun was beginning to get pressure from its Internet Service Provider (ISP) customers who were looking for an alternative to Microsoft’s Active Server Pages (ASP) for displaying dynamic pages on the Web. Sun had a Java-based alternative to ASP called Java Server Pages (JSP). The problem was that the Web server code needed to run JSPs was not as mature or as widely deployed as it needed to be and the Apache project was working on its own, divergent implementation of a JSP server. Davidson, who had worked with open source tools before coming to Sun, knew that an open source implementation that was supported by the Apache group would go a long way to solving both of Sun’s problems. So, he began rewriting Sun’s Java Web server with a view to open-sourcing the code.
There were two problems. No one in management had signed off on the idea, and Sun had never released open source code on this scale. “I was young and dumb,” remembers Davidson. “We were really coming out of left field.”
Over the next year, Davidson continued to work on the code, but more and more of his time was spent with meetings: QA, standards, and conformance teams, lawyers, and management. Everyone had to be brought on board; that required a lot of open source advocacy. “It was about 14 months of my life — meeting with people, talking with people,” he says.
In the end, Davidson says, it was pressure from IBM that helped get the go-ahead for the project. The help came from an IBM product manager named James Barry, who had been influential in getting IBM involved in the Apache project. Barry was convinced that Davidson’s code — Tomcat — would be best off as part of Apache, so he started making some phone calls to Sun. Initially, Sun’s management had visions of releasing Tomcat under Sun’s Community Source License, but in June of 1999 — after a meeting between Barry and the Java group’s General Manager Jon Kannegaard — Tomcat was turned over to the Apache Software Foundation. For the first time ever, Sun was actively supporting an open source project based on their own code.
|Sun releases SCSL, its not-quite-open-source license for Java.|
|Tomcat code released to the Apache Software Foundation.|
|Sun announces plans to release Solaris under SCSL.|
|A press release announcing the release of the latest Java platform for Linux credits Inprise, but not the open source Blackdown project, for its work on the port.|
|Sun creates an open source license — the Sun Industry Standards Source License; an implementation of NFS is the first code released under the new license.|
|Netbeans project launched.|
|Sun uses Donald Becker’s GPLed code in a Solaris cross-compiler, despite Becker’s objections; the software is later withdrawn from Sun’s Web site.|
|Sun announces plans to replace CDE with GNOME and joins the GNOME Foundation.|
|Sun takes on Microsoft.net, announcing plans to release its Jxta peer-to-peer software under an open source license.|
|On one hand, Sun doesn’t believe that Linux will work at the high end, so they dismiss it. But on the other hand, they support it because it undermines Microsoft. They’re speaking out of both sides of their mouths, and I think that’s going to have to be clarified. – Phil Rueppel, TA Associates|
Sun and Microsoft have never had good relations. In the 1990s Sun saw its bread-and-butter business dissolve in a sea of lower-cost NT desktops, but its most public disagreements with Redmond have been over Java. There has been acrimony, mud-slinging, and massive PR maneuvering since March 1996, when Microsoft signed its licensing deal with Sun, until early this year, when the two companies finally reached an out of court settlement, and Microsoft terminated the agreement.
Though Sun has opened up the way that developers can define the Java APIs, it has remained intractable in its desire to control how the Java virtual machine is implemented. Microsoft says this control has curbed innovation. Sun claims that Microsoft’s only goal has been to break Java compatibility. To those who were there, it is not surprising that, after five years under the withering effects of direct competition with Microsoft, Sun would be reluctant to open-source Java. “Microsoft was vicious, aggressive, and really detestable in the way they handled themselves with respect to Java,” says Rick Ross, President of JavaLobby, a developer advocacy group that was closely involved in the Sun-Microsoft Java wars. “I think Microsoft really intentionally hurt Java — and hurt it badly,” he adds.
“The people who took the little seed of Java and grew it to where it is, they just about killed themselves in the process,” says James Davidson’s current boss, Danese Cooper, who runs Sun’s Community Development Program Office. But these days, the old guard is leaving the fold. Alan Baratz — who was in charge of Sun’s Java division during the heyday of the Microsoft conflict — left in 1999 to work for a New York financial firm (he subsequently returned to Silicon Valley to become CEO of a startup named Zaplet). Jon Kannegaard — Baratz’s interim successor — recently moved to the greener pastures of SunLabs, along with Java’s inventor, James Gosling, and former VP of Java Technology and Architecture, Jim Mitchell. “There has been a big shift in personnel,” says Cooper.
As the Java warriors leave, new blood, like Tomcat’s Davidson, is coming to Sun with new ideas about the role of open source. Pat Sueltz has a pretty good idea of what it means to be a partner in Sun’s Java community. She came to Sun after spearheading IBM’s Java initiative. Another influential outsider is Marco Boerries, who came to Sun as part of its StarDivision acquisition in 1999. He’s the guy who convinced Sun’s President, Ed Zander, to GPL the StarOffice code.
Finally, there is Roman Stanek. After his company, Netbeans, was acquired by Sun in 1999, Stanek successfully lobbied to have his core product released under a Mozilla-like open source license. That project, Netbeans.org, became Sun’s next foray into the world of open source.
Sun has long understood that one of Microsoft’s greatest strengths is the popularity of its Visual Basic development tools, and since the early days of Java, it has striven to create a market-standard development tool for Java. Rick Ross says that while developers have looked to Sun to produce the Java equivalent of Visual Basic, Sun has failed to produce a contender. “As much as people lambaste it, Visual Basic has been an amazing product at the market level — selling millions of units and used by millions of developers on a daily basis. It’s something that can be extended in a thousand different directions by a thousand different modular reusable component products,” says Ross. “I don’t think any Java development environment I’m aware of approaches its really amazing ease.”
Sun spent five years working on an integrated development environment (IDE) called Java Workshop, but the product never caught on. Having failed to create a VB-like hit with Java WorkShop, Sun began to shop around, hoping to build a popular product out of proven technologies. Eventually, Sun spent $700 million acquiring two tool companies — Forte and Netbeans. The company then proceeded to consolidate the Workshop, Netbeans, and Forte technologies into one product line. “By the time we were capable of executing on a plan, we were like, ‘Oh my gosh, we’re really late to the party,’” remembers Stanz Kleinen, General Manager of Sun’s Forte development tools group. This sense of urgency made Sun more receptive to Stanek’s plan to open-source his company’s core product. ” I think it helped us be more bold and do some things that maybe we would not have done had we had our act together a couple of years sooner,” says Kleinen.
The Netbeans project has been growing steadily since Sun — with the help of open source consulting firm Collab.net (which just happens to be the current employer of Tomcat advocate and ex-IBMer James Barry) — released the Netbeans code in June 2000, fostering a small, but thriving, community. According to Sun, there are fewer than 10 developers — outside of Sun employees — who have CVS commit access (the right to change the Netbeans source code), and the project’s main discussion list pulls a respectable 40 or so posts a day. Sun also claims to have about 40 partners who are building Java components on top of Netbeans — a decent start for a project that has yet to celebrate its first birthday, but a far cry from the kind of popularity Microsoft has built around Visual Basic.
The fact that Netbeans has earned far less attention than Sun’s best-known open source project, OpenOffice, was intentional, says Sun’s Danese Cooper, so as not to turn off the developer community with an avalanche of marketing hype. “The engineers really wanted it to have an engineering focus. They didn’t want a lot of hype,” she says.
In pitching the open source philosophy to their peers at Sun Microsystems, the Netbeans team came up against four commonly held myths about open source:
Myth 1 – Anybody can change code on your project’s CVS at anytime.
Myth 2 – Open source means free labor.
Myth 3 – Open-source it and they will code. “This isn’t the Chia Pet of software,” says Sun’s Danese Cooper.
Myth 4 - The only smart engineers are the ones employed by your company.
With OpenOffice, on the other hand, Sun wanted to get the attention of end users, not just developers, with Sun’s PR machine in full gear (news of the project was widely reported as a possible Microsoft-killing move on the part of Sun). It was followed, a month later, by news that Sun planned to drop Solaris’s standard desktop software, CDE (the Common Desktop Environment), in favor of an open-source alternative, GNOME — an announcement that was, again (surprise, surprise) played up as a possible threat to Microsoft. (For more on GNOME and OpenOffice, see Linux Magazine’s December story, “The Meaning of GNOME,” located on the Web at http://www.linux-mag.com/2000-12/gnome_01.html.)
The OpenOffice project has yet to gain serious developer momentum, but in December 2000 — two months after its launch — Sun passed an important milestone by giving the first non-Sun developer the right to modify the OpenOffice source code. And Sun’s GNOME efforts appear to be on the right track. “It’s certainly going a lot better than a lot of other corporate involvement that we’ve seen,” says Havoc Pennington, the chair of the GNOME Foundation Board. “We’re getting people involved in the discussions; we’re getting patches back.”
Still, it’s not clear how strategically important these desktop-focused initiatives are to either Sun or Linux. Sun itself has a hard time articulating how a company whose fastest growth is now occurring in data centers is going to profit from releasing a free, GPLed office suite. Bill Roth, the Group Product Manager for OpenOffice, says that the project is, in part, an attempt to win the hearts and minds of open source developers. “We had to make a kind of Nixon-going-to-China effort to prove to people that we were serious about this.”
SAMBA’s Jeremy Allison says that if Sun really wants to convince the open source community that it is serious, it should take a page from IBM’s playbook. IBM, says Allison, has developers on a wide variety of mailing lists who are actively contributing patches to all parts of the open source community. Allison maintains that Sun engineers tend to focus on Sun-sponsored projects and, with the exception of GNOME, tend to have a pretty low profile. “IBM’s engineers are part of the community,” he says. “Sun engineers are not.”
Respected developer Don Becker, who is still unhappy about the way Sun used his GPLed driver code in a Solaris cross-compiler, agrees. In an e-mail interview, he wrote, “There are parts of Sun that seem reasonable, but most of Sun is aggressively anti-open-source,” adding, “I’m very impressed with how IBM has understood Open Source and the GPL as it relates to doing business and working with the community. I’m sending this letter from the Extreme Linux Developers Forum. IBM people gave a talk. No Sun people are here.”
All this will change if Danese Cooper gets her way. She says that Sun has not yet reached the mid-way point in its evolution into an open-source-aware company, but successes like Netbeans and Tomcat are going a long way to assuage the trepidation within Sun. In addition, she is spending much of her time traveling around to Sun’s different divisions, explaining the open source philosophy and helping Sun’s product people to see where it might fit into their future. One of the few people working for Sun who has publicly stated her support for the open-sourcing of Java, Cooper is optimistic that Sun will make the transition into the open source community. “I think that Sun is culturally ready for this change to happen,” she says.
|I can see that [open source] actually changes the way we are developing code. There’s an iterative process that comes out of the open source community, and we’re exploring that.” – Pat Sueltz, Sun Microsystems |
If anyone will open source Java, it’s Pat Sueltz. After earning a high profile in the Java community as the executive behind IBM’s Java efforts, Sueltz came to Sun to head up its software division. She is responsible for Java, Solaris, and all of Sun’s open source efforts.
Linux Magazine: Do you think there’s space for Solaris in the Cobalt product line?
Pat Sueltz: I have to tell you right now that I’m not looking at Solaris on the Cobalt line because I look at Solaris as the uninterruptible power supply of the Internet. It’s customizable and it’s rocket science that we’ve got out there. We’ve made it much simpler for sysadmins to work with, but it’s very different from Cobalt. That’s really picking up the gateway, the edge of the network. If people do want to work on the edge, and they want to program to it, then we’ve got the Netra, and that has Solaris in it.
LM: Are you saying that you don’t really see Solaris competing with Linux in the foreseeable future?
PS: What I see is that Linux has enlarged the community of Unix-savvy, Solaris-ready professionals. I have three points I would make about Linux. First, we work very closely with the Linux community as a channel. Red Hat applications port to Solaris readily — there is one-to-one compatibility. We work with J2SE [Java2 Standard Edition] on the Linux environment, so we engage the Linux community as a channel in this way. We have recently come out with J2EE [Java2 Enterprise Edition] for the Linux environment.
The second point is that Linux is not only a channel, it’s a community. We’re not only working with the major distributors, we’ve got tools for Linux and we’re going to continue to put StarOffice out on all the major systems. So you’ve got Linux as a channel and Linux as a community, and we participate in both of those.
Finally, there’s Linux as an Intel architecture. We’re a SPARC-architected company, and I don’t play in that game. But the fact is — as you’ve seen with our appliance strategy — when it doesn’t matter what’s inside, I don’t care. I don’t really care what’s inside the phones either.
LM: Do you think that Solaris will ever be released as an open source operating system?
PS: I’m not ready to speculate on that yet. I’ll just tell you that we continue to contribute mightily to the community. We just made a great contribution with NFS and we’ll continue to do those things.
LM: Do you think Java will ever be released under an open source license?
PS: Let me tell you the strategy that I’ve been working on with Java. It’s always been about compatibility. Because it has been made the holy grail of interoperability of applications, there were folks who wanted to co-opt it. Because of that, the path that I’ve been on is to make sure that I open up the process for changes. So one of the strategies that I came to Sun with was to fix the Java community process. And we’ve done that. We’ve now got two bodies of 16 stakeholders; it isn’t the entire open community, but it’s folks who have licensed Java and includes folks like Nokia, Fujitsu, IBM, BEA, and Apple. We’ve got the key players that are working on Java as the executive committee to make the decisions about what the future of Java is. And that process is one vote per company. Sun chairs it, but to be sure, the votes don’t all go Sun’s way.
LM: So you’re saying you think Java is basically open enough as it is right now?
PS: You know, I never say never; I will tell you that I think we’ve opened up the process and that I’ll continue to look and see what happens in terms of the open community. This is all an evolution and it’s all about ensuring that we stay in touch with the developer community. Right now, I think I’ve got the process open, and certainly my constituents of the 300 licensees are happy with it, and we’re going to keep watching and learning from it.
LM: What do you think are the greatest risks presented by open source?
PS: I don’t think we know yet. I think we have to listen and then think about consequences. Remember, I live in a commercial world where millions of people have invested in Sun Microsystems. So I just want to make sure that I make good decisions for my shareholders at the same time that I’m making great decisions for customers and developers. I don’t really see a risk. I just think that it’s a learning process.
Robert McMillan is editor at large with Linux Magazine. He can be reached at email@example.com.