My Experiment with Edubuntu
My son’s computer is an old PII 450Mhz with 320mb RAM. It was running Windows 98. Definitely on the wrong end of the washtub curve, but hey, it’s what I’ve got for him and I haven’t gotten around to getting something better for him. I keep telling myself I’ll get a better computer and give him my computer as a hand-me-down. I just don’t feel like spending that much cash right now.
Now you have to understand my son is five. Being that I’m a geek, my son has been using computers basically as soon as he wanted to, which was just before he was three. My son was primarily using Windows-based computers because that’s what a lot of the educational games I was aware of ran on.
These days a large chunk of what my son does is go to various websites like Disney and Nick Jr. that use lots of Macromedia Flash and a little bit of Shockwave. While Ubuntu can certainly get either the GPL version of Flash Player or the Linux version of Macromedia Flash, there is no version of Shockwave on Linux.
Before I could attack the Flash/Shockwave problem, I had to attack the sound problem. My son’s computer has an old ISA-based SoundBlaster 16 sound card. For whatever reason, Edubuntu 5.10 (a.k.a. Breezy Badger) didn’t detect it on installation. Furthermore, it seems that none of the Ubuntu-based distributions include any kind of tool to manually select a soundcard if one wasn’t detected. Fortunately, I am familiar with Debian-type distibutions and, with Google’s help, I was able to hack the system to detect and use this card.
Now that the hardware is out of the way, the software part of sound needs to be sussed out. Linux has four different ways to do sound:
- OSS — The Open Sound System is the oldest mechanism for supporting sound. Most Linux apps that support sound support this. There are conflicting opinions about how deprecated this mechanism is. However, the big problem OSS has is that only one program at a time can access the sound card. That makes it difficult to, for instance, allow an audio player to be playing a podcast while your instant messenger application plays a notification.
arts — The KDE Window Manager solved the problem of multiple programs accessing the sound device by abstracting it into a userspace program that would receive all the sound events, mix the different sounds in software, and present a single stream of data to the sound card. For applications that were not written with arts in mind, but rather are OSS compliant, arts provides a wrapper application to trap all calls to the sound device and maps them to arts.
EsounD or ESD — GNOME provided it’s own solution to the multiple programs accessing the sound device problem. ESD functions in a very similar way to arts, but it is done in a different, incompatible way. ESD also has an OSS wrapper application for apps that are not ESD compliant. ESD is used in the GNOME desktop on Ubuntu/Edubuntu.
- ALSA — ALSA is a rearchitecture of the sound system in Linux. It includes new hardware drivers for sound cards. In addition to supporting a wider variety of cards, ALSA supports the ability for more than one application to access the sound card simultaneously, though for some unknown reason this is not the default configuration. ALSA also includes an OSS-compatibility layer as well as a wrapper program to allow OSS-compliant applications to use ALSA directly.
The biggest problem you run into is all of the applications you use must be configured to use the same sound system. You can run into huge problems if you try and mix OSS with either arts or ESD. Firefox and associated plugins tend to use OSS, whereas I can configure Crossover Office to use ESD. This caused my web browser to hang when both things were active. The solution I came up with was to ditch the native Linux Flash and simply use Crossover Office for both Flash and Shockwave.
This brings up two major beefs I have with most of the distributions out there, if the average user is to have a hope of using Linux:
Sound and multimedia in general needs to “just work” out of the box. Users don’t want to think about things like multiple apps accessing the sound card, sound systems, or anything else. They just want it to work. Same goes for the ability to actually view multimedia content. The ability to obtain and install the necessary codecs should also be totally transparent to the end-user.
Common plugins like Flash, Shockwave and Java need to be easy to install and actually work once installed without lots of tweaking.
Now I’m told that Linspire has a lot of the multimedia stuff built-in. Haven’t tried it, but maybe I will in the near future.
Now, back to Ubuntu. The interface on Ubuntu was not bad. My son was able to use it after showing him a couple of times. I like how you don’t use the root account to do stuff and it’s all set up to use sudo. When you do something that needs root in the UI, you are prompted for your own password. You can easily set up accounts in the UI and ensure they don’t have administrative rights. This is one thing the Mac does right, it’s nice to see that Ubuntu got it right too.
Though I think Ubuntu isn’t bad, and I’ll leave it on my son’s computer for the time being, I’ll stick with Gentoo where I’ve got KDE using ALSA directly without using arts. Yes, it’s a constant battle to be up to date, compiling everything anytime an update comes out, but my system is stable, and it’s not like I do large-scale updates while using the computer. There is some advantage to having more than one computer.
Of course, now that I think about it, actually installing Windows can be just as painful if not moreso. The issues experienced are different, but the overall experience is just as painful. But I think where Windows still has a leg-up on Windows is availability of compatible hardware and software.
That isn’t to say there isn’t a plethora of Linux-compatible hardware or software. Linux software can be found on the net cheaper (and in some cases more legal) than Windows software, but you certainly can’t find much Linux software in the store beyond possibly an old boxed copy of RedHat or SUSE.
Hardware is a different issue. It turns out that because many hardware manufacturers use similar components with relatively open hardware specifications, many pieces of hardware that are “Windows Only” will actually run okay under Linux too. The problem you run into is that, even within the same manfacturer and model, there are variations in hardware used. So, for example, one revision of a D-Link DWL-650 I bought for a laptop may run on Linux and use the madwifi drivers, another revision of that same card will use a different chipset will either not be supported or use a completely different set of drivers. To make matters worse, you may not know what you bought until you get it home and open the box since the necessary identifying information isn’t always printed on the outside of the box.
Probably a good strategy for buying hardware for a Linux box from a store is to figure out what kind of hardware you need, make a list of the two or three things sold there that might fill the need with as much identifying information as possible, then go home and do some Googling. You’re not only likely to find out if it will work or not, but you are likely to find some experiences, both good and bad, with the hardware. Valuable Intel to have. Then go to the store and buy it, or buy it from someone online.
Would I recommend a Linux desktop to anyone? For most people, I would. If all your doing is surfing the web and doing word processing and spreadseets, it’s a great choice. Properly maintaining your PC takes work, no matter what the OS. It’s a lot harder to mess up a properly installed Linux box, however, and far less spyware, viruses, and trojan horses can affect you.
If you’re willing to spend a little more money for a better overall computing experience, get a Mac. You’ll get many of the same benefits as Linux, though hardware is more pricey. However, it is worth every penny.