Friday, March 20, 2009

Ubuntu vs Windows install

I just finished working on a temporary project helping a relatively new company split their computers off their former owner's network.

Although this effort was poorly organized and used brute force rather than the available Windows technology, that's not what this post is about.

The manual Windows install process is horrible. The install process for most Windows software is horrible, and the horror is magnified when you are doing this over and over. The problem isn't the technology, it is the implementation. The Ubuntu Linux process is far more user-friendly.

When installing XP, there are too many places where it halts progress and demands your attention. Worse, these halts aren't grouped together, so you have to keep paying attention to the screen. It might be 30 seconds to the next pause, it might be 15 minutes.

The progress meter is nearly useless--It has a very inaccurate guess at the total remaining time, but gives you no clue how long before it needs your attention next.

Installing software is just as bad. The typical install would involve clicking on the setup program to launch it. Then there's a sort of welcome page, to tell you that it is about to do what you just asked it to do. Next is a license page that you have to agree to, then a "start installing" button. At the end, there's a "finished" button to click. before moving to the next software.

Some stuff needs to be installed as the user. Some needs to be installed as admin. Some stuff needs admin privileges to install, but has to be installed as the user. There is no sudo command, and "run as" isn't a good substitute.

User files are scattered all over.

I realize the license page is unavoidable with some commercial software, but it should be combined--Running the install program should give a single page with as many options as will comfortably fit--one of them should be "do you agree to the license", another should be "quit when successfully installed". The only way you should have more than one page is if there are too many options to fit, or if certain options depend on others.

Adobe was a particularly bad setup--In addition to installing the software, we had the same "welcome, license, install, quit" process for each of 5 additional font packages for different languages.

Ubuntu has several versions of their install disks. The standard is a live CD that launches a fairly complete desktop as soon as you boot up with it, with one of the options "install". While installing with this CD, you can actually use the computer for other things. A few older computers that can run the installed version of Linux can't run the live CD--for them is the alternate, which is similar to a Windows install. Tonight I just installed Ubuntu on an older PC, using the "alternate", because it was handy. It asked a handful of questions in the first 5 or 10 minutes, then it started installing. When I came back, the install was done, and it was asking to install updates. Even better, the system is fairly complete at this point--It has the basic set of software that most people need.

Adding software is also simple--Find the software in Synaptic, click the box next to it. You might get another box to click to resolve dependencies. After you have chosen every program you want to install, click the "apply" button. Synaptic will install all the programs you selected without any more bother.

If you are reinstalling Linux, the user's home folder has the software configuration files for that user--When you restore the home folder, you are restoring all their settings.

I've been spoiled by the way EDS and GM had their systems set up--Almost all their computers are less than 3 years old, with carefully managed software and competent admins. I was thinking that Linux was close, but not quite up to Windows in ease of maintenance. I was wrong--In a less carefully controlled environment, Ubuntu is not only equal to Windows, it is considerably superior. I'm pretty sure that if Ubuntu were in a similarly controlled environment, it would be similarly successful.


  1. Oxford University's atmospheric physics department has been moving over to a centrally-controlled system of Ubuntu desktops, and it does indeed work rather well.

    For my own use I'd rather have a Mac on the desktop and Gentoo on my servers, but the Ubuntu solution would be fine if I couldn't do that.

  2. I'm too cheap for Mac, and I haven't tried Gentoo-Ubuntu was considerably better than Mandriva when I switched, and is good enough that I'm not compelled to try a different distro.

  3. i've tried Gentoo, but only very superficially. it's extremely different from Fedora, which is the other major server OS in my small-ish company, and different enough that i don't see sufficient advantage to keeping it; i'll be phasing it out as soon as reasonably possible in favor of whatever Fedora is stable enough at the time.

    Ubuntu server is acceptable, if only because i have Ubuntu desktop experience at home. i'm still not nearly as familiar with APT as i am with RPM, which does have an impact.

  4. I've used both APT and RPM, but never on distros from the same year. My understanding is that Apt does a better job with dependancies, and I'm not sure what the advantage of RPM is supposed to be, other than the Red Had standard.

    I don't run a server, so I'm more interested in desktop performance.

  5. Agreed, 100%.

    We have a new Asus netbook, and #1 Son has been installing different distros (he's 16). He wanted it dual boot, but eventually gave up as it was too hard to set up XP so that it ran decently.

    He's tried 3 (or is it 4?) Linux distros in the same time.

    It's astonishing how easy it is to get up and running with Linux these days.

    BTW, we really like eeeBuntu - the UI is very nicely optimized for the small screen. I'm looking forward to blogging from it on the next vacation.

  6. My understanding is that Apt does a better job with dependancies, and I'm not sure what the advantage of RPM is supposed to be, other than the Red Had standard.

    Yum, the package manager used by Fedora, is very similar in use and capabilities to the apt tools used by Debian, although Debian fans (most university IT staff I know) disdain it. I've never much liked Debian's system, finding apt and especially dpkg to be a pain to use. It's really just a matter of personal preference, though.

  7. in fairness, Yum seems to be slower and clumsier than the apt line of tools; i'm getting the feeling that much of what apt does natively had to be bolted onto rpm as an afterthought.

    then again, in my own defense, rpm seems to be comparatively easier to learn; apt packages and repositories, not to mention all the countless more and less redundant tools to interact with same, seem like a snake's nest in comparison.

    this matters when you want to seriously administer a network of several servers in a corporate setting. i'm routinely building new, custom-designed RPMs for installation on my own network, tweaking existing packages with my own patches, and run a mirror of the Fedora updates repository for the version i focus on. this saves great time and effort in my sysadmin duties, and wasn't all that hard to learn (back when i learnt it, years ago).

    i'm sure the equivalent duties could be done with apt as well, and possibly done even better, but the learning curve seems much steeper than it was with rpm.

    if i were starting out afresh, i'd tell myself with the lessons of hindsight to learn Debian/apt instead. but i'm not, and nor are the database and web servers on my network.

  8. Yum seems to be slower and clumsier than the apt line of tools;

    I've not found it to be so.

    i'm getting the feeling that much of what apt does natively had to be bolted onto rpm as an afterthought.

    Debian did indeed have a workable system for installation and dependency management long before Red Hat introduced Yum. Updating Red Hat systems used to be horrible before that.