Friday, June 12, 2009

Ubuntu LTS Support

I'm beginning to get frustrated with certain aspects of the Ubuntu development cycle, and in this post I'm going to try my best to spell out my complaint and what I think should be done about it.

My Complaint

First, let me say that I'm a huge Ubuntu fan. Since Gutsy (when I first started using Ubuntu) each of the iterations of Ubuntu has made large, important strides to becoming a preeminent OS. Many of the things that annoyed me about the desktop experience have been have been fixed or minimized, and with the release of Jaunty I've had very few complaints about things not doing what I want/expect them to, very few crashes, and less annoyances than at any other time using a linux based OS. As I've written before, Jaunty is the first time a Linux vendor has released a distribution that I'd pretty much recommend to anyone. As you can see, I'm a very happy user.

So my complaint then isn't about the great work being done on Ubuntu, its rather an end-user complaint about what the distribution requires me to do to use the latest and greatest releases of software applications. In particular, my complaint is specifically about LTS releases. Take Hardy, for example. Hardy, being an LTS, has three years support, whereas the non-LTS releases (like Intrepid, Jaunty, and Karmic) only have 18 months support. In both cases the support is pretty much limited to security fixes and does not include application version updates except through the Backports repos. Even then, the Backports repos offer a limited number of application updates often not including the application updates that I most desire (like the newest versions of Openoffice), and they are accompanied with the proviso that they are not supported by the Ubuntu team. This the background, now let me get to my complaint.

There are two main types of Ubuntu end-users, which I'll refer to as enthusiasts and lay-users. The enthusiast does not mind reinstalling or upgrading to a new version of Ubuntu each release cycle. In fact, they often start early with one of the alphas to watch the progress of Ubuntu development (this is what I do). They are generally careful about backing up their data and they generally are more familiar with the risks of updating than lay-users. Lay-users, on the other hand, don't want to have to worry about reinstalling or upgrading an OS, they just want what they already have to work, and they want to be able to easily update certain applications when newer versions come out. Not only are less aware that updating can go wrong in any number of ways, and often do not properly back up their data, they don't want to spend hours updating, and they definitely don't want to trouble-shoot anything when things go wrong. But the only way they know how to get new versions of applications is if they upgrade or reinstall.

This is where LTS releases come in, or at least where I think they should come in. Given their extended support they would be perfect for lay-users - except that their support is way too limited. Security patches are needed, but they are not enough. LTS releases also need to be able to allow for the easy installation of new versions of programs. This way lay-users can install an LTS version of Ubuntu, and then not have to concern themselves with the six month release cycle of the Ubuntu developers. They can live content with it until a new LTS version is released.

Solutions?

In my view, LTS releases should work in the following way. As it does now, an LTS release should offer a stabilized API for developers to work with along with a continuous supply of security fixes for the supported software, but it should also widen what it considers supported software for an LTS release to include newer versions of important programs that are released through the LTS lifecycle. I'm thinking of certain programs in particular, ones like OpenOffice, Firefox, and Pidgin. There should be an option to upgrade to the newer version of the programs, but no compulsion to do so. In other words, Ubuntu should offer a way to update to the newest versions of certain programs (which programs can be a mtter determined by demand) without relying on more risky options (one's they don't often even know about) like installing PPA repos, using getdeb, or waiting for backports to offer it (which it may never). Various versions of these programs need to be officially supported in an LTS release so that users can gain the benefits of these updates without having to upgrade their entire OS or rely on less safe deb repos. In this way, lay-users can be happy with an LTS for years without becoming frustrated that they are not getting the latest applications developers have to offer. Let the developers worry about the changes in undelying OS, this is largely invisible to most lay-users anyway. Lay-users care mainly about the applications, and they want an easy way to keep up with new releases of them.


No comments: