I am an on and off Ubuntu desktop user. I also run a few low key servers on Ubuntu but nothing production grade. I have several reasons for that and itches me that Ubuntu has the right vision but I would do the execution a bit different.
In this post I give some friendly well meant advice to the Ubuntu guys how I would like to see their product offering improved. I can summarize it in 4 areas:
- Three desktop versions
- Excellent applications
- Certified hardware
- Integrate desktop and server offerings
Three desktop versions
Ubuntu has current two versions; LTS (long term support) and a bleeding edge 6-month release. The LTS version is meant for corporate desktops or people who want a stable version. The 6-month release contains all the new stuff and is bleeding edge.
In my opinion this split does not work in practice. The LTS version is always behind in both application and hardware support from the moment it is released. It only receives critical bugfixes and security updates. But while this release is out hardware platforms keep on moving forward and new major versions of applications are released.
The moving hardware platform breaks hardware compatibility of LTS on new hardware or bugs in existing platforms are not fixed. You cannot just buy a laptop and hope that LTS wil work without problems. It makes buying hardware for LTS either a hit-or-miss scenario or a hard research exercise. More on this in point #3. Either way not recommended for either corporate buyers or consumers.
LTS only makes sense when the current and latest hardware platforms are supported and Ubuntu makes sure new these just work. Bugs in hardware drivers should be fixed and released as soon as possible.
The same applies for releases of major software packages. Consumers like to have the latest bells-and-whistles. You cannot just wait 2 years before your browser or your office application is updated. Especially in the Linux world where so many applications do not receive bugfixes — or even security fixes — after 1 year of the release.
For corporations it makes sense to control the application environment and only move when there is a need. It avoids user training and collaboration problems when there is a homogeneous application environment. For corporations it should be a controlled choice to update the application environment. This also hooks into my point #4.
For these reasons I would like to see 3 desktop versions. These are:
- Ubuntu Next Generation – contains bleeding edge software and is for advanced users only. The name Next Generation is because it will show how the Next Generation of Ubuntu LTS looks like.
- Ubuntu LTS consumer version – contains a stable software environment but with the latest hardware drivers and major user applications.
- Ubuntu LTS corporate version – defaults only to move the hardware platform and applications only by choice — of the IT department. See also point #4.
To keep up with the moving hardware platform some interesting changes required which are not easy. It would require either to keep up with current kernel releases, backporting drivers or creating a kernel-independent driver model. All three options are hard but does not make it less important.
For any operation system the applications are one of the key differentiators and Ubuntu has 35.000 of them. Even though the Apple App Store has more it is still key to do 10 – 15 applications really well. Apple does the same. The Iphone or Ipad come with a set applications which work really well and give the product instant usability. Ubuntu should do the same. A lot of applications are ok or good or average but none of them are really excellent.
Ubuntu should invest in making a top 10 of really excellent applications. These top 10 should ideally be also the top 10 most used applications on Ubuntu. My guess is that this would include a web browser, office applications and an email application. Ubuntu should set the standard in UI/UX design in the Open Source world. These applications are the crown jewels and need to convince users to come to Ubuntu. Unfortunately besides the web browser there no real winners in these categories.
A problem is also that a lot of Ubuntu homegrown or heavilly sponsored user applications are really not that good. For instance the Ubuntu Software Center looks slapped together. The same applies for Gwibber. These applications really need improvement in the UI/UX department. Another examples are Evolution or OpenOffice. Two applications which are essential for any serious Operating System offering but are really not that good. They are average or ok but definitely not excellent.
Ubuntu should really hire some UI/UX designers and actively participate in these software projects to bring these applications to the next level.
Up until this day it still baffles me that Ubuntu does not certifies hardware for use with their Operating System. Any Ubuntu user who wants to buy a new computer or peripheral wants to know what to buy. It is also a great incentive to show to hardware manufacturers that there is a market for Linux compatible hardware.
It baffles me because it so easy. Just buy the latest hardware from a few vendors and test/tune/tweak until Ubuntu Just Works on this hardware. If there is a major problem because driver support is missing then write a driver or publicly announce that this hardware will not run on Ubuntu.
The current crowd-sourced solution on Ubuntu.com is nice but more geared towards advanced users and not consumers. There should be a list of a few laptops, desktops, printers, etc per manufacturer on Ubuntu.com which work with Ubuntu and Ubuntu will make sure they keep working. The selection should be intelligent like a 13-inch and 15-inch laptop together with 1 budget and 1 workstation combined with 1 inkjet printer and 1 laser printer. Maybe add a netbook or two if the manufacturer makes them.
Ubuntu marketing department should have field day with this and should make this a honor badge. If they are really good it can even convince hardware manufacturers to see this as an important asset for their hardware. At that point they can do the grunt of the work themselves and maybe even add Ubuntu Compatible sticker on the hardware itself.
Integrate desktop and server offerings
This topic is aimed at improving the corporate offering of Ubuntu. Ubuntu leaves a big gap by not tightly integrating their desktop and server offerings. Ubuntu Landscape tries to cover this but is only very limited. Moreover it does not integrate the desktop and server very tightly. It is just an additional layer on top of Ubuntu. Moreover it is only available via Canonical. Not very practical to win over organizations except some big corporations who rather outsource their deployment anyway.
The tight integration of desktop and server is a marriage to be made heaven. It has proven very successful for Microsoft. Corporates like to be able to manage and roll out large number of desktops. To manage a large installed base of desktops you need to have set of tools available. This set of tools is available on Ubuntu but are not easy to setup or manage. Here is an excellent opportunity for Ubuntu.
I talked in point #1 about a corporate release of LTS. The reason for this is that corporates would like to manage the roll out of desktop applications or updates. They need to verify updates or applications are compatible with existing hardware platforms and do not require user training. They need to be able to force security updates to desktops or make new applications available on a per desktop basis. Other options include custom non-Ubuntu managed software release of external software.
But it does not stop here. Corporates need to manage configurations and manage authentication / authorization on a network. Or roll out VPN access to specific users.
The Ubuntu desktop and server versions should integrate out of the box. By installing a Ubuntu desktop version there should be an option automatically configure it for a corporate network including authorisation / authentication and software package management through company servers. Desktop configuration for a corporate network should be automated. Just imagine that there is automatic configuration of email settings, network printer and network storage.
Ubuntu servers would come out of the box with image bootstrapping functionality to create servers and desktops based on custom build images. Any Ubuntu version would incorporate a tool to create such an image with a push of a button. Again all these tools are available on most Linux distributions including Ubuntu. The problem is setup. It should be made easy and reliable.
A great example is Ubuntu One. Just imagine when corporates could create their Ubuntu One environment on their networks. It definitely makes sense on a corporate network to move everything to the network and make desktops fully interchangeable. No more problems with lost files when desktops break or get lost. Just pick a new desktop, boot it up, login and you are done.
I think there is still so much opportunity for Ubuntu but I feel there is so little progress. I sometimes think that Ubuntu has too much focus on particulr details like Unity or 3D effects and looses sight what really could make Ubuntu successful. Their eye of detail has brought them on top of the Linux distribution lists but to conquer the world they need to make bigger changes. I can only hope that some of this on the road map of the product guys at Ubuntu. Until then I think I will keep on being an on/off user which is fine. It just bothers me that so much potential is left unused. But maybe I am just impatient.