January 4, 2010

Installing and updating software

UX (User Experience) in software made major leaps since 1990s. Back then computer users needed to be quite tech-savvy, and nowadays pretty much everyone can figure out what to do.

But there is one area where UX deteriorated significantly. It's installing and updating applications. I still remember the time when to "install" something I needed to stick a floppy into FDD and press "Enter" in Norton Commander. But now too often I have to spend 5 to 30 minutes to run a program.

Especially bad it is on Linux, even though some Linux distros (e.g. Ubuntu) have grown to be almost casual desktop systems. There is quite big paradigm difference between Windows and most Linux application installation. On Windows, if you need to install a new app, you are supposed to go to the app's website, download installer executable and install it. In Ubuntu (from now on, I will focus on Ubuntu distro instead of Linux in general since I have more experience with it), you are supposed to use Synaptic or command-line apt-get to get the software from repository. Repository vaguely resembles smartphone application catalogs such as Android Market, where you can find most applications for the platform; the biggest difference, though, is that while on smartphones developers submit their apps and updates to the catalogs, on Ubuntu distribution maintainers take care of new software and updates. Another difference is that while every smartphone platform has one major repository regardless of version of the handset, every version of Ubuntu has its own separate software repository, which in general case only has the software versions that were released prior to that Ubuntu release (and only maintenance updates are getting into older repositories).

The result is horrible - you are either stuck with old version of the application, or have to jump through hoops set up by app developers to get the newer version. Here are some of my worst experiences in the quest for the newest versions.

  • Openoffice.org. My work desktop has only OpenOffice.org 2.4 available in repository, so I have to go to the website for the 3.1 version. I click "I want to download" and a big button "Download now!", which gives me 175Mb file OOo_3.1.1_LinuxIntel_install_wJRE_en-US.tar.gz. The fact that it is archive rather than normal Ubuntu .deb installer is already suspicious. I double click it and see bunch of files:





    I can vaguely guess that "setup" is executable file here, so I should extract this stuff somewhere, go to terminal, change file permissions, and run this script. Probably many other OpenOffice users won't really figure this out.
    I go back to OpenOffice.org website and see that they gave me "OpenOffice.org 3.1.1 for Linux". Folder "RPMs" shows that they didn't pay attention that I use Ubuntu, the system that prefers .deb packages to .rpm; also, they gave me 32-bit version instead of 64-bit. I go to "Other versions" and download "Linux 64-bit DEB" package (which they should have given me in the first place). Alas, it's again .tar.gz with myriad of files and "update" (but no "setup") file in the root.



  • Psi. I've just installed the newest Ubuntu 9.10 at home, and wanted to set up my favorite IM application - Psi. The repository (while being the newest) had only version 0.12, while the website already has version 0.14. But unfortunately, the Psi developers rely so heavily on the repositories maintainers, that they do not even offer Linux binaries for new versions at all. So the only solution is to download sources and compile them, which is complete non-starter for most users. I compiled them and installed, but now the Psi launcher on the task panel has generic icon, because the authors either didn't include the app icon in the sources package, or hid it too well.

  • The crown for the funniest update check goes to VLC media player on Windows. Every time I open a movie to watch, it pops up a question "Do you want to download VLC 1.0.3?". I click "yes" and proceed to watch a movie. After I close VLC, and open a new movie, it asks "Do you want to download VLC 1.0.3?" again! There is no button "Yes and never ask me again". And, funnily, the installed version of VLC is still 0.9.9, and somewhere on my hard drive there is a distributive of 1.0.3.

  • The crown for the most difficult install goes to OpenTTD. While they provide a normal .deb installation file, installing it with a double-click is not enough; to launch the game, you need to download two more separate archives, and spend some time figuring out where to extract the files from them.
These are just the most recent annoying examples. There are much more. E.g. if you happen to use Ubuntu Hardy (the latest LTS release), then you are stuck with Firefox 3.0, while FF 3.5 is available for a long time already, and for the web browser being up-to-date is absolutely crucial. Ratio of Linux software that is distributed in haywire way, making every user to spend 10-30 minutes on figuring out installation, to the software that is installed in one click, is staggering. Windows software has its own problem of updates - most of Windows software never checks for its own updates, and the apps that do check are doing it in the most possibly annoying way (remember Java, Adobe Acrobat and Apple software updates).

I can only be happy that more and more of apps that I use are on the web, where installing and updating are non-issues, and my tool for accessing them, Chrome, is always up to date.

Comments 6 comments
kirik17 said...

same problem with perl. i got tired of versions\repos\pakages mismatch.

it's difficult not to mention cosy UE of mac os. linux, or even windows have some shortage of things like that http://developer.apple.com/ue/

Roshan said...

Take a look at ZeroInstall: http://0install.net/ - it's an interesting approach to solving the problem you describe.

mursya said...

very interesting to read!! keep not only software, but your blog up-to-date!!

Anonymous said...

Ihar, for ubuntu there's a lot of so-called PPAs (just a repos, in short) at launchpad.net. There's also search by them (https://launchpad.net/ubuntu/+ppas?name_filter=<softwaretitleyouwant>)

Anonymous said...

It looks like Google Chrome advertising :-) You should understand, and I believe you do, that you're talking mostly about open-source, non-sponsored software like VLC and OpenTTD, of course. However, most of commercial software for Linux are free of problems you've described above.
Look at Lotus Symphony for example. My point is, that only companies/products who cares about users will win, others going to die. Except for very specific products like App servers, Databases but thank's God, competition is still alive.

1 said...

Roshan, thanks - I will try to use 0install, it looks nice. Though it doesn't have OpenOffice.org or Psi; it has OpenTTD but can't run it.

Develop7: I know about PPAs; the problem with PPAs that usually they are supported by some independent 3rd parties, not by developers, so there is too much noise and too little useful stuff there. E.g. there is no PPA for Psi, and there is no OpenOffice.org PPA for Hardy.

dmatsynin: Sure, only products that care about users will win; but it would be sad if that means that open-source non-sponsored software should die. There is nothing special about open-source that forbids them building .deb file as Chrome team did. It's just a sad state of art that authors of non-commercial software care much less about users.

Post a Comment

About Me

Ihar Mahaniok

Software Engineer at Google.
Information geek.
Originally from Minsk, Belarus.
Now living in Zürich, Switzerland.

ihar@mahaniok.com
@mahaniok on Twitter


Subscribe to my blog in Google Reader, by e-mail, or add [info]mahaniok_en to Livejournal friends.

Or just follow me on Buzz and Twitter, I post updates there:

Follow on Buzz

Friend Connect Readers

You are welcome to join.

My Friendfeed Profile Me on the Web

Twitter


Friendfeed

Disclaimer

My posts or my opinions don't necessarily reflect the position of my employer.