The Boston Diaries

The ongoing saga of a programmer who doesn't live in Boston, nor does he even like Boston, but yet named his weblog/journal “The Boston Diaries.”

Go figure.

Saturday, Debtember 04, 1999

Sailing the Corporate Seas

Once you have signed a contract, all of the vital decisions are theirs. They hold all the trump cards. The myth of course, is that if they violate the terms of the contract you can sue them. It is a myth because it takes a lot of money to sue an individual successfully and a ton of money to sue a company successfully and that brings me to the second hard truth about companies. No company is ever going to pay you enough money to sue them successfully.

Dave Sim, Address to Pro Con '93.

It's important to read that. Never mind if you aren't in the Comics Industry; what he says applies to any intellectual property (IP) you may create.

Sunday, Debtember 05, 1999

“How much for just the student?”

But I would feel a lot better about free trade if we had decent schools, and a LOT better if we had schools WORTH $8,000 per pupil per year. Give me $800,000 and 100 randomly selected kids, and I guarantee you I'd give them a better education than they are getting from the school system almost anywhere.

—Jerry Pournelle, on the state of the Educational System.

NOTE: All monetary quotes are in U. S. Dollars.

What could be done with $800,000 per year for 100 students? I've given it some thought and I do believe it can be done and still pay teachers a decent salary. It's a different model from what is currently done and I'm not sure if anyone with a vested interest in the current system will go for it (read: mostly administrators) but it might be possible.

The current problem is overcrowding—with up to 40 students per class, it is difficult to teach, much less maintain control, over the students. The best ratio, 1-to-1, is very cost prohibited, but a decent compromise, twenty students per teacher, is doable and isn't that cost prohibited.

My proposed system breaks down to each student paying $1,000 per year per class. Class size is restructed to at most 20 students. That gives at most $20,000 per class per year to teach. Give $15,000 to the teacher (I know, $15,000/year isn't enough to live on, just give me a moment) leaving $5,000 per class left over for books, materials, maintenance of the facilities (room).

Note, that is per class, which is one hour per day, five days a week for 36 weeks (the yearly schedule I grew up under). For every class a teacher teaches, she receives an additional $15,000/year, with an upper limit of 3 classes per year (for a yearly salary of $45,000/year, which I know a lot of teachers would love to recieve).

With a student taking an average of say, 5 classes per year for $5,000/year (less than the $8,000 now) that means that $3,750 goes for teachers' salaries, leaving $1,250 (per average student) to cover other costs. If a school has 1,000 students, that still leaves (remember, the teachers are already paid) $1,250,000 per year per school to run it.

With this payscale, each teacher will only be responsible for at most 60 students per year, they teach for three hours a day, leaving another five set aside for grading, preparing lessons and additional instruction for those students that may need it.

Also, make it a bit easier for those that want to teach to teach and even if they can only teach one class, they still make $15,000/year, in addition to any other job they may have.

There are still problems with the idea, but none that already don't exist.

Monday, Debtember 06, 1999

It's just a question of focus

I'm still playing around with my silly digital camera, trying to get it focused properly. The problem with the camera is that it's one of these fixed-focus cameras that has gone out of focus.

Well, I shouldn't say it's a fixed-focus—more like a semi-fixed focus camera that you have to tear apart to focus.

The assembly itself consists of two cylinders, one fixed to the CCD mount, the other one slides inside the first. There's a spring/screw combination used to move the inner cylinder (which contains the lenses) relative to the outer cylinder. There is no access to this screw from outside the unit—you have to open the unit up (six small machine screws) to get access to it.

The problem is that the focus assembly is only on one side of the cylinder, not both. And to focus the unit properly you need to have the inner cylinder as far in as possible. There's a lip around the inner cylinder that keeps it from going too far in and therein lies the problem.

Tighten the focus screw down too tight, and the inner cylinder tilts. With only one side being forced down, the other side is still free and because of the lip preventing the inner cylinder from slipping all the way in the outer cylinder, you get this tilt as you tighten the focus screw down.

Did I mention you need the focus screw pretty tight?

So the end result is that part of the picture is out of focus and it's real annoying. Adjust the inner cylinder so that the tilt is gone, and the image is out of focus.

I suppose half is better than none. It's still annoying and I'm still playing around with it. I mean, the camera itself is fine and I'd hate to chuck what was a US$400 camera just because of a cheap plastic assembly.



Unless you are 18 or older, or are offended by images of nude women, I'm afraid you'll just have to skip this amusing ad parody of the Palm Pilot. I can't find an image of the original ads so I have no idea just how risque they were. Most of the links I tried following say the images are in the current issue of Wired but there is no indication of what the current issue of Wired was at the time (indications are April of '99 but hold me to that). I'll resist the urge to rant about linkrot.

Tuesday, Debtember 07, 1999

A Real Conspiracy?

So I come across the The Jenni Show, which uses RealVideo as one of the formats. It's intriging enough for me to take the effort to install RealVideo on my system. Or rather my roommate's system, as he has a soundcard and I don't.

So I go to Real Video and oh, there's the latest version, only $29.95. Not sure if I'll actually get $29.95 worth out of the program, but the point is moot: they only cater to Windows. Okay, a token gesture to the Mac, but Windows. Window Windows Windows. Marsha Marsha Marsha!


I do find an older version (version 5! Current is 7. What happened to six?), download it and try it out.

The codec for this video was not found on your system, please upgrade.

Followed by:

File compression not supported.  Cannot locate the requested RealAudio decoder.

Mind you, this was trying to load up the supplied welcome.rm file that came with the distribution! Grr. But I suppose that's to be expected. But why the non-support of Linux? It's not like they never supported it before, so why the lack of it now? Could it be the current version of RealVideo isn't all that portable? Or could it be something else?

Well, they lost a sale with me, my roomate, and my friend. Not like they care though.

As you probably can tell, I'm not using Windows, nor a Mac. What I am using is Linux with an older window manager. The latest ones are just too … cluttered … for my tastes. Twm is too plain for my tates, while 9wm is way to Spartan for my taste.

A sound legacy

I was given a sound card, but I can't install it. Long story dealing with the nasty IBM PC legacy that all current PCs still live with, and what I was given was a multifunction card were the functions I don't need can't be disabled, and it would be difficult to find enough free IRQs on my system.

Wednesday, Debtember 08, 1999

Fastest Proprietary 80x86 Based Operating System

So the Slashdot crowd are raning about this new operating system called V2 OS. Since one of my many little hobbies is collecting and critiquing homebrew/alternative operating systems, I decided to give this one a try.

It seems that you can only get a binary so I can't comment on the code quality (all 80x86 Assembly code of course) but I did try to boot it. I have a spare 486 that normally runs a network monitor I wrote (one of these days I'll get around to releasing it) but hey, it's a PC and it'll spare me the trouble of rebooting my main system.

System16 code is now in control.
ERROR: Failed to retieve [sic] information on the bootdisk...[1]
Creating PartitionList.
ERROR: Failed to retieve [sic] information on the bootdisk...[4]

[sic]'s are mine

Can't quite understand why it failed. Linux boots fine from floppy on this system. The only unusual thing about the system (other than it being a Compaq 486) is the lack of a harddrive (I actually use a modified tomsrtbt distribution—it's a nice single disk Linux distribution that makes a very good rescue disk for PCs). Everything else on the system is pretty much vanilla PC.

The last “Fastest Proprietary 80x86 Based Operating System” they featured at least came with source code. A good thing because it's long gone. All the links I have to it are no longer valid. I wonder how long this one will last?


For those of you who are interested in rolling your own operating system, and if you insist on writing it all in Assembly on your typical IBM PCompatible (and the most popular type is your 32-bit multitasking operating system) please, please, do yourself a favor—avoid using CLI and STI as locking primitives. It fails miserably on SMP-based machines (which I predict will become a commoditized item, much like older 486 and early Pentium machines are now, in the next five years).

Better to use the following:

lock_for_here	db	0

	; code code code 

		mov	al,1
.spin		xchg	al,[lock_for_here]
		cmp	al,0
		jne	.spin

	; critical code here ...

		mov	byte ptr [lock_for_here],0

This actually has several advantages over using CLI and STI:

  1. XCHG locks the bus so that the exchange is atomic with respect to other CPUs on the bus.
  2. XCHG is not a protected mode instruction, unlike CLI and STI—therefore the sequence can even be used in non-priviledged code. While this may seem silly when you're writing a kernel, not every CPU has a duo user/superuser model. The 80x86 line does support four different priviledged modes.
  3. Interrupts can still be serviced.
  4. It doesn't hurt that much on a single-CPU system if it's programmed properly. Sure, the worst case is a deadlocked system, but you're careful to avoid deadlocks, right?

Better yet, wrap them up into functions. That case, if you do need to change how to lock critical sections (say if CLI/STI does prove faster for a single CPU system) you can easily change it in one location.

And it makes it just that much easier to port.

Thursday, Debtember 09, 1999

“The politics are so fierce precisely because the stakes are so low.”

The politics are so fierce precisely because the stakes are so low.

—Dr. Arnold J. Mandell

As I'm walking out to my car I notice that it seems to be farther away than normal. Sure enough, taped to the driver's side window is the following note:

Next time you park here, your car will be towed

At least it wasn't one of those self-ahesive stickers the Condo Commandos use around here. I pull the note off and go to pop the trunk when I hear someone yelling at me.

“Is that your car?” It's coming from in front of my car, up somewhere. Sure enough, there's someone from a second floor porch yelling at me. “That's my spot you parked in!”

“I'm sorry!” I yell back.

“You're not allowed to park there. You don't park in handicapped spots, right?”

“I'm sorry! I must have parked in the wrong spot last night,” I said. I hop over to the next spot. “This is my spot. I must have parked here by mistake,” I say, putting the package I was carrying in the trunk and shutting it. The man on the porch was glaring at me. Even at 50' away, I could tell.

There was a second note under the wiper of my car as well. Said the same thing. Gotta love those Condo Commandos.

Surreal upgrades

Now the package I put in the trunk is a new harddrive I picked up from CompUSA yesturday. Tower (the webserver for is running a bit low in disk space so I figured I'd put in a new drive to alleviate the problem.

Now tower is a 486SX-33MHz NCR IBM PCompatible that was given to me by a friend (otherwise it would be tossed into the garbage). Not wanting to turn down an otherwise usable machine I took it, increased the memory to a whopping 20M and installed Linux on the just barely 200M harddrive.

Yup. I'm serving up the primary web server, an online bible and friend's site on a machine that most people would otherwise toss into the garbage. It's adequite enough for what I do with it (and for four years another friend ran his company, a web hosting company, off a 486 (okay, so it was twice as fast as my 486, but it worked).

So I went to CompUSA yesturday to find the cheapest harddrive I could find. I don't need that much space.

The cheapest drive I could find (okay, it wasn't the cheapest, but it was the best price per gig) was a huge 17G harddrive for $150.

Sure, I could have probably scrounged around for a drive, but it's cheap enough to get a new one.

But it feels odd installing a 17G drive in a 486. My home system only (only!) has a 3G drive.

Why not put the 17G in my home system, and move the 3G to the webserver? Too much hassle. I had quite a bit of fun installing the 17G drive in the 486. The supplied drive cable wasn't long enough (the two drives sit side by side) but fortunately my host company provided a “just long enough” cable for me to use.

Then it was a matter of getting Linux to recognize the second drive. Enabled it in the BIOS, then had to reconfigure some settings through the BIOS (and here I'm glad the NCR had a BIOS program built in. The Compaq 486 I have here doesn't) to get Linux to see more than 500M (the CMOS had some default values which I upped using the settings from another Linux system with a 17G drive installed).

My only concern with such a huge drive is if the machine goes down uncleanly. My Linux system takes forever to fsck a 3G drive, and it's an AMD 586-166MHz system. Lord only knows how long it'll take a 33MHz 486 to fsck a 17G harddrive. Shudder.

I'd hate to think what it would do on a corrupted system.

UPDATE: I ran “time mount /dev/hdb1 /mnt” (under Unix, this will time how long a command takes to run) and found that it took 7.08 seconds in the kernel to mount the 17G harddrive under Linux 2.0.36 running on a 486SX-33MHz. Ouch.

I also ran “time fsck -f -y /dev/hdb1” (under Unix, this will check the consistency of the filesystem and make corrections. The -f option forces the program to run, even if the filesystem isn't corrupted) and it took almost 15 minutes to run. That on a clean filesystem. I'd hate to think what it would do on a corrupted system.


I've been following the various Linux IPOs and today I see that VA Linux Systems had their IPO today.. Briefly, it IPOed (can you verb a TLA? Can you verb the word “verb?” Whatever … ) at US$30 and opened at US$299. Inbloodysane.

Andover.Net wasn't nearly as inbloodysane.

Friday, Debtember 10, 1999

A License to License

Guess what? That's bunk. They haven't infected me. I'm merely using a library function in the way that library functions are meant to be used: they're an API, and you link to them. It is of no consequence whether it's statically linked at link/load-time, dynamically linked at start-up, or accessed at run-time during execution via any one of myriad forms of RPC. It's API only, not material inclusion. APIs aren't viral.

–Tom Christiansen, from an Ask Slashdot forum.

Another big old discussion on Slashdot about Open Source Licenses.

I'm not sure how I come down on this issue. The basic one seems to be that some people feel the GNU GPL is too viral, too restrictive of an Open Source license. Others feel that the Artistic License is too liberal, allowing one to appropriate code and resell it in a proprietary product. And who knows how these things interact.

I had a similar problem when I released my first Open Source package, mod_litbook, which is an Apache module, with its own license. I wrote to the FSF asking about this, but never did hear back from them, because I did want to release it under the GPL, but didn't know how it would work with the Apache License. I went ahead anyway.

Basically, I would like for a license to read (my own comments [appear as such]):

I, Sean Conner, own the copyright to this program [assuming I wrote the program of course] but you are free to fold, spindle or mutilate this program for your own use.

You are free to redistribute your changes as long as your changes also fall under this license. [I don't want to restrict anyone from using the code, improving upon it, and giving back. Or even using for their own uses]

If you wish to incorporate this program or parts thereof into a commercial software package, let's talk. I want a piece of the action. [but let's face it—if you are going to make money off my code, I want my fair share. I gotta eat too you know]

I suppose you could say I want my cake and eat it too, but at heart, the idea that someone can come along, use what I created to make obscene amounts of money of which I don't get anything, does make me pause.

And the restrictions, advertising and linking issues of all the libraries are enough to make your head swim. And it's not like you can't make money with the GPL.

Since I seem to be quoting quite a bit from the Slashdot discussion, just read it.

Hypertext, weblogs and journals

I'm going to have to work on more details of this if I'm going to to this. The internal anchor names will have to change. Since I'm currently using SSI for this, I just realized it's not going to work. Also, while I have an idea for how I want to store the data, the main problem is one of creating the daily update page.

I like the format for weblogs where a few days worth of entries exist on the main page, but the storing of each day's entry is leading me more towards a journal like layout. If I didn't want to have several days worth of entries on the main page, then there wouldn't be a problem.

Also, doing this weblog/journal experiment is making me wish there was a better way of doing styles than there is currently. It would be nice if all browsers (including Lynx) supported CSS, or XML and XCSS or whatever it's called. I suppose that's what PHP is for. And in that limited case, PHP might be a good compromise. But I still don't like PHP all that much. Can't say why, other than a case of Not Invented Here Syndrome.

Besides, I feel that the work I did on the Electric King James is relavent here—namely a better way of referencing content.

A few years ago I identified why I dislike WEB, and it came down to it failed my “1 am scenario.” Namely, that I'm a maintenance programmer, it's 1 am and I have this bug I have to fix yesturday and I'm staring at this huge mess of a file. It came down to a mixing of What (an interface or data description), why (the documentation) and how (the actual code). Very ugly. I solved that problem (at least for me) by separating all three out (what are the header files, how are the source files, and why is the documentation written).

But a week or two ago, I realized that what I've been trying to achieve with web-based programs can be solved by a similar separation—only in this case, it's not what, how or why, but data, definition and display (or substance, structure and style). HTML is an ad-hoc mixture of definition and display with data. I can't comment on SGML, not knowing it well enough, but XML seems to be a strict data and definition mixture with display being left out (or left to the style sheets). That's okay, but it still makes transclusion difficult. That's not saying it can't be done; it has, to some degree. But if the data and definition were separated, it might make transclusion easier.

Although some might say too easy.

Anyway, the reason I'm going on about the separation of data, definition and display is to help me at least, organize what is amounting to, a large amount of random data. And in a way, my mod_litbook is related. Certainly, the data, definition and display are separated, but it still isn't a generalized solution yet. But I'm getting there. I think I'm on the right track here.

I'm also going to have to deal with META tags and whatnot.

“I can crack this! Or rather, fix it!”

More on V2_OS. I wrote to them yesturday telling them the problems I encountered. I got the following reply:

V2_OS currently assumes a hard disk eventhough it doesn't do anything with it (it only looks at it to find partitions). This is a thing that should be removed…

It is completely harmless to run it on any PC, ant [sic] won't touch your HD's. The only commands you should not use is format and syscopy.

Even the Linux bootloader doesn't check for the existance of a harddrive!

I noticed they had a newer version of the disk image, so I downloaded that and tried it. Same result as two days ago. So I figure, “Hey! I know assembly. This is written in Assemly. I can takle this. I can crack this! Or rather, fix this!”

I can say, yes, it's written in Assembly. Not very good Assembly. Or rather, it looks like it was written by someone under the mistaken notion that the 80x86 line is RISC-like in nature. There are many sequences like:

	Jcc	somewhere

On several RISC CPUs (like the MIPS) the instruction following a jump of control is executed; it's called the branch delay slot. The author here (and I'm not quite finished with the bootsector!) seems to think the 80x86 has a branch delay slot. Then there is:

	MOV	AL,[var]
	MOV	[var],AL
	CMP	AL,somevalue

Grating. Come on … it should be:

	INC	byte ptr [var]
	CMP	byte ptr [var],somevalue

But there are a lot of sequences where data is loaded into a register, manipulated (simply) and stored back out to memory. Again, this is something common on RISC like CPUs, but the 80x86 line can manipulate memory directly, without having to load into registers.

Now, this thing claims to be the fastest OS for the 80386 and higher. I'd like to see it go against something like QNX.


UPDATE: The code is so convoluted and poorly structured that I'm giving up. It's not at the point where it's worth my time to fool around with this, but if the harddrive check is removed, I'll take a look at it again.

“Do not fold, spindle or multilate …”

Some restaurants still use spindles. They're the nasty looking sharp metal spike next to the cash register they use to stick the register receipts or checks to store them until closing. To “spindle” refers to this action.

The other WEB

WEB does not refer to the World Wide Web, but instead to a way of writing software developed by Donald Knuth. It allows one to mix source code and documentation into one file, at the same time allowing the programmer to write the program in an arbitrary order. There are two auxillary programs used, one to extract the source code in the order required by the compiler, and another one to product hard copy output (at least, that was the original intent).

Saturday, Debtember 11, 1999

Mapping the Corporate Sea

Create a new map or globe of the world that shows multinational corporate borders, vectors and free trade zones instead of national boundaries. Map must make it into a grade-school geography textbook, or globes must be sent to several elementary schools nation-wide; either event must be reported upon extensively in the mainstream press.

The MAPS project at ®™art

An intriging project to be sure. Just defining what it means for a corporation to have a “border” will be difficult, much less the other parts of the project. The free trade zones is a bit easier and will probably follow traditional national borders.

But if one is created, I wouldn't mind having a copy. I have R. Buckminster Fuller's Dymaxion Map, and an upside-down map (where Antartica is on top, North America on the bottom).


I was keeping (and probably will for the time being, keep) each day's entry in a single file, with internal links to each part. I went through and fixed them so they're unique across all the files, not just withing a single file.

I also have several goals that aren't easy to realize given the traditional file-based view that traditional websites use.

But as others, as well as I (with my Electric King James Bible), have shown, that doesn't need to be the case.

So for the past few hours I've been re-organizing the pages. I have a directory for the year, a directory for each month, and a directory for each day. Within each daily directory I have a file for each section, as well as any other anciliary materials (such as images and what not). Basically, using the Unix filesystem as a database (shut up Mark). I'll have to come up with a URL scheme to isolate the backend processing here, but that shouldn't be that hard.

Basically, this will be an extention of the work I did for the King James Bible. And what I do here will probably help me work out a method to deal with storing and referencing other materials, like Shakespearean plays.

Shut up, Mark

I hate databases. Have ever since I took the disasterous database course at FAU. But I like working on operating systems.

As Mark likes to point out, a filesystem is just a special case of a database.

To say that I ignore that is an understatement.

Shut up, Mark!


Some more ramblings on Hypertext.

The work I did on the King James Bible was partly a result of wanting to reference a portion of a much larger work. After I was done with that, my eye then turned towards Shakespeare. It'd be nice to say something like:

And get:

To be, or not to be,—that is the question:—
Whether 'tis nobler in the mind to suffer
The slings and arrows of outrageous fortune,
Or to take arms against a sea of troubles,
And by opposing end them?—To die,—to sleep,—
No more; and by a sleep to say we end
The heart-ache, and the thousand natural shocks
That flesh is heir to, 'tis a consummation
Devoutly to be wisht. To die,—to sleep;—

Ah, but the problem with Shakespeare, or rather, with the notation used to reference part of his plays, deals with what constitutes a countable line:


Peace, break thee off; look, where it comes again!



In the same figure, like the king that's dead.


Thou art a scholar; speak to it, Horatio.


Looks it not like the king? mark it, Horatio.


Most like:—it harrows me with fear and wonder.

Hamlet, I.i.40-44

It's basically lines that are spoken that are counted. So line 40 is actually “Pease, break thee off; look, where it comes again!” It's not the line that says MARCELLUS.

Makes for an interesting project.

Sunday, Debtember 12, 1999

First the Headless Horseman …

I'm driving to dinner and in the lane next to me slightly ahead a see a person driving a motocycle without arms. Most surprising until I realize it's all an illusion, helped by the angle and lighting (it was night time, and we're all driving by the orange glow of streetlamps).

And then a long digression about hypertext

I'm still thinking about how I want to organize all this, as well as how to reference everything. One idea for the URL space I came up with is

would retrieve all the (currently written) parts for that day. To reference a particular part, then:

would only retrieve that part (in this case, what you are reading right now). By that logic (and following the logic used by my Electric King James and by now I'm sure your tired of hearing about it) then:

would retrieve the entire month of December, 1999. Most weblogs/journals though, would react differently; something like (using what I have so far, excluding today):

November, 1999 December, 1999 January, 2000
Sailing the Corporate Seas 5th
“How much for just the student?”
It's just a question of focus
A Real Conspriacy?
A sound legacy
Fastest Proprietary 80x86 Based Operating System
“The politics are so fierce precisely because the stakes are so low.”
Surreal upgrades
I'd hate to think what it would do on a corrupted system.
A License to License
Hypertext, weblogs and journals
“I can crack this! Or rather, fix it!”
“Do not fold, spindle or mutilate …”
The other WEB
Mapping the Corporate Sea
Shut up, Mark

(Whew! Did that by hand) But this breaks what I did for the Bible. If you request Genesis, you get the entire book, not:


Chapter 1
Chapter 2
Chapter 3
Chapter 4
Chapter 5
Chapter 6
Chapter 7

and so on. You get that at some of the other online Bibles, which is what I wanted to avoid. But in retrieving the entire month, you'll get a large document (so far, it's 38,196 bytes for the entries from the 4th to the 11th).

But I'm leaning towards doing that. If you want it, you'll get it.

Update on Sunday, August 25th, 2002

Originally, I had intended the archive section to appear under something like:

But I never did it that way; yet the links in this entry were originally written with that in mind, and the various web robots where sending requests for the pages, which didn't exist (of course).

So I fixed the links themselves in this entry.

Picture Perfect Biererzählungen … almost

Mark came back from Munich late last night so his girlfriend Shirley, our friend Kelly, and I got together today to welcome him back and hear stories about liter-sized glasses of beer he consumed while in Beerland.

Mark had taken pictures in Munich using his new digital camera from Sony. This one saves the images on 3.5" disks but he was having problems reading them on his home system (there appears to be a memory leak in the Linux floppy driver under certain circumstances—in any case, a few of his disks appeared to be corrupted).

So we then stopped off at Kelly's house (being closer to where we met) to see if we could read in the disks. We popped the disk into a Windows box and sure enough, one of the disks seemed to be corrupted about halfway in.

“Are you sure those X-ray machines at the airports don't cause problems?” Mark would ask.

“I've never had a problem,” Kelly would say.

“Neither have I,” I would say.

It appears that Mark did though. And most of the disks seemed to be corrupted. Kelly went so far as to use his digital camera (also from Sony) to copy each image one at a time to another floppy, which turned into a time consuming process that wasn't finished because the batteries ran out on his camera, and there is no way to get power to the camera except for the batteries (both sets were at that point being recharged).

Time Dialation

In checking over today's entries, I just noticed that I mention going to dinner, then a long digression about hypertext, then listening to Mark's Biererzählungen and attempting to retrieve digital photos from some disks, you might get the impression that the order of narrative is out of order.

But it isn't.

Each section is presented in order (more or less, sometimes I'll be writing two sections at once) that I write them during the day.

And the part about dinner was written almost 20 hours ago.

You see my schedule is rather off … I'm a night owl by nature. So my “day” often wraps around the official definition of a “day” so if you see any of these odd passages of time like this, that's why.

Monday, Debtember 13, 1999

Never anger a kangaroo

The hotshot Aussie pilots “buzzed” the virtual kangaroos in low flight during the simulation. The kangaroos scattered, as predicted, and the visiting Americans nodded appreciatively… then did a double-take as the kangaroos reappeared from behind a hill and launched a barrage of Stinger missiles at the hapless helicopter. (Apparently the programmers had forgotten to remove that part of the infantry coding.)

—Jerry Pournelle, on reusing code.

“Speak softly and carry a big LOSAT.”

The LOSAT is a 6 & 1/2 inch dia., 10 ft. long, 150 lb laser beam riding missile with impact energy of 60 mega joules. [Compare that with the 12 MJ muzzle energy of a 120mm/44 cal NATO gun.] A test program is providing a company of them to the 18th Corps. Each launcher has four missiles packed on a Hummer chassis.

There have been a number of LOSAT tests. One, on a M-48 target tank, pushed the hull back 10 feet during impact, ignited a _stripped_ tank hull and exited the engine grill substantially intact. Another, on an empty-of-ammunition T-72, decapitated the turret. These test films are available, though tightly held.

—Some comments about military advances from Jerry Pournelle's site.


Interesting. V2_OS does not support multitasking.

This our point of view on this: We will not change the architecture of the kernel to allow it to multitask since this will affect the whole system even when it is not multitasking and that's not the way me ment it.


It could be argued that MS-DOS was the Fastest Proprietary 80x86 Based Operating System around yet no one I know would use it anymore. Okay, besides being a 16-bit clone of an 8-bit OS, it didn't allow multitasking either yet people went to great lengths to include it.

TIP: at least make the operating system reentrant. It doesn't cost that much, reduces bugs, and makes the addition of multitasking that much easier.

It's beginning to look like that those who do not study the history of MS-DOS are condemed to reimpliment it—poorly.

And MS-DOS wasn't all that great to begin with.

I can't believe I'm excited about dd.

I was just given a Toshiba Satellite T1900C laptop. Nice little machine, a bit damaged, but when I turn it on it boots into MS-DOS. It has Windows 3.11 installed. I get the feeling that this is not quite the Pentium I was told it was. No problem since I'm not paying for it anyway.

There is nothing of real interest on the disk. I mean, unless you consider MS-DOS or Windows 3.11 interesting.

I get home, and finally have a system to try out V2_OS on (more later). I also boot Tom's Root Disk, a one disk distribution of Linux that's actually useful (I use it primarily for rescue disks and for my network monitor). I pop that in and apply power.

9.96 Bogomips. A real powerhouse here. 16450 UART (the buggy one). 120M harddrive and oh, only 4M of RAM. Tom's Root disk reports:

UH-OH! No RAM for /usr.  Runlevel 4!
Bare minimum. Good luck. Remove floppy.

QUIZ TIME! You have no ls. more is gone and even worse, so is cat! Yet you want to check the configuration of the machine (most of which is available in /proc. What can you do?

Well, there is a shell. That's half the battle. cd is built in, so you can at least get to /proc and echo is built in. Why is that important? Because when you type in a wildcard at the command line, it's the shell that expands it, not the command. echo repeats what it's given, so if you do an echo * you see all the files in the current directory. You'll see nothing else but the name, but that's better than nothing.

But still, it would be nice to actually see the contents of some of the files. Let's see what we have to work with here … ah! dd is available!

I can't believe I'm excited about dd. I mean, this pretty much sucks, but that's one of the strengths of Unix, as the proponents say. Warp your mind to use the given tools in ways the authors never indended. Sigh.

So, let's see what we have here …

# cd /proc
# echo *
1 13 2 3 4 5 6 7 cmdline cpuinfo devices dma filesystems interrupts ioports
kcore kmsg ksyms loadavg locks meminfo modules mounts net pci scsi self stat
sys uptime version
# dd if=cpuinfo of=/dev/tty
processor       : 0
cpu             : 486
model           : 486 SX
vendor_id       : GenuineIntel
stepping        : unknown
fdiv_bug        : no
hlt_bug         : no
f00f_bug        : no
fpu             : no
fpu_exception   : no
cpuid           : no
wp              : yes
flags           :
bogomips        : 9.96
0+1 records in
0+1 records out

and so on from there. Not much, but at least I'm able to move around and poke at stuff.

Well, maybe not.

# mount /dev/hda /mnt
# cd /mnt
# echo *
386spart.par autoexec.bat dlbspace.bin dos io.sys msdos.sys
stacker stacker.ini stacker.log stacvol.dsk ~msstfqf.t
# cd dos
# echo *
attrib.exe chkdsk.exe

120M. Should have realized that's not enough space for Windows, so everything is packed using Stacker.


And even the QNX Demo Disk refused to install, due to memory constraints.

Double sigh.

I can't believe I'm still going on about V2_OS …

Since I have a PC capable of running V2_OS, and it has a harddrive that I don't care if it gets trashed, I decided to give it a try.

It does load fairly quickly. And it does appear to be quite slick. And I do like the different screens you can flip through:

Nothing that any other operating system can't do, but it is nice to see stuff like that.

But for all that, it's still pretty much a rather poor 32-bit clone of MS-DOS.

Tuesday, Debtember 14, 1999


Mark pointed me to Thix, yet another free Unix clone for 80x86 based machines. This one was written back in '94 or so and it looks like it's self-hosting, which is good. It doesn't support networking, which is bad (but not that bad). It looks like it'll run fine on a small system, which is good. But the installation disk doesn't contain a program to make the filesystem, which is bad (and that's bad).

This makes the current installations of Linux trivially easy by comparrison.

The setup assumes you have Linux already installed on another partition and can run the mktfs program from Linux. Ha ha. That's a good one.

I took a look at the source code to mktfs (good thing this is an Open Source ™ project) to see how the filesystem is laid out and thinking I could write a quick assembly hack to create the filesystem, dump the program to a floppy so that it executes when booted and go from there.

I then got the idea to hack mktfs itself to read/write to an image file. My thought—instead of having it write to a device, just have it act on a file, then dump that image to the harddrive.

Hack hack hack debug debug debug ah good. Compress the image, dump to floppy, move over to the lap top, extract from floppy and decompress onto the appropriate partition, reboot and …

No go.

Next up … hack up the TFS version of fsck, run that on the image file, and try again.

Well … something's wrotten in the state of Denmark. It seems the author keeps mixing up if he has his units in blocks or bytes.

Or it could be that it's so crocked up it can't be fixed …

Wednesday, Debtember 15, 1999


I finally got the Thix filesystem utilities mktfs and tfsck working, although what I changed to make it work I'm not entirely sure since I wasn't keeping that close a track of what I was doing. It seemed to go okay after I went through the mktfs code line by line, seeing the values being calculated and stored in the superblock of its filesystem.

I had created two partitions on the drive in the laptop—an 8M partition for swap (if Thix supports it, I'm still not sure) and the rest (~108M) for the actual filesystem.

Finally I got an 108M (108.0117188 * 1024 * 1024 gives 113,258,496 bytes, so you see I'm using the computer definition of megabyte, not the disks manufacturer's definition) image file created, and a few runs through tfsck fixed it up. Ran gzip over the image, which compressed it down to something like an 11K file. I transfered it to floppy (tar cf /dev/fd0 thxfs.img.gz), sneakered it over to the laptop.

I created a Minix filesystem on the 8M partition (using Tom's Root Disk), extracted the file from the floppy (tar xf /def/fd0) and then extracted the image file to the appropriate partition(gzip -dc thxfs.img.gz | dd of=/dev/hda2).

Several long minutes later, it was done. Booted from the Thix installation disk, it mounted the partition no problem, installed a bunch of stuff, popped the floppy out and rebooted.

To an error screen.

Ah, the master boot record must be bad. Okay, this is easy. Let me approach this all wrong and spend an hour or so writing a custom boot sector on a floppy that will then read the partition table from a harddrive and boot from that.

It would have worked too, if it weren't for those pesky kids.

Sorry. I would have worked too, if in fact, a boot sector and kernel were actually part of the partition!

Oops. I should have read the installation instructions better. Especially the part:

Go into the Thix source tree (../thix).

Edit  the  file fs/mount.c and  set the  root_device  to  point to the
partition you want to install Thix on. That is, uncomment this lines:

/* /dev/hda3  */
int root_device = HDC_MAJOR * 0x100 + 4;

and well, it goes on from there. Had I a bit more time, I probably could do it. Heck, had I a bit more time, I probably could have gotten Linux on the thing.

Mark suggested FreeBSD or Slackware. Can't use FreeBSD since I think that requires a math-coprocessor (although I'm sure Mark will correct me if that is not the case) and I unfortunately ran out of time to try Slackware (which probably would work).

I'm out of time, because I'm leaving for Palm Springs in, oh, less than 12 hours now.

Avast ye swabs …

You see, I tried installing a (cough) commercial OS (cough) on the laptop someone was kind enough to toss my way. It is one of my favorite operating systems, it installed fine, and with plenty of space left over (even after the GUI was installed) but it still lacked a development system which was kind of the point in the first place. I mean, I had vi, but if all I'm going to do is editing, I might as well take my DataGeneral one laptop (80C88, 464K RAM, two 720K floppies, state of the art in 1984 when it came out).

I'm leaving on a jet plane …

It's the Gay 90s here in Palm Springs. You're either gay, or 90.

Donald Conner, my Dad.

I should mention that I'm flying off to visit Dad for the next two weeks. He lives in Palm Springs, California, a desert community were the parents of the retirees in Florida live.

The upshot of that is there will be no updates here for the next two weeks, followed by the sudden appearence of two week's worth of material, most likely non-computer or Internet related.

Maybe it's for the best I didn't have a laptop.


And one last note, via my dog wants to be on the radio, is the sad news that Charles Schulz is retiring from the Comics Industry after nearly 50 years of drawing “Peanuts.”

One of those quiet earth shaking moments when you realize that everything eventually passes on. But even though I haven't read a “Peanuts” strip in years, I knew it would always be there. It's been there all my life. And now that I think about it, for most of my parents' life as well.

Saturday, January 01, 2000

It's the end of the world as we know it

So with much fanfare, fireworks and music, we announced the arrival of The Year Two Thousand and depite the hype for the Year Two Thousand Bug, nothing much of not actually happened, which is a good thing.

The party was hosted by my friend Teen and her boyfriend outside their home in lovely Parkland, FL. They dig a pit for the bonfire and by the time I had arrived at 9 pm, it was pretty thick with coals already. By the time my friend Shane and I put the fire out, the coals were hot enough to melt glass.

The actual fanfare consisted of a lot of fireworks being set off by various party members. All of the fireworks consisted of variations on Roman Candles—none of the fireworks we had were capable of being fired up in the air—but we did have enough going that a large cloud of smoke was drifting its way lazily across the field and the nearby horses (the party was held near a stable) were all spooked and one broke out of its stable.

The fact that I still had a house, with power, was a plus.

The garage is over there, but you can't park there …

After getting up from the previous night's (and morning's) celebrations, I had enough time to check some email before heading out to the Ft. Lauderdale/Hollywood International Airport to pick up some friends returning from visiting family.

The Ft. Lauderdale Airport used to be a decently designed airport—three terminals in a U-shaped configuration, with a parking garage nestled between the terminals. It was an easy matter of parking, and walking to the appropriate terminal. The airport itself is accessable directly from the freeway (exit 11B on I-595 east). Nice. Simple. Easy.

Well, it used to be.

Since I last picked someone up, they've started construction on a new terminal (renumbering the original ones) and a new parking garage, in front of the old one. Driving into the airport there was one of those large digital signs used for construction pointing the entrance to the new garage was this immediate left turn from which a few cars were trying to leave the garage. Just a mess.

Once parked, I found it impossible to find a way to actually walk out of the garage and to any of the terminals, and from what I could see, there was no way to get to the terminal I needed to be at (the one farthest back) except to leave this garage, and drive to the original one next door.

Fortunately, I wasn't parked long enough to accrue a charge, but still, I had to circle back around the airport, in which I missed the pickup lanes (I ended up on the upper level reserved for dropping off passengers). I did manage to find entry to the original parking garage but that did mean I was several minutes late in picking up my friends.

I walked into the airport and immediately found Paul. Which isn't hard when you're looking for a 6'4" bald guy. His wife, Lorie was on the upper level where the gates are, looking for me. So I told him to stay put and I'll go find his wife.

I head upstairs and I don't see her. Walk down the entire length of the terminal, head downstairs and walk back to Paul.

“Didn't find her,” I said. “Which gate did you come in?”

“The one above the stairs over there,” said Paul. I took leave again, rode the escalator up and found Lorie waiting for me at the top.

“I was worried you forgot about us,” she said.

“Nope, I just got stuck in the parking vortex of Hell,” I said. We then proceeded to walk downstairs, to collect Paul and the luggage and then headed out to my car.

I drove them home, then we went out for a nice dinner.

V2_OS and other strange brews

Checked up on VS_OS today. Surprise, surprise, they finally released the source code. Immediately downloaded it and took a look.

Nothing surprising really, except that the source code to the bootsector is missing. Or rather, there is code to a boot sector, but …

BOOTIMAGE    DB 0E9H, 011H, 001H, 0FFH, 0FFH, 0FFH, 0FFH, 0FFH, 02BH, 056H
             DB 032H, 05FH, 046H, 053H, 02BH, 000H, 030H, 030H, 030H, 02EH
             DB 030H, 030H, 035H, 000H, 080H, 000H, 000H, 000H, 000H, 000H
             DB 000H, 000H, 044H, 033H, 022H, 011H, 010H, 000H, 000H, 000H
             DB 000H, 000H, 000H, 000H, 000H, 000H, 00DH, 00AH, 056H, 032H
             DB 02DH, 04FH, 053H, 020H, 056H, 030H, 02EH, 031H, 020H, 028H
             DB 043H, 029H, 031H, 039H, 039H, 039H, 020H, 056H, 032H, 05FH
             DB 04CH, 061H, 062H, 02CH, 020H, 052H, 06FH, 074H, 074H, 065H
             DB 072H, 064H, 061H, 06DH, 02EH, 00DH, 00AH, 000H, 04CH, 06FH
             DB 061H, 064H, 069H, 06EH, 067H, 020H, 053H, 079H, 073H, 074H
             DB 065H, 06DH, 031H, 036H, 000H, 00DH, 00AH, 046H, 061H, 069H

And some interesting code like:

   MOV AL, 'f'
   MOV DS:[DI+0], AL
   MOV DS:[DI+16], AL
   MOV AL, 'd'
   MOV DS:[DI+1], AL
   MOV DS:[DI+17], AL
   MOV AL, '0'
   MOV DS:[DI+2], AL
   MOV DS:[DI+18], AL
   MOV AL, 0
   MOV DS:[DI+3], AL         ; 'FD0',0
   MOV DS:[DI+19], AL

Two things wrong here (at least for 80x86 Assembly):

  1. Using DI instead of EDI in 32-bit mode. This causes an extra byte of opcode to be generated for a 16-bit offset.
  2. Moving individual letters into locations. If you are doing this at this level, you can do better by:
    		mov	eax,$00306466           ; 'fd0',0
    		mov	[edi],eax               ; DS: override
    		mov	[edi+16],eax            ; not needed

In poking around, I found a link to RDOS, another 80x86 operating system written in Assembly. This one is impressive, if only because it's a functional OS in about 130,000 lines of Assembly (including TCP/IP). Haven't had much time to look around this one though.

We're Microsoft. We don't have to care.

Received email from a friend announcing the birth of their new child. Unfortunately that's all I know because:

Attached is an e-mail greeting created with American Greetings =
CreataCard software from Micrografx.

To view this greeting you must be running Microsoft Windows.


Sunday, January 02, 2000

Move along, nothing here …

Sick. Slept. Move along. Nothing here.

Monday, January 03, 2000


Sick. Sick sick sick. That's what I am. Spent most of the day being sick in bed. I'm achy all over, but I'm not nauseus so it's not quite the flu. My nose is runny but not entirely stuffed up, so it's not quite a cold. I am coughing, but it's not continuously, so it's not quite bronchitus. I do however, get these headaches.

Last night I got ready for bed, and between the time I walked from the bathroom to the bed it felt as if someone turned the tempurature down 40 degrees (C or F, take your pick) so I ended up shivering uncontrollably for maybe five to ten minutes before I started warming up. Then I would get too hot, move and again, it would feel like someone piped an artic blast of wind down the covers and I'd be shivering again.

Going to the bathroom was fun. Get up, oh my is it cold run run shut the door start a steaming hot shower going to warm me up, do my thing, shut the steaming hot shower down, leave bathroom oh my is it @#$@# cold run run dive under covers shiver until too warm.

Sometime this morning I realized I must have been sweating up a storm because I'm drenched. Any move I do brings in fresh cold air underneath the covers. Horrible.

Sometime around 1 pm, I can actually move around without feeling cold. I get up, take a shower, dress, remove sheets from bed, combine with sleeping clothes, and proceed to put them in the wash.

The effort drained me, so I sack out on the couch.

Three hours later I get up, move the items from the wash to the dryer, and go back to sleep.

Three or four hours later I get up. I'm no longer unduely cold, my nose isn't running, I'm not coughing and I don't exactly have a headache (but I am lightheaded). I'm not exactly tired, but I'm not exactly a walking ball of energy either. It's like I want to go to sleep, but I'm to tired to. I'm still somewhat out of things right now.

Tuesday, January 04, 2000

Sickness past, but sleep still eludes …

After sleeping for something like 20 hours yesturday I'm pretty much fine, although my all ready screwed up sleeping schedule is even more screwed up than usual (here it is nearly 7 am and I'm wide awake, but for how long I don't know).

After I wrote yesturday's entry I think I fell asleep again, only to get up around 8 pm or so, pull the sheets from the dryer, made my bed and was so exausted by the effort that I fell alseep for another three hours or so.

Feeling quite light-headed, I went to the Clock for dinner (that being the closest place still open for food) and that did help some. I got home, took a shower and did other stuff to get ready for bed, but by that time I was more or less awake.

So now I find myself not tired at 7 am.


One potato, two potato …

From the “Oh my …” Department (via Flutterby) is the story of a woman and her love of the potato. Not for the squemish or those under 18, if you get my drift.

Wednesday, January 05, 2000

Sick, part N

Still sick. Blah. It seems that most people (if not all) that attended Friday night's little Y2K party is sick. Perhaps it was being outdoors all night long that might have done something. Or all the smoke from the bonfire. Or something.

The local Internet2 POP

Curiousity got the better of me, and I found out that my old college, FAU, is part of the Internet2. Ah, to be part of a non-commercial highspeed network.

But in looking over FAU's proposal for hooking up to the Internet2, I notice that not one of the projects requiring use of the Internet2 is from the Computer Science and Engineering Department. Sadly, I don't find that at all surprising, especially when they're having all students turn in ANSI C programs in Microsoft Word format. I kid you not.

I, or my friend Mark, could go on and on about it all, but I'll stop here.

A Clockwork Orange Owl

Now, about that logo.

A Clockwork Orange Owl

The mascot of FAU is the burrowing owl, a small owl (perhaps six inches in hight) that lives under ground in burrows. To say that it actually burrows is an overstatement, since it actually doesn't burrow at all, but appropriates (read: steals) already burrowed burrows.

Around FAU they are the prime target for a large population of feral cats.

I don't know who came up with the picture but somehow I can't picture a burrowing owl hanging out with his fellow droogs at the local milk bar listening to Beethoven and engaging in a bit of the old ultra-violence.

But perhaps that's just me …

Linux bite) the Watt Tripoli!

My friend Hoade just got some speech recognition software and sent me a dictated email. Part of it reads:

I wonder if I didn't go a little too fast on the speech training. It seems that anything I say is clearly Miss Understood by this bucking basedface phase space based. OK at night wasn't saying octane no not octane docking note not docking awk and known not awk and octane octane you CK e u c k d you see today got the met at up

A delete this lettersentence the descendants to the descendants please delete this sentence

It gets more incoherent if you can believe that.

I think this technology needs a bit more work. It took what? Five years or so for the handwriting recognition on the Newton to actually work most of the time?

This is almost as amusing as the time Hoade ran his novel through Microsoft Word's “Summarize” feature. He ends his letter with:

The lecture h the lecture h the laughter h a the vector eight of the let tear that tear letter and

The letter H
The letter O
The letter A
The letter D
Will air E

I'm typing this part–AIEEEEEEEEEEE!!!

Thursday, January 06, 2000

You have got to be kidding!

I'm still trying to get an operating system installed on an old laptop given to me. 4M RAM and 120M harddrive and it's proving quite difficult. I figured an older version of Slackware would work but in the limited searching the oldest version I found was 3.3, which won't install from the floppy if there's only 4M. It'll install from the harddrive, but well … that's the problem … I can't get it on the harddrive unless I install it from the floppy …

So it looks like I'm going to have to go a route I did when I tried installing Thix on the machine—make a bootable disk image on my local system, then move the image over.

It's either that, or I write my own operating system.

Not that I haven't seriously considered that.

Yes, I am clinically insane …

Just for the record, it is possible to install Linux (a 2.0 kernel even!) on a system with only 4M RAM and 120M Harddrive.

Why anyone would want to do such a thing is another story.

Friday, January 07, 2000

iApple's iCEO iNtroduces iMac's iDisk

You can talk about eye-candy (in the hardware, or in the software) all you want (and I must admit, I'm liking it too), but the word is COMPATABILITY. I want to access and use my files from anywhere - I want to remotely call programs on my mac from some PC (using rpc, I guess :) ). I want to fire up an FTP program and access my files. I don't want to think about it too hard. I just want to do it…

This bubble has already been burst

There seems to be some buzz going on about Apple's Apple's recent announcement reguarding iDisk.

Some people are worried that Apple is trying to control both ends of the Web (and Jobs has been quoted as saying just that) but if you actually read the announcement, it seems they're going to be doing that Geocities thang of offering “free” web hosting (only in this case, it's not exactly free—you have to buy a iMac first) and making it very easy to create the site (it appears local to your machine).

Not a bad idea really. Take NFS (or Samba, or AppleTalk, or … ), add authentication to the protocol (well, NFS already required authentication but not to a user level) and the whole notion of FTP, or publishing, goes away.

You do have to be aware of security issues, so it might be better to start from scratch. Might have to check out the protocol used for iDisk.

Tuesday, January 11, 2000

I hate you, you hate me, let's be business partners!

Just because a company is transglobal in scope doesn't mean it's the same company everywhere. My friend Mark works for a large international company, Siemens.

Not to be confused with Siemens Stromberg Carlson, which is across the street from him. Nor from Siemens Rolm, which, if it still exists, is down the street from him. I don't recall exactly which Siemens he works for (and for that matter, I doubt if Mark recalls either) but while they may be all wholly owned subsidiaries of Siemens, they are in fact, vicious enemies that charge each other twice as much for the same equipment their competitors would sell them.

Why this should be remains a mystery that only PHBs can fully understand (without their heads exploding).

The Guy I Almost Was

I was able to crawl out of the debt-hole and bootstrap myself into the lower middle class. For the first time in my adult life, I can afford to eat in restaurants where I don't work.

The Guy I Almost Was

It's best to start from the beginning if you starting reading this comic. Not as outright hillarious as Sluggy Freelance but it's more subtle, a dryer form of humor.

I think programmers forget this sometimes …

Programmers do their work but once, while users are saddled with it ever thereafter.

Jef Raskin, original project lead for the Apple Macintosh


Thursday, January 13, 2000

And this is your government on drugs

I just have to wonder how far out government will go on the “War on Drugs.” It seems now they're willing to pay for anti-drug friendly TV programming in addition to regular advertising.

I'm not sure exactly how I feel about this. On the one hand, come on, it's TV. The networks are out to make money and if someone were willing to pay even more for pro-drug programming, we'd get more pro-drug programming (remember: always follow the money). And doesn't this also following along with the “Don't Drink and Drive” campaign? I wouldn't consider the “Don't Booze and Cruise” campaign to be that bad—heck, I like that better than the Prohibition we in the United States had in the 1920s. And it applies social pressure to solve a problem than legislative pressure which to me is always a good thing.

But this is “The War on Drugs” here (or as some of my friends would say, “The War on Some Drugs”). And the government. Where does this fervor for anti-drugs come from? Certainly not from the majority of my friends. Perhaps we should follow the money?

There are drugs, and then there are drugs

The United States has this small drug problem—the government wants to outlaw the use of drugs (well, some drugs), but watch TV for any length of time and what will you see?

Advertisements for drugs.

Okay, so it's not advertisements for marijuana or cocaine or even nicotine, but if you ever feel achy, stuffy, feverish, coughy, congested, constipated, asthmatic, pimply or just plain blah, there's a pill, elixor, syrup, patch, serium, drop, spray or inhalent to make you feel all better.

I remember as a kid taking medicine to help with the achy, stuffy head, fever and coughs for all the colds and flus I got. The one thing that I distinctly remember is that no matter how much medicine I would take, I would never feel as good as quickly and for as long as the ads said I should. Over time (and for a variety of reasons) I stopped taking all those medicines when sick and just let nature run its course (except for the rare times when I would get bronchitis—then it was run to the doctor to get antibiotics).

Now I rarely get sick and when I do (usually once a year or so) it's rarely bad enough to take me entirely out (but I feel lethargic for about a month as it works its way around my body). But a few years ago I did get a nasty flu while visiting Dad out in California.

Dad gave me some over the counter medication and I was amazed that it actually seemed to work like it said it would in the advertisements.

The reason I think it worked then and not before was that I had lost any resistance I may have had to the drugs. Take drugs all year round, and your body will build up resistance to it. Forsake them, and when you need them, they'll tend to work. I suspect the ads are true for those people who have never taken drugs (or so rarely take them).

It seemed to be that in my case.

But getting back to what I was talking about. You have a slew of advertisements saying drugs are bad. Then you have another slew of advertisements saying drugs are good. Is it any wonder we have a problem here?

“Hi, I'm an annoying computer program calling you to sell … ”



I pick up the phone. “Hello?” I croak. See, I'm still sick.

“Hello. Did you receive a computer over the holidays?”

“No—” but even before I can finish that …

“Do you need help in setting it up?”

“No, not—”

“Let me help! My name is Mark and I'm available at your convienence to set up your computer, teach you how to use it. I can even back up your harddrive on CD. My rate is—”


This was the second solicitation I received today over the phone.

The Chairman is dead … long live the Chairman!

It was bound to happen sooner or later, but Gates resigns!

Bill Gates, CEO of Microsoft, stepped down, with Ballmer replacing him.

Was this prompted by the DOJ investigation? Possibly, but not in the way you think. Gates has been, for pretty much the late 80s and 90s, Microsoft. The two are one. Microsoft, Gates. Gates, Microsoft. Given the way Microsoft botched the DOJ trial, I almost think that this was orchestrated from the beginning as a way to allow Gates to retire from Microsoft without the stock tanking once he left.

Gates is nothing if not a brilliant (if not outright ruthless) businessman who's entire fortune is tied to a huge paper tiger. Even if he wanted to, he couldn't liquidate his stocks fast enough.

Then again, if Gates said they were splitting the company, he could pull it off without the hold DOJ thang to blame it on. He pulled the company around 180 degrees several times in the 90s to make up for missed opportunities without so much as a pause so maybe the whole DOJ thang was a blunder on their part.

I don't know.

Monday, January 17, 2000

Hi. I want to be a recovering system administrator …

Now I know why I hate system administration so much.

I've been re-hired by the company that fired me last September to fill in for their main system admin who is on vacation this week. I should have started last Thursday, but I still can't seem to shake this cold thang.

So my first day back to the office was today. And already I'm neck deep in email fires—from SPAM coming from BBN to a failing mail server running Qmail instead of Sendmail. Or maybe it's running both—I have no idea, the previous admin who worked on it no longer works here and I just found out, I have no account on the machine.


Delving back into the Scary Devil Monastery is always such fun.

“Uh, I think my mouth exploded … ”

I think my mouth exploded.

Wednesday, January 19, 2000

“If I tell you what I do, I have to kill you … ”

Employers are taking a harder line. They're making anyone they do business with sign contracts promising not to share company secrets. They're meeting with employees to explain exactly what should remain confidential. Some, like Starbucks, are telling even entry-level hires that they may have to abide by agreements barring them from joining competitors if they quit.

USA Today article on corporate secrets

Just a part of the plan to corporate serfdom. Not that I'm paranoid (then again, I don't work at Starbucks either).

Saturday, January 22, 2000

Dancing with the Devil

A few years later, several top-selling Marvel artists would break from the pack and form a new company called Image. In doing so, they would shift the debate from rights and principles to clout and competition, but both developments would share a common premise, one worth considering even today; that creators already have the right to control their art if they want it; all they have to do is not sign it away.

Scott McCloud, The Creator's Bill of Rights.

Remember, the next time you get that agent waving a million dollar recording contract in front of you what exactly it is you are giving up.

Wednesday, January 26, 2000

Secret agent man

The Central Intelligence Agency is vey good. So good that I had no clue I'm a CIA agent! Yes, I was caught on film in Tiajuana. I'm in the first group photo, number six. Besides, I doubt that number five is the actual head of the unit. Too obvious. No, it has to be number nine.

And yes, they are cool shades.

Tiajuana libel

I'm not sure what Spookbusters has against Jason and Wendy Simpson but whatever it is, it seems to be pretty intense.

I met them. The group photo was taken on a trip to San Diego where a large gathering from alt.society.generation-x came together to celebrate News Year's Eve for 1997. Fun trip.

But I still don't remember any CIAesque escopades I may have been involved with. Bummer.

Mild Mild Wreck

My friend Mark, Jeff and I watched Wild Wild West (or as I like to call it, “Mild Mild Wreck”). If you turn your brain off it's not that bad, but it wasn't worth the price of admission (and I paid the price of admission when it came out).

Seeing it on DVD, we played around with some of the features of the set Mark has after the movie. Mostly we zoomed in on Salma Hayek. Paused on Salma Hayek. Zoomed and paused on Salma Hayek. Ah, Salma Hayek. What can I say? Possibly the best part of the entire film.

Okay, the best part of the film.

Thursday, January 27, 2000

How do I get there from here?

On one of the mailing lists I'm on, a member posted her snailmail address, fairly confident that no one could find her place, living way out in the country like she does.

Five minutes at MapQuest and I had directions from my house in Lower Sheol to her house in Wisconsin (something like 1,750 miles door to door).

I also found another site, Etak, which does the same thing (pretty much got the same directions) plus gives out latitude and longitude information as well.

I've yet to hear back to see if the directions were any good or not.

White people with dreadlocks. What a long strange trip it's been.

So a friend comes by and takes me to this bar along the ocean (forgot the name of the bar) because a mutual friend of ours is the keyboardist for the Grateful Dead coverband Crazy Fingers (out of Ft. Lauderdale).

I'm not overly ga-ga over the Grateful Dead like most Dead Heads are, and I'm not into that whole Hippy thang either. But at the bar there were plenty of aging Hippies, neo-Hippies, HippyChicks, tie dye shirts, Birkenstocks and long flowing skirts, and white people with Dreadlocks. White people with Dreadlocks.

White people with Dreadlocks!

Typical Americans to co-opt what was a rebel statment against the whites and make it a fasion statement.

White people with Dreadlocks.


It was also amusing to see how many Dead Heads were into The Industry. I met at least five people who worked at various jobs within the Industry and there were probably more. My friend the keyboardist, is also in The Industry. He's also a paper millionaire, having sold his website for an ungodly amount to another company.

I think I have an easier time with a millionaire playing in a Grateful Dead coverband than I do with white people with Dreadlocks.

Friday, January 28, 2000

“We liked your site so much, we want you to submit it to us!”

First I'm a CIA agent and then I get this:

From: <>
To: Sean Conner
Date: Thu, 27 Jan 2000 18:20:37 -0800
Subject: It's Time to Submit Your Site to

Just a brief message to notify you that your site is currently not scheduled in the pending reviews for Brides and grooms will not be able to see your site through our upcoming service unless you submit yo ur URL at It's FREE! Now's the time!

It's just so … odd that I just had to check it out. No default background color (whoever did it assumed white—little do they realize my default is still that hideous gray color that Mosaic popularized in the early 90s) so it looks like crap.

But from the name, I suppose it's a wedding related site. But I have to wonder … they probably got my email address from my web site, so why did they spam me to have me send the URL of my site back to them? Are they totally incompetent?

And why am I asking rhetorical questions?

How about an Electric Daniel Webster?

I've done the Electric King James Bible and eventually, I'll get this journal electrified as well (and maybe improve the writing style to boot!).

But in the mean time the next fairly easy thing to work on (unlike my ideas for Shakespeare) is a dictionary. I have several to choose from, and it's more usuable for more people than the Bible (but the journal/web log module I want to write it going to be big).

It seems easy.

brings up the defintion for “organization,” while

Brings up all the definitions beginging with “o.”

But there's a problem. Say I want to do something like:

To bring up all the technical terms beginning with “ai.” Nice, only there there exists several entires starting with “ai,” including the very term “AI.” What if I just want “ai?” Or all terms starting with “ai?”

Not an easy problem then, is it?

I'm not about to get into the navigation schemes yet.

And how about an end-run around Open Source?

Create a new PC hardware architecture using a modified Transmeta Crusoe CPU at it's heart. The CPU is modified to contain an encryption/decryption engine and the code morphing software is updated to include the decryption of encrypted executable code. Code morphing is a general conversion process and there's nothing that says that the binary source has itself got to be executable on some existing CPU. As the results of code morphing appear only within an internal instruction cache it's very difficult to gain access to the unencrypted executable program code.

Geoff Lane, at osOpinion

I get this dread feeling that the Crusoe CPU from Transmeta is going to be used as an end-run around Open Source software. Just when you thought we were getting away from proprietary systems …

My celebrity match is …

My Celebrity Match is Shania Twain. Not a bad choice, even if I don't like country music all that much.

Sunday, January 30, 2000

Now that's darned rude!

It's 5:30. I'm with some friends when I get beeped. It's my home number. I call. It's my roommate. His RedHat 6.0 box was hacked. What should he do?

I mention a few things to look for, but it looks bad. Who ever broke in either got spooked, or was feeling malicious and the final two commands we found in the .bash_history file were:

rm -rf /var/log
rm -rf /*

My roommate, Rob, managed to stop it before it did more damage, but they still wiped out /boot, /bin and parts of /dev. Using Tom's RootBoot disk he was able to survey the damage and then waited until I got home.

From what I've been able to determine, it appears that some script kiddie was running a program to look for exploitable boxes (RedHat 6.0) because around noon yesturday someone tried to FTP into my box and Rob's other box from Harvard. This said script kiddie then had a list of hosts to exploit today and Rob's box was broken into and damaged around 5:30 pm EST.

Breaking in and looking around is one thing. Maliciously deleting files is another.

Monday, January 31, 2000

a visit to Obnoxico, Inc.

After lunch, Mark and I headed over to WalMart to kill some time (neither one of us had to be at work today).

“You realize,” Mark said, “that there are only four different layouts for WalMarts?”

“Easier to franchise,” I said. “Sign here, and pick layouts one, two, three or four.”

“And you realize that whenever one of these go up, the local Mom-n-Pop shops go out of business,” said Mark.

“Of course,” I replied (and yes, we did actually have this conversation), “How else can they compete with large volume cheaply made merchandise from Asia? And if a store in an area is not that profitable, who cares? The rest of the collective can support a non-profiting store for a while.”

Really, I hear these stories about communities that try to make WalMarts illegal, or otherwise make it very difficult for them to open up stores. But really, if a community really cared enough to keep a WalMart out, then the community as a whole should just boycott the store. If no one goes to WalMarts, then it brings in no money and in due time it will shut down.

Simple economics. Yet why the furvor and laws? Because a select few people think they know better than the community.

Sure, what WalMart does isn't nice. And I tend to prefer local stores over larger chains anyway. But on the flip side, for large volume cheaply made merchandise from Asia and 24-hour access, you really can't beat WalMart. And my schedule that is soemthing to keep in mind.

Although the selection in the entertainment area is pretty spotty. Unless you like Brittany Spheres or the movie “Joan of Arc” (man did that hit the video stores fast) you don't have much choice.

But they do sell Nerf guns. Of which Mark bought one for work.


After lunch and killing some time at Walmart, Mark and I headed to Office Depot to check to see if they had any webcams.

After the experiments I did with my digital camera and using it as a webcam, Mark got the itch to do something similar. Like me, he is Microsoft free.

And that's the main problem. Most new webcams are now USB based, and the USB support for Linux is spotty at best, and with that, only with the latest development kernels. Mark and I are still running Linux 2.0 kernels (why fix it when it isn't broken?).

And the one webcam that isn't USB based, the Logitech Quickcam VC, doesn't have Linux drivers—nor is Logitech being generous with programming informtation; they're downright hostile and no information is available. The older Connectix ones (Logitech bought Connectix) are supported under Linux.

There doesn't seem to be any reason why Logitech should keep this information under wraps, unless:

  1. Logitech doesn't want others to know just how lousy the hardware is.
  2. Logitech is getting presure from some company on high not to release information that would allow other competing operating systems to use the hardware (no names, but its initials are <cough>Microsoft<cough>—seriously, many companies are afraid of doing anything which might anger the Redmond giant and giving any OS competitors any slight edge might anger them).
  3. Logitech management (or rather, the lawyers) are relunctant to release anything which might be considered Intellectual Property.

I suspect the truth is “all of the above” to some degree.

Who owns who?

In trying to find the official Nerf site, I obviously tried Imagine my surprise when I ended up at Hasbro Interactive | Atari!

And according to the Nerf Gun FAQ, there is no official Nerf site.



I worked some more on the digital camera I have. The problem is one of focus. Or rather, the lack thereof.

The camera is a fixed-focus camera and you have to take the unit practically apart to refocus it. The lens assembly consists of two cylinders, one that slides inside another, with a screw/spring assembly on one side to adjust the position of the inner cylinder, which houses the lens, against the outer cylinder, which attaches to the mount on which the CCD rests.

When last I left it, I thought that since the screw/spring assembly was on one side, when tightened, one side was pulled in closer than the other side, thus leading to pictures that were half focused. My thought was to remove the screw/spring assembly, file down the end of the outter cylinder, allowing the inner one to adjust closer, and use some glue to hold it in place.

No avail.

During the machinations, I removed the blue filter that sits above the CCD. Interesting results. Two exceedingly blurry pictures that I find rather amusing:

Rhspdody in Red Rhapsody in Peace

Okay, so I'm not getting anywhere. I dig up the screw/spring assembly (I took the thing off back last November). The glue thing wasn't working (and I didn't have the right glue anyway, so it wasn't holding very well) so I reattached the screw/spring assembly minus one small wire piece that seemed to work against the spring (go figure).

So, with CCD filter, and newly reassembled cylinder assembly back in place, a few tweaks and finally success! (I'm holding a small Phillips screw driver in my mouth, and I'm hold up my hand to distinquish this photo from the 21 other ones I took)

Obligatory Picture

[It's the most wonderful time of the year!]

Obligatory Contact Info

Obligatory Feeds

Obligatory Links

Obligatory Miscellaneous

You have my permission to link freely to any entry here. Go ahead, I won't bite. I promise.

The dates are the permanent links to that day's entries (or entry, if there is only one entry). The titles are the permanent links to that entry only. The format for the links are simple: Start with the base link for this site:, then add the date you are interested in, say 2000/08/01, so that would make the final URL:

You can also specify the entire month by leaving off the day portion. You can even select an arbitrary portion of time.

You may also note subtle shading of the links and that's intentional: the “closer” the link is (relative to the page) the “brighter” it appears. It's an experiment in using color shading to denote the distance a link is from here. If you don't notice it, don't worry; it's not all that important.

It is assumed that every brand name, slogan, corporate name, symbol, design element, et cetera mentioned in these pages is a protected and/or trademarked entity, the sole property of its owner(s), and acknowledgement of this status is implied.

Copyright © 1999-2023 by Sean Conner. All Rights Reserved.