home .. forth .. colorforth mail list archive ..

[colorforth] Re-connecting


Ray, Lysse, Chuck and all the rest,

Ray, thank you for the kind words and concern.

Have a new URL for my web page as noted in Lysse's previous posting:
http://www.modest-proposals.com/
It was up-to-date as of last July. Will try to update it to current soon.

Chuck, for an operational code description of USB, download, say, the linux
2.4.26 kernel sources, unpack them on a vfat (long filenames) or NTFS drive
with winzip and do a search for 'usb' directories. You will find them under
'Documentation', 'drivers' and various 'config' sub-directories.

Sorry about the absence. Half of it was because of the changing world, a
physical move and a change in ISP policy (i.e. my web site went down 2 days
after I cancelled my DSL account and I dropped the colorForth email
subscription). The other half was inspired by colorForth networking. I spent
most of last year doing a research project on what it really takes to create a
'communications hub' that is usable in the real world.

After Chuck released the networking code, I wanted to know just what it would
take to turn colorForth into a comm hub. The results of my research is a
little project called Xwoaf (X-Windows On A Floppy). It has the basic network
enabled linux 2.2.25 kernel, unix command line utilities (busybox), uClibc, a
Kdrive Xvesa server and libtinyX11, a Win95 clone window manager, a windows
explorer style of X file manager, X text mode web browser, Outlook express
clone X email client, X xlib only text editor, basic X 4-function calaculator
and a couple of utilities. All of this fits on a 1.44M floppy. And I cheated:
aside from the basic X-win primitives for drawing lines, fonts and
color filling (enough to do the X-window interface), graphics are not
supported. My anal-retentivity was pointed at functionality not graphics.

The Xwoaf project home page is located at:
http://www.modest-proposals.com/Hacklin.htm

This is not meant to start a discussion about Xwoaf on the colorForth email
list. If you wish to discuss Xwoaf specifically, send me email. If more than
that is necessary, then maybe another email list could be started.

The results of my 'research project' is that it is a non-trivial undertaking
to turn colorForth into a real-world usable 'communications hub'. Real-world
use (defined as something my mother could use) requires a robust error
handling framework around _everything_.

To state the largest problem with usable software I'll quote Mark Twain
who said it best: "It's hard to make things fool-proof because fools are so
ingeneous.". For an extreme illustration of what I am talking about, try
firing up the colorForth editor and just typing your full name in (not
entering it as text, just the characters in your name). Talk about a random
generator. Users don't know "you're not supposed to do _that_!".

In Xwoaf, the web browser and email client were the worst. They have error
prone interfaces on three sides: the user interface, the network interface and
the content interface. All three have to be addressed or you are just building
uber-geek toys. 

The web browser binary is about 120k and the email client is 230k.

The text mode web browser, retawq, is a well written C app so should be
amenable to implemnting in colorForth as a 12k binary plus strings. 

The email client, a hacked version of elmo, is object oriented C and is half
garbage. So the binary for it should also be about 12k.

Both target sizes are assuming _only_ a 10X reduction in code size. 

The text editor is 35k and can be replicated in about about 3.5k. See my web
page about Twee Editors:
http://www.modest-proposals.com/Twee.htm
for rantings about editors.

Oh, yeah, one other thing. The floppy comes with two drivers for different
NICs. The Xwoaf Kit has 66 drivers total, some for NICs, others for
filesystems. The user can likely create a software configuration that runs on
his current hardware, not find the hardware that runs the specific software.
Functional code for different NICs are available.

The Explorer wannabe file manager has no cognate in colorForth so we will just
pass on that for now. BTW Just how does one manage downloadable content, web
pages, cache and hundreds of megabytes of email on colorForth?

While in pursuit of Xwoaf, ended up playing with half a dozen different web
browsers, from the inanely simple (and totally unusable) first programming
efforts of someone in Java to hacking around in Firefox. Kylie, Chimera,
BrowseX, hacked links and Dillo were all hacked on to get a feel for web
browsers. Simple static html browsers are usefull in an emercency but totally
unacceptable for main use. retawq is as close to _small_ and useable that I
could find.

Email clients that present usable tree structures are almost all huge. elmo
with ncurses is the smallest working client I could find. Everything else is
much larger _and_ require a couple of megabytes of libraries. The sizes quoted
above are 'optimal' for anything real with a usable graphical interface. Don't
think elmo is a good model, maybe 'spruce' or an early 'sylpheed' would be
more appropriate for example models.

My other recent personal project is a hack of Feather Linux which includes
jwm (fast and small win95 clone wm), isforth, Firefox browser (among others),
a gcc 3.3.4 dev system plus source for all of my projects. It now fits and
runs from a 128Mb USB thumb drive with room for more. This is my working
toolbox for projects that communicate with others. Would post the iso but
don't have the bandwidth.

I would love to see colorForth become the basis for a killer comm hub, but
don't have what it takes to implement the individual apps. My attunement is
systems analysis not application specialist. Could convert all the apps from
text based to X but couldn't/wouldn't write an HTML browser or email client
from scratch.

I have been out of work for too long. The main reason is because I would
rather program alone than deal with social interactions. However, it is
becoming painfully apparent that in order to earn a living I have to be able
to communicate my results to others. color forth will remain my private
obsession and prototyper while I use the USB linux for professional results.

Regards,
Terry Loveall

---------------------------------------------------------------------
To unsubscribe, e-mail: colorforth-unsubscribe@xxxxxxxxxxxxxxxxxx
For additional commands, e-mail: colorforth-help@xxxxxxxxxxxxxxxxxx
Main web page - http://www.colorforth.com