LWN.net Weekly Edition for July 24, 2008
GNOME 3.0 worries
The mood on some GNOME mailing lists in the weeks prior to the recently-concluded GUADEC conference was somewhat somber; some members of the community were clearly feeling that GNOME development had slowed down, that the project lacked vision, and that GNOME was threatening to lose its relevance with users. GNOME subsequently emerged from GUADEC with a new executive director, plans for a 3.0 release, and a new burst of enthusiasm. It's amazing what a week in an exotic city with large amounts of beer can achieve. Since then, however, the enthusiasm has dropped a bit, and work on a proposed 3.0 press release appears to have stalled. GNOME is now faced with some big decisions, and it's not clear what the project will do.The initial driving force behind this effort appears to be a plan by the developers of the GTK+ toolkit to move to a new ABI without concerning themselves with backward compatibility. Years of enforced ABI stability have left GTK+ with a large pile of compatibility cruft which the developers would like to leave behind; in addition, there are major changes planned which would be hard to do in a backward-compatible mode. So the GTK+ developers would like to start over with a 3.0 release. Lots of planning is being done to make the transition easy; among other things, care will be taken to ensure that GTK+ 3.0 will coexist nicely with older installations. But, in the end, it's an incompatible ABI change.
At this point, the loudest objections seem to come from Miguel de Icaza. He fears that a new version of GTK+ will leave independent system vendors behind and, perhaps, lead to a series of ABI-breakage events. In particular, Miguel takes issue with the plan to make the ABI changes for the GTK+ 3.0 release, and only add the new features (which, like much of the GNOME 3.0 plan are somewhat fuzzy at the moment) later. The needed new features, he says, should be driving the whole process. And, if at all possible, those features should be added in a way which does not require an ABI flag day.
It would appear that the GTK+ developers are determined to make this change, though, so expect it to go forward. But a GTK+ change is not the same as a GNOME change; there is no particular need for GNOME to make a major release just because an important library it uses has done so. Anybody who has looked at the linkage of a GNOME application knows that GNOME uses a lot of libraries; they cannot all drive major GNOME releases. So, one might ask, what is happening with GNOME in particular that warrants a 3.0 release?
This question was, arguably, most eloquently asked by Luis Villa, who has described GNOME 3.0 as "a terrible idea." Luis's point is that an ABI change is not enough to motivate a major release; instead, there must be a fundamental vision of a better way to do things. That vision, he says, is not there now. This is not an unprecedented situation in the GNOME community:
A 3.0 process without a clearly-articulated vision will invite the same sort of "crack." It will also throw away the rare public relations opportunity that comes with a major update:
There are, certainly, interesting ideas to be found in the GNOME community. The online desktop ideas, Document-centric GNOME, and the mobile initiatives are examples. But it is true that nobody has, yet, put together a concept of GNOME 3.0 which is broad enough to unify and direct all that work while simultaneously being concise enough to fit onto a bumper sticker. Chances are good that most GNOME developers do not know what GNOME 3.0 really means; those outside of the development community will have even less of a clue.
The KDE 4.0 experience should be on the GNOME project's collective mind as it ponders a possible 3.0 release. Future KDE users may see KDE 4.0 as the turning point where their desktop started becoming truly great, but, for now, it does not look like a whole lot of fun for the KDE development community. GNOME developers, one assumes, would prefer not to have a similar experience.
GNOME 2.x has been around for some time; it may well be true that it is time to make a big jump. It would be gratifying to see some new energy and directions from the highly creative GNOME development community. If the project can come up with a set of overall goals which can inspire that community toward a set of common ends, GNOME 3.0 could be a spectacular success. But those goals, if they exist, have not been communicated to the community yet, and that is making some GNOME developers nervous.
Anticipating the sunset
In his two years at the top of Sun Microsystems, Jonathan Schwartz has embraced a number of ambitious changes. While one need not look too far to find complaints about how Sun works with the free software community, there can be no doubt that Mr. Schwartz has made the company far more open than it was in the past. Free software is an important part of Sun's overall strategy; this can be seen in the company's claims to have contributed more code to the community than any other source.Unfortunately, Mr. Schwartz's time at Sun has been accompanied by a 50% decline in Sun's stock price. Whether he could possibly have done any better given the state of the company when he took over and state of the economy now is something one could debate, but we'll not do that here. More interesting, from the community's point of view, is the rumors that he could soon be looking for a new job.
It has often been said that if corporations were people, they would have the personality of a sociopathic teenager. Certainly companies can exhibit no end of the sort of moody, capricious, and even self-destructive behavior sometimes seen in adolescents - then they come back and ask for more money. An abrupt change at Sun could well bring in a CEO determined to show that his predecessor's policies were fundamentally wrong and were primarily responsible for Sun's problems. And that could bring some interesting changes.
Imagine a Sun which decided that it could no longer afford to share its Valuable Intellectual Property with the world. Perhaps Solaris, OpenOffice, Java, etc. would be relicensed under the new, Sun Proprietary Overtly Indecent License (SPOIL), with no more free releases. Hungry lawyers could start prowling for cases where Solaris code has been mixed into projects with incompatible licenses. StarOffice might go OOXML-only. MySQL could shift to a new, undocumented on-disk format with users' data subject to Sun-controlled DRM on every table. The new Java license would forbid the publication of not just benchmark results, but also of criticism of features of the language.
Clearly, some of these scenarios are rather far afield - though they are fun to make up. But, if we have learned anything from the SCO story, it must be that a company which presents itself as a solid part of the community can, in short order, turn around and go against us. Even if Sun does not degenerate to the point of starting legal attacks against free software, it could certainly put an end to the many contributions that it is making now.
Whenever one deals in company-owned free software, one should consider what happens if that company goes away. Projects with distributed copyright ownership are mostly immune to this kind of problem; there is no single company which could create huge problems for the Linux kernel by withdrawing its participation, for example. (Along these lines, it's worth noting that Evolution recently stopped requiring copyright assignments from its developers). But, in situations where a single company owns the copyrights and dominates development, a change of heart could make a real difference to downstream users. It all depends on what sort of community has developed around the code.
If future versions of Solaris were to be proprietary-only, the current releases would still be out there. But the Solaris development community outside of Sun is tiny, so chances are good that such a move would kill OpenSolaris as a free software project - to the extent that it is one now. Anybody wishing to continue to use Solaris would probably have to move to the proprietary version. OpenOffice.org would likely survive, though the external development community - never encouraged that much by Sun - would have to organize itself and, perhaps, choose a new name. Java is entirely subject to Sun's policies regarding conformance tests and such; it could easily revert to its status from a few years ago. And so on. The point is that a change of heart at Sun could easily make us appreciate the company's relatively friendly attitude now, and could create difficulties for distributors and users of Sun-sponsored projects.
There are plenty of other single-owner projects out there, of course. Many of them are entirely dependent on the continued good will (and viability) of their sponsoring companies. Others are less so. Copyrights on code released by the GNU project are generally owned by the Free Software Foundation. But, if Richard Stallman were to hit his head in an unfortunate contra dancing accident and decide that, henceforth, FSF-owned code would only be released under the binary-only GPLv4, those projects would not suffer much. Instead, the development community behind that code - strongly influenced but not controlled by the FSF - would quickly move to a new home and continue its work. For a practical example, see the creation of X.org in the wake of the relicensing of XFree86.
With any luck at all, the silly scenarios outlined above will not come to pass. But there is value in pondering how things could go. Such thought quickly leads to the conclusion that a vibrant development community is not just good because it leads to faster progress and more cool features. That community is the source for the long-term support for the code, support which is not subject to one company's quarterly results.
Interview: Wind River's John Bruggeman
If you wanted a symbol of Linux's impact on the world of embedded systems, you could do worse than consider the edifying case of Wind River's Damascene conversion. Once one of free software's fiercest critics, today Wind River is a cheerleader for the benefits of open source, of sharing, and of giving back to the community.John Bruggeman is Wind River's Chief Marketing Officer. Here he talks to Glyn Moody about why you can't use any old Linux for embedded systems, the respective strengths and weaknesses of the Linux-based mobile platforms from the LiMo Foundation and Google's Android, and what effect Nokia's announcement that it would be open-sourcing the Symbian operating system will have on the sector.
Once upon a time, Wind River was synonymous with anti-Linux: what happened?
What do you have to do to Linux to make it suitable for the embedded market?
Those are kind of software elements, but there is also a hardware element. In the enterprise computing space, you are basically living in an [Intel architecture] world and everything is pretty constant and stable and predictable. Well, that is the anti-case with what we see in embedded. You have a plethora of hardware environments. Each hardware environment has their own specific nuances and special techniques and tips and trips. And making Linux work really well with hardware is a tough problem.
How would you compare your Linux offering with your proprietary VxWorks solution?
Is there any reason why your Linux software couldn't take on the other kinds of things as well?
What's the kind of split between the VxWorks and Linux, in terms of revenue?
Do you think one day you'll ever be wholly open source?
What are the key attractions of Linux for your customers?
The attraction of Linux is there's this massive development community developing that infrastructure stuff that they used to spend so much time on, that enabled application development: they don't have to do that anymore. The second thing is obviously cost. They really can get it at a significantly lower development cost than they did when they used to have to build it themselves.
What's your business model?
Moving on to the mobile phone space, can you say a little about LiMo and Android, and what your involvement in those has been?
We joined LiMo as a board member and we work very, very hard with the architectural committee to become the Linux foundation for all LiMo-based development. What that means is the common integration environment, which is the Linux-built system, the tool chain, is all based on Wind River technology. And therefore any contribution that's made to LiMo [is] based on our technology - we contributed that common integration environment to the LiMo foundation.
[Open Handset Alliance's Android] was announced about six or nine months or so after LiMo, and Google came out and said Wind River is their Linux commercialization partner. We have been working with them for about two years. We've done a number of hardware integrations for them. That's one of our core competences: how do you get Android running on the hardware.
We have phones coming out for both. We see a lot of activity on both and a lot of momentum for both.
How would you contrast the two initiatives?
OHA is really a Google-driven initiative. They make product decisions and they make feature decisions.
So, let's talk pros and cons about this. When it's not a democracy, when the decision-making is very clear, decisions can be made quickly and things move very fast. On the LiMo side, where it's a lot of people, with a lot of experience building phones, who know what really matters, and what's important and what works and what doesn't work, they can bring a lot of different experience, a wealth of different perspectives together.
Sometimes it might take a little longer to make a decision over here but I really understand and can see why that decision works over there. Where this one races ahead, this one's a little more methodical and carefully constructed. But they're both building compelling platforms and will both be successful in the marketplace.
Alongside LiMo and Android, we will have an open source Symbian at some point; what effect is that going to have on this whole market?
Symbian's got 60% of the smartphone market. And Microsoft's 20 to 30% of that market. Certainly they are not among equals, but Microsoft's been gaining share against Symbian and against Nokia. So, I think this was an aggressive and a bold and clever move against Microsoft.
Vis-a-vis Linux, the Symbian move just endorsed what was going on. It said if you're going to be competitive, if you're going to relevant years from now, you'd better have an open source model. I love that endorsement of Linux.
On the other hand, their solution is years away. Nokia said: Well, we'll have it in the first half in 2010. Both Android and LiMo will have phones out by the end of this year. So, there should be a lot of activity. Now if I'm an ecosystem member, am I going to wait for 2010, or am I going to develop today, and address real design opportunities and real win opportunities today?
I think Linux has a window of opportunity. We're going to see mass adoption of Linux-based devices, whether they are phones, or converged devices or MIDs, or whatever they are. However this market evolves, Linux is going to have two years' worth of product out there in the marketplace, doing stuff, before we see Symbian open source. While Nokia made a brilliant and bold move, it might be too late, because there is enough Linux momentum, especially behind OHA and LiMo, that I think they left that too long.
What about the other player in the closed-source world, Apple with its iPhone?
So you've got the smart phones, the MIDs and now these ultraportables - the $300-400 machines that run GNU/Linux. How do you see that three-way contest panning out?
What is becoming very, very clear is, it's not about voice and it's not about text or email, it's going to be about a true, rich Internet experience. Can a web page be represented on these devices at the same clarity, the same quality, the same speed, as they are on the PC? When I look at YouTube, I don't want to look at a fuzzy, webcam image. I want to see [High Definition] quality on that thing. So, the devices we're seeing today, they're being required to be able to deliver that level of video representation and audio, that's [as good as] my music device and that's as good as my home entertainment system.
In what other embedded sectors Linux becoming important?
I think Apple helped change the game, because everybody wanted their iPod in their car without a bunch of wire striking around. Automobile manufacturers worked on the development cycle that is five to seven years, and all of a sudden the iPod hits and they have one quarter to figure out how to get that thing in there.
This is a whole new business and process problem that the automotive manufacturers had not been in before. They all stood up and said: We don't know how to do this. And then the next new application came in and the next new application and, all of a sudden, they said: There's been a tremendous disruption in the industry; we've got to change the underlying principles how we design these applications. And Linux is clearly the solution for that, because it's all about the application and how extensible can the platform be, and how well can we count on consumer-like speed in an automotive-like marketplace.
The second market that I would say we're seeing in the home. Things like broadband access points - how you get content into the house: that's going Linux now. Every new data standard, Linux is keeping pace with that better than anything else out there.
We're seeing a general theme here. There's a real need for content - I want YouTube and I want cable and I want satellite and I want data. We're seeing those three C's of content, of connectivity, and of complexity. When you have those three things there, Linux is a tremendous solution.
Glyn Moody writes about open source at opendotdotdot.
Page editor: Jonathan Corbet
Inside this week's LWN.net Weekly Edition
- Security: Deep packet inspection; New vulnerabilities in the bacula, kernel, mantis, ruby, ...
- Kernel: The 2.6.27 merge window, part 2; linux-next meets the merge window; Tracing: no shortage of options.
- Distributions: Various notes from the Fedora project.
- Development: The Elisa Media Center project, Drizzle: a lighter MySQL, KDE 4.1 rc, KOffice 2.0 adds new capabilities, new versions of Bloxsom, Elixir, Allmydata.org, pam_mount, TestDisk and PhotoRec, WSFuzzer, Segue CMS, OpenSSH, Dungeon Crawl Stone Soup, wxPython, Qtractor, Firefox, fancyLWNComments, GIT, once:radix.
- Press: The Death of Google's Patents, Linux or GPL a disruptive technology, Judge Kimball rules on SCO, Google's Android not open enough, Linus Torvalds interview, Miguel de Icaza on the future of GTK+.
- Announcements: BusyBox suit against Extreme Networks, Openmoko partners with Koolu, Indamixx audio workstation, Webreach and Medsphere partner, ActiveState on open-source software myths, Hack Tahoe! contest, September PyWeek contest, new look for LPI at LinuxWorld, Linux Plumbers Conf cfp, ekoparty - Buenos Aires, FUDCon Brno.