Showing posts from September, 2007


I am going to take a short break from posting because:
I need to concentrate on preparing course material for the new semester, andI think I’ve amassed enough stuff here now that I need to convert the site to a more browseable interface.There’s lots more to come. Be back soon.

*nix and GUI

When you install a Windows or OS X system, you get a big, integrated package that gives you a graphical user interface, a desktop with a trashcan, a system of standard windows, etc. All the bits that make this happen seem to magically work together to give you the OS's experience, and it all happens without the user having any idea exactly what's going on.

This is so not the *nix way. Part of the *nix philosophy is to write something that does one thing, but does it well. Then that one thing gets used in a bigger thing that does one (bigger) thing well, and that thing used in another, etc. This is a fairly common development methodology, but the difference when it comes to *nix is that all the little bits that make up a Big Thing are released as independent entities, very frequently with access to the underlying source code.

This has a few interesting ramifications. The biggest is that it facilitates iterative refinement of sub-modules. Since a sub-module is a distinct entity fr…

Ground rules

I was having a really tough time getting things going until I found an article on adapting Ubuntu to low memory situations at Ubuntu’s community documentation site. The basic idea outlined there is to install a text-based system and then manually add lightweight GUI stuff and other applications. One cool thing about this is that we don’t need to limit ourselves to an Ubuntu based install: since Ubuntu is itself based on Debian, it should be possible to do with Debian what the article suggests doing with Ubuntu. The article also mentions the possibility of installing Xubuntu and then replacing the heavier items with lighter alternatives.

So, overall this gives us three different promising paths to follow:
1. A text-based Ubuntu install plus a manually installed GUI environment.
2. A text-based Debian install plus a manually installed GUI environment.
3. A full Xubuntu install with unnecessary stuff removed and heavier items replaced with lighter alternatives.

Approaches similar to the above…

Why Debian?

At the moment, I am working exclusively with Ubuntu and Debian as bases. Why Debian?
Because Ubuntu is based on Debian.Because Debian is solid.Because Debian isn’t in a big hurry to offer bleeding-edge (and therefore slightly rough) packages.

Why Ubuntu?

At the moment, I am working exclusively with Ubuntu and Debian as bases. Why Ubuntu? Because of the major distributions I have investigated, Ubuntu is the most consumer-oriented.

Why Linux?

There are quite a few gratis operating systems. Given the wide range of options, why settle on Linux?

It’s an obvious question. Here are some obvious answers:

1. It’s free. For the present purposes, gratis is more important than libre.
2. It’s active. There are millions of monkeys pounding out millions of lines of Linux-compatible code.
3. It’s supported. In particular, precompiled binaries of *nix programs are widely available for Linux. (Compile-it-yourself may be a good option for compugeeks, but it is not a solution for a consumer-oriented system.) Also, there are lots of community-based forums (fora?), wikis (wikia?), and the like (lika?) offering technical assistance.

Good reasons for not using Linux are discussed at the swax project website. In spite of these reasons, I feel Linux holds the best potential for the present purposes. Time will tell…

Linux as Desktop OS

I suspect one of the biggest problems with Linux for personal computing* is that *nix operating systems were never designed for this application. *nixes have their roots in large-scale Systems managed by officially sanctioned System Administrators. This has produced a *nix way of doing things, at heart of which is “Thou Shall Let Only Thy SysAdmin Manage Thy Resources.” And just to the right of that is, “Text, man… it’s all in the text.” The *nix way of configuring things is through text files. Lots and lots of text files, in lots and lots of different places, many of them controlled by the God SysAdmin.

*nix’s infatuation with texfiles is both good and bad. It’s good because it’s easy to open/edit/fix/replace plain text files. You don’t need a special configuration editor or “regedit”-like program to maintain your system. It's bad because hacking text is usually not the most intuitive way to configure something and it makes it easy to introduce syntax errors. It's even more ba…


It would probably be a good idea at this point to outline in greater detail what the goals of this little undertaking are. In no particular order:

A Windows 98 alternative. As mentioned on the About page, the primary goal here is to find or develop an operating system for Intel-based machines that are too limited in resources to support Windows XP (or, by extension, Vista) or Canonical’s Xubuntu (or, by extension, Ubuntu).

Windows 98 UI reproduction not a goal. While the goal is to find an OS that is an alternative to Windows 98, reproducing the Windows 98 user interface is not a criterion. I consider it acceptable for the user to have to change the way he or she is used to doing things, in much the same way one would need to adapt to OS X from Windows or vice-versa. By the same token, a solution that resembles Windows 98 or XP (or Mac OS X or OS 9 or any other system for that matter) is fine as well.

Usability. The fact that reproducing the Windows way of doing things is not a goal does…