The Case for Gnome Shell
A couple weeks ago, I wrote some posts on GNOME Shell which included a number of criticisms of the desktop environment that will likely become Ubuntu’S default at some point in the future. Jon McCann, lead designer for GNOME Shell, recently got in touch to offer his responses to the problems I found with the new interface. Here’s what he had to say.
In general, Jon’s message was that many of the criticisms I made of GNOME (not Gnome, I’ve realized…) Shell were unfair, given that its targeted release date remains six months in the future. For example, Jon assured me that my experience with a laggy interface was likely due to known bugs involving certain Intel GPUs, which the GNOME developers are working on fixing.
More notably, Jon pointed to GNOME Shell’s Message Tray as the answer to the difficulties I had switching between windows in the absence of a taskbar. The Message Tray feature remains incomplete, but this animation provides an idea of what it will look like.
Jon and I also discussed the inability to categorize items in GNOME Shell’s application menu. As Jon pointed out, “Categorization in general is somewhat problematic,” and GNOME developers are working on a new approach to make it easier to locate applications and documents.
Jon gave me a lot of reasons to believe in GNOME Shell, and until we see a product that’s closer to completion, a lot of the attacks I made against it remain unfair.
After all, the GNOME developers went out of their way to make the development version of the Shell readily accessible to the public–it can be compiled very easily using the JHbuild tool, even by people like me who barely know what they’re doing–and they don’t deserve criticism for issues that will likely be addressed later in the development process.
That said, I do still have one major concern regarding GNOME Shell: its dependence on 3D acceleration. This isn’t exactly a criticism, because there are many valid reasons for the decision, but it is something worth discussing within the open-source community. Making OpenGL support a prerequisite seems like it will prove problematic for many users, especially those who use Linux because they want solid performance on older machines.
I have a six-year-old desktop that I don’t plan on retiring anytime soon, and its SiS GPU totally lacks 3D support on Linux. This means I’ll be out of luck when GNOME 3 becomes the default in Ubuntu–I’ll have to choose between not upgrading to the latest Ubuntu release, or switching to an alternative desktop environment.
Similarly, the dependence on OpenGL will likely become a problem for NVIDIA users who rely on closed-source drivers for 3D support, which Ubuntu doesn’t ship by default. Granted, this is the distribution’s issue, not GNOME’s, but it still could present huge difficulties down the road. The nouveau project will hopefully make the proprietary NVIDIA driver obsolete in the future, but nouveau’s 3D support is currently far from complete, even though Fedora has started shipping with it.
GNOME developers’ response to concerns regarding 3D support focuses on the necessity of taking advantage of hardware acceleration in order to keep up with other desktop interfaces, and to make 3D effects more than mere eye candy. They also promise that efforts will be taken to ensure GNOME 3 applications remain compatible with GNOME 2, for the benefit of users who can’t upgrade.
That all makes sense, and it’s not fair to expect GNOME developers to support ancient hardware and remain innovative at the same time. All the same, I think the dependency on 3D acceleration is not quite as trivial as the programmers seem to assume. It may well be for the best, but it will nonetheless force distributions to make hard decisions on whether to adopt GNOME 3, based on how committed they are to supporting older machines and how much they want to avoid proprietary graphics drivers.
If nothing else, distributions should start taking steps now to prepare to deal with the 3D dependency, so that it doesn’t suddenly become a fiasco down the road.
Maybe 3D support will turn out to be a non-issue–after all, it is true that virtually all computers made in the last four or five years should have no problem meeting the system requirements–and GNOME Shell may prove to be an amazing, path-breaking desktop environment when it’s complete. We’ll have to wait until at least this fall before we’ll know for sure.
N.B.: Jon created a great FAQ list for GNOME Shell that helps to clear up a lot of confusion surrounding it and its vision. It’s definitely worth a read.