Debates on the future of Compiz
Is Compiz dying? Possibly not, but the consensus among developers of the compositing window manager seems to be that the project is in serious need of reorganization if it is going to survive.
Founded three years ago, Compiz quickly gained recognition as one of the first projects to deliver 3-D graphical effects on the desktop. Probably its best-known effect is the presentation of multiple workspaces on a rotating cube. The current state of the project dates from the merger of Compiz and Beryl, a fork of Compiz, at the end of March 2007.
Since then, development has been divided into two projects: Compiz, which includes the core functionality and basic plugins, and Compiz Fusion, which includes utilities and more plugins. In theory, the two projects were supposed to merge, but in practice, that has never happened. The projects still maintain separate web sites, mailing lists, and bug trackers, despite the fact that most developers of one project also work on the other.
The community appears to lack both organization and direction, with many developers working on their own branches of Compiz in secret rather than face endless discussion about their goals. Still other developers have drifted away from the project. Under these circumstances, the community has not only been unable to manage a 1.0 release, but, 18 months after the last stable release, is still struggling to complete version 0.8.
More recently, the community has been affected by the withdrawal of Compiz project leader David Reveman. Reveman's departure, apparently made without any official announcement, has led to a lack of leadership, since no experienced Compiz developer appears willing to assume the role of community organizer. Just as importantly, Reveman's refusal to respond to emails after his withdrawal has caused practical difficulties for other developers because much of the Compiz code base is undocumented.
The result is that Compiz, once seen as an exciting, leading-edge project is now being openly denigrated in some circles. For instance, one commenter on a recent Compiz video on YouTube wrote:
The situation came to a head in late December when developer Dennis Kasprzyk announced the creation of a new compiz++ code branch. This new branch is written in C++ as opposed to the C programming language of the main branch, and would require numerous changes in the behavior of plugins. A few days later, Kasprzyk's announcement motivated Kristian Lyngstol, another developer, to begin a thread on the Compiz mailing list on "The Future of Compiz." This thread was echoed in an article called "Compiz is dying and we need to fix it" by Kevin Lange. Since then, discussions about the state of Compiz have emerged on numerous other mailing lists, especially those dedicated to specific distributions.
According to Lyngstol, "there has been the equivalent of no progress
since the merger. We've basically been in maintenance mode. The reason for
this, from my point of view, is a complete lack of direction and
leadership.
"
Lyngstol sees several reasons for the current state of Compiz. To start
with, he suggests that project members have been waiting too long for
"something that will change everything,
" and the result has
been too many code branches, many of which are incompatible with each
other. "The reality is that all these branches are
counter-productive, regardless of how fun or flashy they are,
"
Lyngstol writes. He continues:
Next, Lyngstol notes that the community remains small, with less than 20
people contributing code, if the subscription list for Compiz-Fusion Planet is an
indication. In fact, Lyngstol writes, "Unless I'm missing something
obvious, we haven't seen a single new core developer that contributes
significantly to [the main branch] since the merge. We have, however, lost
a few.
"
Lyngstol goes on to suggest the reasons for the lack of developers. Because
the project has no direction, he writes, "all development and design
is done as a solo race. There's no way to know whether you can work on
something without losing your work because some obscure branch gets
merged.
"
Even worse, the merge of Compiz and Compiz-Fusion that was supposed to
happen never has, resulting in a duplication of effort that Lyngstol
describes as "messy
". Much the same state of chaos exists in
the code, which is both "undocumented
" and "not
particularly pretty
". Moreover, when new code is added, its functions
"do more than C functions should do
". But the basic problem,
according to Lyngstol, is that "Compiz is a research project
",
in a constant state of change and is not focused on producing a stable
release.
To solve this situation, Lyngstol suggests a merger of the various code
branches — or perhaps, an agreement that some or all are forks
— and some serious attention paid to project management. "We
should have clear goals for every major release,
" he writes,
"and finding those goals should be the top priority after a stable
release. For each point-release in a development series, we should also
have a clear goal. This will make it easier to predict releases and for
developers to help.
"
[PULL QUOTE: Perhaps the greatest indicator of the state of the Compiz community is not Lyngstol's critique, but the polite agreement with which it has been greeted so far. END QUOTE] Perhaps the greatest indicator of the state of the Compiz community is not Lyngstol's critique, but the polite agreement with which it has been greeted so far. To date, those who have responded to Lyngstol's posting have quibbled over the details of some of his points while not seriously contesting his overall observations or his suggested solutions.
Another, more unfortunate indicator is that, while posters have agreed that leadership and direction are needed, so far none of them have come forward to offer it. Instead, Lyngstol and several other active developers have gone out of their way to state that, while they would support change, they were unwilling or unable to take on any leadership role.
So far, no one has suggested possible external reasons for the diminishment of Compiz. But it may be that, now that the novelty of 3-D special effects have worn off, few reasons exist to develop them; the few practical effects, such as zooms, are too slight to encourage the majority to move away from standard 2-D desktops.
Another possible factor is that 3-D video drivers that are both stable and released under a free license are taking longer to arrive than anyone anticipated, and their lack reduced users' interest in projects like Compiz that require them.
Still another suggestion was made in an anonymous comment on Lange's article: Perhaps Compiz has served its purpose by proving that the free desktop could surpass Windows or OS X in eye candy. However, not everyone would agree — developer Quinn Storm, for example, posted a comment to the Compiz mailing list in which she makes clear that she thinks that Compiz has that goal, but has yet to reach it.
Whatever the reasons and whatever happens, one consolation is that, in free and open source software, nothing is really lost. But, as things stand now, with no one willing to assume the leadership of the project, a very strong possibility exists that the the Compiz will continue to diminish, with its members aware of the situation but unable or unwilling to change it.
| Index entries for this article | |
|---|---|
| GuestArticles | Byfield, Bruce |
