Category Archives: Software

What I Love To See Changed In Ubuntu

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:

  1. Three desktop versions
  2. Excellent applications
  3. Certified hardware
  4. 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:

  1. 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.
  2. Ubuntu LTS consumer version – contains a stable software environment but with the latest hardware drivers and major user applications.
  3. 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.

Excellent applications

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.

Certified hardware

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.

Last thoughts

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.

The train wreck that is Google Android

Google Android makes great inroads as the alternative smartphone OS next to IOS from Apple and Blackberry from RIM. Companies like Samsung and HTC are putting their weight behind Google’s mobile operating system.

Bill Gurley of Benchmark wrote an excellent analysis of Google’s strategy behind Android called “The Freight Train That Is Android
In short Google wants to direct customers as fast as possible to their web services platform and uses Android to build a huge bridgehead. They give it for free because the money for them is in selling advertising. And they make enough money that they can afford giving Android away for free. This is of course great for handheld makers since they do no longer have to invest in their own software development. His conclusion is that Android benefits the customer since they get great software for the cheapest price possible. And this is a sad conclusion.

The reason that I do not support his conclusion is that because of Android a lot of handheld manufacturers loose the capability to create operating systems on their own. It brings back the market of mobile operating systems down to 3 or 4 major players. With the success of Android you can bet on it that RIM will go under or reposition themselves with an Android offering themselves. The first signs are already there since their tablet is compatible with Android applications.

Google using their enormous weight behind putting Android on the map and this will eventually lead to loss of innovation in mobile operating systems. Handheld makers will loose their capability to create operating systems and are at the mercy of Google for innovating on the software platform. In the end consumers will loose because of this. Of course Android has made it possible to make a major leap in smartphone capabilities but this is one-time leap. In 4-5 years we are stuck with a very boring mobile phone market.

Moreover free does not exist. The development of Android has to be paid somehow. In Google’s case it means the advertisers are paying for it. In the end the consumer will be pay for that. The revenue model is just different. The only argument you could make is that Google is doing the development for multiple handheld manufacturers at the same time which lowers the cost. But this is the price of innovation. Innovation does not come cheap. It needs competition to thrive and competition costs money. What Google does is the leveling the competition for a short term gain. Status quo is often cheaper.

Android seems to be getting a lot of support from the business crowd here in the US. And to me this looks like the US is trying to create another Microsoft out of Google. A monopolist who tries to its best to vertically integrate the business while moving possible competitors to the side.

I think this is sad.

App store has risk to become a burden for Apple

The expectations are that by March this year the App Store will surpass the iTunes store in number of downloads. I am confident that the associated revenue will surpass music sales pretty soon too. What this says about the music business is not where I wanted to talk about in this post.

I want to talk about that as the apps economy is growing to enormous proportions it brings a significant risks for Apple. The applications bring new functionalities and services to their platform. With that I ask myself two questions:

1. What happens if Apple incorporates new functionalities into iOS and makes a particular group of applications redundant?

2. What happens if Apple wants to introduce a new service for which different competing services are available?

Incorporating functionalities inside iOS

There is a serious risk that any enhancement to iOS will make a certain set of applications redundant. What happens then? Especially developers who make their living from selling their applications on the App Store will not be amused by such a move.
If Apple uses the App Store as inspiration to set the development roadmap of iOS then it can lead to serious consequences. For most it can lead to developers moving away from the platform and thereby reducing the ecosystem of the platform.
The success of the platform and a healthy application economy supporting it becomes more important to Apple from a revenue perspective. For this reason it will restrict the options Apple has on extending the iOS platform at some point.
Another risk is since Apple controls the complete platform from top to bottom it can be seen as monopolistic behavior. This is a route Apple definitely does not want to go into.

At some point the whole App Store ecosystem can be more of a burden to Apple than the success of today predicts.

Introducing new services by Apple

Apple has developed a healthy set of services around the platform. Music, movies, TV series and applications can be bought, rented and downloaded to their iphones, ipods, macbooks etc. But there are competitors on the market who wants access to the platform. The platform represents a huge market opportunity and Apple likes to be their own services to be successful to bring in the most revenue.

At this moment Apple allows competitors access to their platform. I wonder if all competitors are welcome. It is not completely clear since this part of the market is not really transparent. The negotiations between companies of this size are behind doors. For instance Apple holds back on allowing Flash to be ported to the iOS platform or stopped competing browsers to enter the App Store.
At the same time Amazon delivers books through their Kindle application while Apple sells books through their own store.

It is logical from Apple’s perspective to protect the revenue stream for their own services but it could be seen as monopolistic behavior. The iOS platform holds a significant amount of the market and closing access to competing services can be a serious problem for competitors and consumers.

Conclusions

The Apple controlled ecosystem of the iOS platform brings serious risks for Apple in the future. At this moment they will feel euphoric about the success but there is a significant change it becomes a burden for the creation of new products and services.

If Apple makes the wrong decisions it can be seen as monopolistic behavior and this can have serious consequences. I am sure Apple’s ecosystem is and will be on close watch with the market regulation organizations in different countries.

The only option for Apple is to tip toe through any changes and new introductions. And I wonder if that will slow down Apple in bringing new products and services to the market.

Apple walls its garden for a reason

On the internet you read a lot of complaints on Apple product philosophy to tightly control the end-user experience. And it is true. Apple does have strict policies about what is available and what is not available. Even further when in doubt they rather choose to close / stop the activity then to allow it and see what happens.

Of course this creates a lot of unhappy geeks out there but of course this stuff is not meant for them. The products are meant for consumers. And most Apple consumers are happy with their gear.

We can all remember the days we all used Microsoft Windows. And you know what for better and worse Microsoft’s platform was open for all. They of course had their secret APIs and stuff but still anybody could make an application available for all to install.
I can remember that I kept on reinstalling Windows several times a year because Windows would get slow, unreliable or stopped working all together. This was mostly because I played around with so many different applications. But not to forget; Windows was very vulnerable to viruses, worms and Trojan horses. These little buggers made use of this open and easy accessible platform to flourish and propagate.

For me a close analogy are cars. In the past it was normal that certain large percentage of car owners actually knew how the car worked and even were able to fix problems with the car. Nowadays cars are so hard to maintain that even the professional mom & pop shops have to specialize to keep up. Consumers maintaining and fixing their own cars are very very low in numbers. The only people I know who work on cars are working on cars of 20 years and older.
This analogy also applies to electronic equipment. In the past you would get the electronic schematics with your television. This helped you how to fix a problem with your television. Of course you do not get this information anymore.
For computers it is the same process. In the past computers — and especially desktop computers — could be completely disassembled by the owner. Parts of the computer could be replaced or upgraded. It was normal to bring your computer to your local computer geek to upgrade it every 6-12 months. Necessary to play the last computer games or latest version of Microsoft Office.

Computers nowadays are (or should?) reliable pieces of equipment. Users expect it to keep running for several years. They do not want to upgrade to be able to play or run the latest versions of software or games. A computer is a tool like a television, alarm clock or your refrigerator. Nothing more and nothing less. This means that geeks need to find another hobby or use a different car. Linux is an alternative.

Apple sees this clearly and applies this vision to their product line. I think it is a very successful strategy.

Let Android prove it can be different!

Is Ubuntu contributing to Open Source or not?

Mark Shuttleworth wrote an interesting piece as a rebuttal on complaints from the community that Ubuntu and Canonical are not contributing enough. He states that Ubuntu is contributing by polishing, bug fixing and bringing Linux to the people.
The critics say that only very little code is written by Canonical or Ubuntu community as a whole which flows back into the underlying projects like Gnome or X.org.

And I have to agree that Ubuntu has too much focus on their own products. It is their right to do so. There is no legal obligation that they should. But they cannot claim that they are really contributing to the Open Source community. Their behavior is to look the upstream projects as suppliers. And they do not go into partnerships with them. Instead they fork and extend as they see fit. Without active participation of Ubuntu there will be a divide between Ubuntu and the upstream projects since the vision and goals are never part of the upstream projects. The community at large will go in their own direction and if that does not match up with the direction or vision of Ubuntu the divide will only get bigger.

But there is also the moral obligation. That is what I read in all the posts made by critics. The community expects more back from Ubuntu. And to be honest I think that with 300 developers on staff it is really not impossible to have 30 people working exclusively on Open Source projects. It may sound not very business like for Mark but without the continuous improvements of the underlying software Ubuntu could not come to where they are today.

And as a regular Linux desktop user I am still not convinced that it is good enough for the masses. There is still much to do. The upstream projects could really benefit from the insights and vision of Ubuntu.

So please Canonical hire some important Open Source developers and let them work on their projects. What would have happened if Linus Torvalds would spent his time on porting the Linux kernel to some obscure CPU? Would the Linux kernel be where it is today?

My desktop is back on CentOS

For a while I have flirted with Windows 7 and Fedora 13. I spent in total 4 months on these two OSes combined. Before I used almost exclusively CentOS 5 on my desktop. And I have come back to CentOS.

The question is why? And to me the answer is clear. I feel at home on CentOS. It is not fancy, it is not up to date with the latest releases of applications like OpenOffice and the software repository is quite limited. But it works fine. Moreover it is stable as a rock. I do not mean this in the sense of crashing but in the sense of keeping your configuration working. Fedora needs an update every 6 months. After the upgrade it needs work. I always have the feeling that I waste my time to tweak a Fedora machine to my liking since it will be gone / changed in 6 months again. Moreover my battery was draining quite quickly under Fedora.
Windows 7 is a problem because it does not offer working sound support for my good ol’ Thinkpad Z60m. Moreover it is unreliable with auto suspend. It sometimes works and sometimes it does not. Try to debug that on Windows. Good luck!

On CentOS everything just works and I can easily add the missing pieces like tpb (thinkpad button support). It suspends and the battery life is great. Everything works again as it should.

Red Hat is currently running the RHEL6 beta program. Beta 2 just came out and I am looking forward to see the final version as CentOS 6. It is scheduled for the end of the year.

Companies who are control freaks

One of the major drivers behind innovation is openness. Through openness knowledge is shared, reused or build upon to create bigger and better things. And this openness is at risk. Companies – but also universities – are becoming control freaks trying desperately control the use of their knowledge, products and content. This is a serious risk for keeping pace with innovation and moving society as a whole forward. The examples are abundant: In this article I will highlight some of them.

One of the most visible examples is digital rights management (DRM). You will find it everywhere. It is part of every television sold, every copy of Microsoft Windows, ebooks and game consoles like the Playstation or Xbox.

Using DRM companies control the use of content. The user does not own the content anymore but buys a license or right to use it. The user may only use the content based on license bought. This seriously restricts the options the user has for the content. Without technical circumvention a user cannot for instance copy a DVD to their Ipod for viewing on the go.

Sometimes this leads to very odd situations – especially from the consumer point of view. A prime example is what happened with the ebook 1985 of George Orwell sold by Amazon. At some point it was determined that Amazon did not have the right to sell this ebook. Amazon promptly send out a recall command to all their Kindle devices which erased the ebook from these devices. Just imagine you were halfway through the book you thought you owned and then it suddenly disappears. Of course this led to some very disappointed customers and Amazon had to apologize publicly for their mistake. But it also showed clearly the problem with licensing content and not owning content.

In the past you could lend a book to someone, but this also not possible with ebooks. The companies selling the ebook restrict the copying of ebooks. This is a serious restriction for sharing knowledge. And overall ebooks are sold for the same price as regular books which you do own and can lend to a friend.

Another example are closed ecosystems around products like you see with Apple products or in the game console market. The barrier of entry to create an application (like a game) on a platform like Sony’s playstation or Microsoft’s Xbox is quite high due to high cost of their software development kits. It is just not that easy for a developer to create an application for these devices.

And although the openness of the Apple product line (mainly Ipods, Ipads and Iphones) is much higher than in the game console market developers still need to pass the nod of approval to be able to offer their software through Apple AppStore. The requirements to get your application approved are not very clear and applications are rejected for unclear reasons.

Companies create these closed ecosystems to control the use of their own products.

But industries grow based on openness. Standards and open platforms enable other companies (or organizations or individuals) to take part of the ecosystem. Perfect examples are GSM standard for mobile phones or MP3 for digital music. You can buy your music at one store and play it on different players. Without these open standards the industries would have grown much slower.