Ubuntu is probably the most famous Linux distribution worldwide on the desktop. Since its start in 2004, the distribution was downloaded millions of times. The Ubuntu community has grown up largely as well. Today, there are tons of other Linux distributions which are based on Ubuntu. They definitely made a success in creating this huge userbase.
But recently, things seems to be changing. With distributions like Mint taking the lead and Ubuntu not introducing any new stuff as usual. And not earning any net profit for the last fiscal year. Here, I would like to highlight some points to consider by Ubuntu/Canonical which – IMHO – to remain remarkable.
I have been using Ubuntu for 6 years. I’ve developed software on it as well as Linux distributions. I’ve read hundreds of articles and wrote hundreds other about Ubuntu. Those are my thoughts from a technical point of view.
Dropping Mir For Wayland
Although it my seem “unrealistic” at first, especially after all of this effort on Mir. But if you think about it for a moment. You may realize that currently, it’s the best option available. We have been waiting for Unity 8/Mir since 2013. And nothing came yet. I am writing to you from the second beta release for Ubuntu 17.04 and the interface/Mir isn’t even close to be marked as ready. Even if it was released in 17.10 or 18.04, it would take it years to be considered as stable as well. Just like Unity when it first appeared.
Currently, nobody is working on Mir except Canonical. The teams behind GNOME and Qt/KDE have already ported their environments to Wayland and started working on making it stable. With Ubuntu and Unity 8, the port is not even complete. And still can’t be used at all for daily purposes. It also won’t be the default in 17.04 (but optional).
There are a lot of companies who are working together on Wayland: Intel, SUSE, Red Hat, Samsung, Collabora.. Many more. So, forking the software and working alone is not a wise idea. It will make you use lose valuable changes (since Mir is technically very different now from Wayland, it can’t be merged).
Remember also that the resources which Canonical has are limited. Developing the interface, the display server, the desktop applications, the compatibility layers between Phone and desktop, the server and enterprise tools (like Juju and others from Canonical).. All of this is taking a lot of resources which a small-sized company like Canonical can’t handle.
I know that if the company does such thing, all the effort it did for the last 4 years would be gone. But losing the effort of the last 4 years is definitely better than keep losing it for the next 10 years.
Stop Patching Stuff In Downstream
When Ubuntu developers find a bug / create a feature in an open source software. Usually they don’t send it back to the upstream. The GTK+ library for example is patched to be compatible with Unity interface (by the way this is what caused the bug of having 2 titlebars on some windows a while ago under Unity). The kernel is not the vanilla one as well, it includes Ubuntu’s own set of patches (like aufs and many others). Nautilus is also patched. There are a lot of other examples.
It’s not just about the code, it’s even about translations. Ubuntu uses its own translations (which are provided via launchpad.net) instead of the translations coming from the upstream. So, you may notice a different translation for the same application on Ubuntu and another distribution because of this.
I really would appreciate getting all the programs just exactly as the original developers released it. In that way, if any thing goes wrong, it would be very much easier to work with the upstream to solve it on all Linux distributions than to investigate what each distro is doing alone.
It would also give us a better code. Patches in the downstream are not usually a good idea unless necessarily needed and in the very rarest cases. It will allow everybody to benefit from those changes.
Same can be said about using upstream projects instead of downstream solutions if they were better. Dropping Ubuntu Software Center for GNOME Software was definitely a great step in the right direction. Dropping the old upstart for systemd was also a move in the right direction. Stacking with the same good technologies in all major distributions is a nice thing to have in Linux ecosystem.
Change The Release Cycle
Honestly, releasing a new operating system every 6 months and supporting it only for 9 months is a waste of effort. The LTS versions only come every two years and they are supported for 5 years. Wouldn’t it be a better option to just develop those LTS versions and work on them every two years? Imagine the stability the operation system would get. And imagine the resources the company would save if moved to such cycle.
Linux Mint understood that a while ago. They have announced that they will only build new versions of Mint on the LTS versions of Ubuntu. Making their remix more stable. Saving their money and providing better support for their users.
This would also allow Ubuntu to extend its LTS period. Instead of just 5 years, it could be extended to 7 or 8 years. Since now they are working only on those versions every two years.
Create a Functioning QA Team
There are some bugs from version to version in Ubuntu which makes it seem that it wasn’t tested by a quality assurance team. For example in 16.04 I remember that if you install the OS with other operating systems on the hard drive, it would not detect the other systems (you had to run update-grub manually). I also remember that an upgrade for MySQL server in Ubuntu 16.04 broke hundreds of websites and services around the globe for people. I personally faced it and it sucks.
Apport, the famous bug tracker in Ubuntu. Still, after 6 years of usage. It’s 100% the same as when I met it for the first time: always reports about errors which I never notice or see. Every 5 minutes there’s an error message coming from the unknown.
The QA operations for Ubuntu images are held on iso.qa.ubuntu.com, but clearly, it’s not used at all. No real QA tests are run for the Ubuntu images. The number of testers may be 5-10 people. The ISO files we download from Ubuntu.com are not tested well enough.
Compare that to the Fedora QA and we’ll notice a difference. A huge one, actually. There are hundreds of testers there who are running tens of different scenarios to see if anything broke in the ISO files. If they discover such thing, the releasing date would be delayed. This never happened in Ubuntu.
Leave The Phone
We all love it. What would be more exciting than Ubuntu Touch running smoothly on our mobiles? A full Linux desktop running inside this small device unlocking a lot of possible functionalities for end-users. Unfortunately, it never saw the light as was expected. Ubuntu phones are still very limited and the development of the system decreased a lot in the last few months.
The smartphones sector is definitely a large market. But a investing everywhere, in desktops, in servers, in enterprises and in mobile is wrong on many levels. There’s no unite identity for the company. You can’t start from zero and develop everything you would like to develop. The normal classic business model would simply be investing in a specific sector, working on it, getting enough profit out of it and then moving to another sector. This is not what’s happening here. It’s the other way around.
The results are already unsatisfying, the project is hanged and unfinished. Years passed since they announced it. It still didn’t enter the mass-production globally yet. Only on a limited number of devices in some EU countries.
Think about it: Ubuntu is investing and putting money everywhere. They develop a display server, server tools, enterprise level support, mobile systems, IoT devices, desktop applications and a lot more. Is this is a healthy ecosystem to have? I doubt.
By leaving the sectors which the company can’t focus on. It will be able to give more attention to its main thing. Raising up the quality of services it provides.
The Bottom Line
I really would like to see Ubuntu rocking it up. But the current strategy of the company and the decisions it’s making is not helping. Ubuntu/Canonical really made a lot great stuff for Linux. They were responsible about converting millions of people around the world to Linux and the free software. That’s something not to forget.
However, to remain remarkable and innovative. A lot of change is needed. Those were my thoughts after this experience with Ubuntu and its products. Share your thoughts in the comments.