Thoughts on Mir and the community



I realized this week I needed a break from sampling distributions. I love technology, especially when it involves open source software, but this past week I realized I'd had too much of a good thing. As I scrolled through the list of distributions released over the previous two weeks and combed my inbox for suggestions I realized few of the distributions jumped out at me. My reaction to reading descriptions such as "The last distribution you will ever try" or "Just works" was skepticism. Most of the releases announced over these past two weeks have been niche players and beta releases anyway, so this seemed like a good time to take a break, to take a week off from installing open source operating systems, to have a week off from taking notes on the Linux community's latest and greatest. This week I would like to turn my focus (and yours, if you will indulge me) on Canonical's new display server, Mir.



Mir, for those of you who are not familiar, is a display server designed to replace the X graphics software common to most Linux (and UNIX) operating systems. The Mir software is designed to work on desktops, laptops, tablets and phones. If all goes as planned, Mir will provide better performance and use less energy than X. The name Mir is a Russian term meaning community or the world (as well as "peace") and fits the naming pattern of other Canonical projects which include Ubuntu and Unity.



Right from the start Mir generated some controversy. Originally Canonical (and several other open source contributors) had been putting their development efforts into a new display server technology called Wayland. Wayland was also supposed to be a faster, lighter, less cumbersome display technology that would someday replace X on most devices. However, development on Wayland was slow and not going in quite the direction Canonical had hoped and thus Mir was born. Right away many people expressed concern that Canonical was dividing the Linux ecosystem by introducing a new display server, a technology which would use different drivers than Wayland and, therefore, possibly divide development efforts. There were also questions as to why Canonical needed to make their own display server rather than influencing Wayland's development, questions Canonical kindly answered.



For a while all seemed quiet, but then, during the month of September, Intel (a Wayland contributor) rejected software patches provided by Canonical which would allow Intel's drivers to work with Mir. This was a reversal of Intel's earlier apparent support for Canonical's new display server. The reasoning was not clear, but it seemed as though Intel was unwilling to continue support for Mir, either in an effort to avoid cluttering up their own driver code or because Intel's focus was on Wayland. Either way, it meant more work for the Canonical developers who will need to maintain the driver code themselves. Then, at the start of October, Canonical announced Mir would not ship by default in the upcoming release of Ubuntu 13.10. The developers had decided there were still bugs to work through, features to complete, and it was decided Mir would be delayed for a release cycle.



Given Mir's status this seemed like a reasonable move, at least to me. In the past Canonical has released buggy code into its products (PulseAudio and the Unity desktop spring to mind) and it seemed as though the company was taking a more conservative approach, protecting its users from experimental code, trying to insure a better user experience. Yet, for some reason, people's reactions have been mostly negative. Mir's temporary delay seems to be blood in the water for critics of the display server. Commentators are taking the opportunity to claim the project was poorly planned, that the technology is under-supported, that it won't be able to complete with Wayland, which has recently been gaining momentum.



As someone who does not have a horse in this race, as someone who does not care if his desktop is running Mir, Wayland or X, it has been a puzzling few weeks. It seems as though the community at large, not just a vocal minority of idle commentators, but active developers, are betting against Mir before the software gets a trial run. Intel's move, for example, of not only refusing to assist in driver development, but actively blocking support, is troublesome. Former Red Hat employee, Matthew Garrett, taking shots at Mir also strikes me as a poor use of time and energy. Critics claiming Ubuntu being the only distribution to currently adopt Mir is a sign Mir won't be successful seems to me to be an odd and unrealistic viewpoint. Wayland has yet to be included as the default display server in any mainstream distributions and critics are not complaining about its delay.



Most of us see the open source world as a place where anybody can scratch an itch, develop a new idea and release it into the wild. It doesn't need to have mass appeal, it does not need to sell a certain number of units, developers are able to create their visions and share them freely. At least it seems as though developers can do this as long as they do not work for commercial companies. The more feedback I hear about Mir (especially negative feedback) the more I get the impression critics are opposed to Mir not on the technology's merits, but because Canonical is behind its development. Ubuntu is a widely used and popular distribution and, when one is king of the hill, everyone wants to push you. The development of Mir isn't hurting anyone, it isn't being forced on other distributions (even Ubuntu community distributions can use Mir or ignore it as they like), and Mir is open source. Mir represents a fresh solution to a long-standing concern -- the imperfections in X -- and Canonical has shown a willingness to develop and even maintain drivers to prevent diluting efforts from third-party coders. Canonical has basically said they want to try something new, do not expect any help or cooperation and will not push their technology out to the public before it is ready. Despite their best efforts many people in the open source community appear to want them to fail.



Earlier I mentioned that my review options were limited this week as many recent distribution releases have been beta tests rather than full releases. My point of view is that developers should be given the time to get their projects to a stable release before the software is judged. When I review a distribution I try to focus on stable releases and I attempt to avoid reading other reviews of the same project and anything about the developers' personal lives. I want to evaluate a project based on its strengths and problems, as free as possible from the taint of public opinion or past releases. It's not always possible, I am human and flawed, prone to being subjective. Still, I feel the community at large should take the same approach when it comes to Mir. Perhaps the technology will always be buggy or maybe it will be stellar. In either case no one is forcing Mir onto the open source community as a whole, it is Canonical's pet project, and I think the community should be cheering them on for trying something new. Canonical, as with any other open source developer, is free to dedicate its resources to scratching its own itch and seeing what comes about as a result. I, for one, am looking forward to comparing Wayland, Mir and X over the coming year to see which one best serves my needs. When we have options we all win.



