Sunday, February 27, 2011

Getting Out Of Its Way

I'm comfortable with command line interface (CLI), as many of us who have been computing since the early days are. From CP/M to DOS and into the various Unix/Linux branches, I've learned most of the basic and some advanced commands to get the job done.
Today, I still use CLI, usually on a couple of my rather vintage machines (my Tandy 102 and 200 and my Atari Portfolio) as well as my 1993 ThinkPad 500, which happily runs DR-DOS and BasicLinux. I like these operating systems because they are light, nimble and offer you an extraordinary amount of control over not only the software but the computer itself.
That I am comfortable doing so is a testimony to the fact that I have spent years studying and playing with these things, and to a certain extent hesitate to give the older ones up. It allows me to use computers that would otherwise be thought of as obsolete.
Not everyone shares my enthusiasm for the arcane, of course.
Nowhere is this a greater concern than in the task of trying to help disadvantaged families gain access to the Internet. Yes, they can use Windows or Macintosh, but a simpler approach is needed. What must be remembered here is that the primary task is helping the studen's and their families get this access. First and foremost, that is the goal.
Let's keep that in mind while we look at the subject of interfaces and operating systems.
What is really needed is an operating system that has a very small learning curve. While it is true that both of the major OS's in the world of home computers, Windows and Macintosh, are fairly intuitive, the simple fact remains that some skills are still necessary to do some of the more complex tasks.
What is needed is the approach that mobile computing has taken. Apple's iOS and Google's Android get out of the user's way once they are running. Both are somewhat light with system resources and very intuitive. However, both are limited, and in the case of iOS, proprietary. Windows Mobile platform supposedly offers the same, but they appear to be headed in the same direction as their Windows CE operating system, which held so much promise but failed to live up to it.
Sugar, the desktop environment that was initially developed for the OLPC XO-1 laptop, holds more promise than ever in providing an environment that stays out of the way of the user. While you can still learn how to customize and modify Sugar, it is not necessary to know how to do so out-of-the-box, so to speak; anyone can pick up an XO-1 and pretty much figure how everything is supposed to work.
Closer to the goal, but still not there. Perhaps it is too daunting.
The perfect system would run so far in the background as to be invisible to the user; they don't know, nor do they care. Or even need to.
It would be intuitive, and evolve with the user; as their skills grow, it allows more access.
They would truly own it. It would not be proprietary nor licensed. Once they have it, they have it. Would support be available? Yes. How would that be done? I haven't a clue at this point.
But that is the direction we need to be heading in. It has to be about what the computer is being used for and not about the computer itself.

Monday, February 21, 2011

No Child Left Behind (On The Internet)

A few months back, Jamie and I were trying to get our girl Breanna's computer to work with an education website that her school mandates. Now, please note; mandates. In order for her to complete a good amount of her coursework, she had to use this site. Furthermore, parents can monitor their child's progress there as well. We had moved Breanna's big Toshiba laptop to Ubuntu 10.4 due to an infestation of colossal proportion and everything seemed to be working fine.
Except for that site.
It seems that it was having a hard time with Linux, even though we did meet the minimal browser requirements (Firefox 3.5). In fact, when the computer was running Windows Vista, the Firefox install refused to run the site properly as well. She had to use Internet Explorer 7. In all other aspects, this two year old laptop met the minimum requirements, yet it still had issues.
On a whim, I decided to try an install of Google Chrome for Ubuntu... and it worked, even though Chrome is not on the list of supported browsers.
This rather concerns me.
Being as this is a public school, my mind immediately latched onto the notion that this is, in effect, a sort of tax on the parents. It has been a given that in order for students to succeed today that there needs to be a computer in the house. Now, thanks to sites like this, not only do there need to be computers with these families but they need to be fairly up to date as well. At a minimum, this may incur a once every few years outlay of a few hundred dollars. For most families, this is not a big deal, but what lousy messages it sends -
1. That computers have to be replaced while they are still fairly new. In our mass consumption society, this is already a problem, and we really should be moving our future generations away from that model.
2. That you need to have major operating systems, namely Windows and Macintosh. I hold nothing against either of these, but it certainly determines the future of the computing in that household.
3. It locks the online site down for everybody but those who have the correct, usually demanding and always weighty, software.
4. Lower earning working class families are reduced to using other computers available to them. This usually means library computers, which typically can only be used for thirty minutes, and in today's economy, many libraries are being forced to close early due to budgetary concerns.
In short, this all boils down to a very small but loud message; if you don't have the means, you've got a problem.
I don't want to sound rhetorical, but this is extremely unfair. At a time when the US has fallen behind in many scholastic measures, we don't have the foresight to consider that a sizable chunk of the school-going population lacks the means to access necessary tools. While not quite the same as denying pencils and paper to these students, it is in fact not too far from it.
This is a bit of a tragedy.
What can school systems do to rectify this?
If they are already locked into this service, there really is very little.
However, there may be a different approach.
Imagine a CD. You boot from it, and it has its own OS (a Linux, say; to be honest, I'm biased, but for good reason). This OS has only the tools needed in order for the student to access the educational websites plus some light websurfing. In addition, it has a small office suite.
The student has to have either a floppy drive, USB thumb drive or SD card as well. This will store the configuration data (encrypted, of course). It also backs up a copy of the configuration data to the website. This removable data is also needed to copy documents such as reports; again, this will be mirrored on the web.
The OS and browser software needs to be stripped down to increase its performance, since chances are it is going to be used on machines that are not quite up to date, and in fact may be more than just a few years old.
There should exist a seamless integration between this software and the website. To be certain, on the existing sites, a fair amount of testing will be needed, but future sites should be written with this in mind.
For those of us with computers that are less than five years old this seems like much ado about nothing. Surely, this is tilting at windmills, right?
I have surfed the Web with a computer that has 16mb of RAM. I routinely use one with 96mb of RAM and a 166 MHz processor. It can be done.
And it has to, for those amongst us who have no choice.

Sunday, February 20, 2011

A Tiered Internet

I few months back I wrote about what older computers should be capable of. Now, let's look at the other side of the equation and explore online access in its purest forms. And yes, that is meant to be plural.
We know that older computers can do pretty much everything we ask them ; that they did these things before and we were happy should pretty much prove this. I know of a few people who access the Internet on what can only be described as truly ancient computers, and to them I say bravo. The question becomes one of access; what are you willing to live with, what are you willing to live without?
If we look at the Internet as a tiered system, it makes more sense. This is not the same tier system that has been proposed by the ISP's, let's be clear, though it certainly has much in common.
Multimedia Internet - At the top is going to be the bulk of high bandwidth sites, the ones that are going to tax software and hardware and therefore require newer operating systems and equipment. These are sites like Facebook, YouTube and any site that relies heavily upon video and software such as Flash.
Basic Internet - The next layer down are more static sites, ones that may have plenty of graphics but much less Flash and video usage. Some modern protocols may be found here, but they are not as common and tend to be a bit more subtle. A good deal of the Internet still lives here, the bulk in fact.
Another layer down we find the limits of older HTML. Everything here is static, though animated GIF's Static Internet - are still found and have been here since the Internet exploded in the mid-1990's. The old GeoCities lived here, as did most of your original DIY sites.
Simple Internet - Down further. This is the earliest incarnation of the World Wide Web, the Internet today. Completely static, few images, and those that can be found exists in the form of links.
Shell Access - Finally, the underbelly; this is the very backbone of the Internet. You can access it through a terminal application, and be prepared to know Unix commands. There is an amazing community here of hardcore fanatics, and you can still do quite a bit here, including email and surfing the Internet.
Now, let's compare these layers to the categories I created in "You Got On The Internet How?!?".






Multimedia Internet




Basic Internet




Static Internet




Simple Internet




Domain of Shells




0-8 years



x

x

x

x

x


9-13 years





x

x

x

x


14-18 years







x

x

x


19 + years









x

x

So, again, it comes down to whatever you want to do. Knowing what your computer is truly capable of is the trick. Chances are, it is capable of far more than you think.

Sunday, February 13, 2011

LiteBook Revisited

As I move forward past the ThinkPad 760XD project, I once again find myself tinkering with the ThinkPad 500, and again, LiteBook has been resurrected. This time, moving forward with the BasicLinux install.
So far, aside from the original mouse problem that was so prohibitive, things seem to be moving along nicely. With a full 12mb RAM at my disposal, the floppy version of BasicLinux works fine. There are some network issues that will no doubt need to be addressed (possibly even wireless), but beyond that, it seems to be capable.
Which is all ironic; I've gone full circle back to IBM machines and back to that project that seemed to be a dead end.
Curious as to where this leads.

Sunday, February 6, 2011

The Race to the Bottom - Installing Ubuntu on the ThinkPad 760XD

The ThinkPad 760XD is a marvelous laptop. When it was devised, it was the flagship of IBM's ThinkPad 700 line. Large screen, solid construction. Typical IBM thinking went into it. One of the most unusual features is a keyboard that tilts up when the laptop is opened. By pushing the latch releases forward, you can lift up the keyboard and have access to the internals, so swapping things like the hard drive and battery are a relatively easy. Apple has aesthetics, IBM ease of maintenance.
This unit has an interesting history. It was part of a batch of government surplus, and found its way to the local thrift store. The operating system it came with was a very stripped down Windows 98, so stripped down, in fact, as to be inefficient.
There is also a very strong possibility that this ThinkPad is an ex-NASA unit, based upon the licensing of the original Windows 98 software.
Sadly, we will never be able to confirm that; the Windows install went buggy (go figure).
This brought up a few possibilities. I own a Windows NT install, but it would not look very good on the ThinkPad. Jamie and I also have some Windows 98 disks, but I really didn't want to go there again. So, instead, I decided to try something very daring; a stripped down Ubuntu install, complete with X Windows.
First, let me state that this is not something that the faint of heart or the impatient should try. It will take a long time to do the actual install, and then some basic linux skills to fine-tune it.
I have had some success with minimal Ubuntu installs before, though. While a regular Ubuntu install requires, at a bare minimum, 256mb RAM, I managed to get one custom install, Ubuntu 6.06 Dapper Drake with IceWM, down to 48mb RAM on a 233mHz Compaq laptop.
When I began to play with Ubuntu on older machines, I discovered a number of great resources. The first was the Ubuntu Minimal RAM How-To page at Bino na Biso.
Finally, for inspiration, there is K Mandla's site, "Motho ke Motho ka Botho".
Aside from K Mandla's experiments, this machine is even lower spec than ones the previous two sites dealt with. In a sense, this was unreasonable; this was a race to the bottom.
The 760XD has more RAM than the Compaq did at the beginning, 64mb, but not only a slower processor (Intel Pentium MMX, 166 mHz) but also it cannot boot from CD. Suffice it to say, a little cleverness would be needed.
The first step was to find a boot disk. I chose the Smart Boot Manager floppy. It was a little deceptive when put into use; initially, it reports an error when trying to boot from the CD. Press enter again (and again, if necessary), and it will boot.
But what OS should we use? With a machine of this age, it would be tempting to install something like DSL or Puppy Linux. Both are fine operating systems, but I desired something a little different. Tiny Core Linux was another possibility, but had issues of its own.
No, I wanted Ubuntu again.
Once more, I chose the Ubuntu 6.06 minimal install disk. Prior to actually performing the installation, I inserted my wireless card, in this case an Enterasys RoamAbout. Now I began the installation; boot Smart Boot Manager, select CD (hit enter twice, ignore the error). Load Ubuntu start screen.
At the prompt, go for a "server" install. Automatically, it senses that there is not a lot of RAM here. There are a few things it wants to know; what language, what keyboard, etc. Then, it prompts for the partition.
I should mention that it was at this stage that one of my latest minimal install distros failed; for some reason, 9.10 has a problem with finding the hard disk. 6.06 did not, and actually seems to work better with older equipment (if anybody from Canonical is reading this, please keep this in mind).
Now the real installation begins, and is going to take a long time; around 2 hours. It might appear to stall at around thirty minutes; it hasn't. It was at this point that I literally nodded of (it was very late when I began) only to awake over thirty minutes later to discover that the install was continuing. Eventually, you end up with a usable command line Ubuntu.
Following the instructions at Bino na Biso, I went in as super user or root...
sudo su
and uncommented the source file for Aptitude using vi -
vi /etc/apt/sources.list
For the novice, once changes are made, the command to write the changes and exit is ":wq" (don't use the quotation marks).
Run apt-get update, and we're ready.
Piece of cake... right?
Not quite. But, it would be going much faster now. While the initial install took over two hours, this would take around thirty minutes.
To get the applications and environment I wanted, I used the following verbose command-
apt-get install xorg icewm XDM xterm abiword DFM kazahakase
This would give us X Windows, the IceWM desktop manager, the XDM display manager (all of which are really needed to make the desktop usable). You'll need XTerm to launch the applications in this very simple environment. AbiWord is a nice lightweight word processor. DFM is a file manager.
Most important there is Kazehakase, the web browser. More on that in a bit.
Once these were installed (took around thirty minutes), I launched X Windows for the first time...
startx
...and was greeted to an off-center screen that was pinched. What went wrong?
Well, it has to do with the video card. The ThinkPad 760XD uses a Trident video card. Normally, the Trident driver found in Xorg has no problems with this. However, as it turns out, there are issues with older versions. In this case, a couple of lines in the xorg.conf file needed to be changed. Again, we'll use vi. Make sure that you're logged in as super user (just sudo should be fine) and use the following command -
vi /etc/X11/xorg.conf
There were two things that I wanted to modify under the monitor and screen sections, the vertical refresh rate and the color depth. The default value range for the vertical refresh is 43-60. I bumped the upper value; 43-75. Moving down to the screen section, the default color depth was 24; I dropped it to 16 (this probably wasn't necessary, but I wanted to eliminate any problems).
Save file, reboot.
This time, it booted to the XDM login screen. Once my username and password were entered, it took me to a full 1024x768 resolution screen. You can use XTerm (you'll see it in the menu bar or by right clicking on the blank desktop) to open applications, just by typing in their names. DFM makes this a little easier if you desire, just open it the same way.
Back to Kazehakase. This lightweight branch off of the Mozilla tree is very light and spry. However, right out of the box, the version that Dapper uses is a bit out of date and needs one last file to run. I discovered this by trying to log in to Google. You'll need a personal security manager. The one that works for Kazehakase is, of course, Mozilla's. You can now do this from XTerm in the comfort of X Windows. Go to root (sudo) and apt-get install mozilla-psm.
In the end, what I ended up with was a computer that is a bit slow (but still faster than my clamshell iBook running OS X 10.2.8) that is able to access the Internet and can do light chores. To say the least, I'm pleased. There are real possibilities here in this race to the bottom; stay tuned.
And we shall dub it "Wushi-Buntu..."
(I want to thank the people who really pioneered the ideas here and gave me the necessary notions. I may not know you personally, but to Ingo, K Mandla and PsychoCat, many thanks for the inspiration and information).

Friday, February 4, 2011

Racing to the Bottom

I am here right now courtesy a 13 year old laptop running Ubuntu. The laptop is is an IBM ThinkPad 760XD, one of their premier models when it was released. It is typical of IBM's thinking, for lack of a better term. Everything is easy to access; it's like a Volkswagon. Apple had aesthetics, but IBM had ease of maintenance down to an art.
At any rate, 166 MHz Pentium MMX, 64mb RAM, and here I am.
More later...