Wednesday, December 17, 2008

Mesquite rip-offs

There are several casinos with associated hotels in Mesquite, Nevada.

Some of them advertise rooms "from $24.99" on billboards and signs at the casinos.

However, the rooms go for anywhere from $34.99 to $54.99 if you just walk-in.

Apparently you have to have made a phone reservation to get the lowest price. So, why advertise the lowest price right at the door?

We said the words "false advertising" and the clerk responded that the word "from" on the billboards makes it not false. Yeah right.

There were almost no cars in the parking lots on Monday night when we stopped there. Maybe it's the economy. Maybe it's shady business practices. We certainly don't believe in the truthfulness of these establishments and will not frequent them.

We ended up staying at a very nice Best Western there for $62. Yes, we will pay more to avoid doing business with liars.

Monday, December 8, 2008


This is a follow-up to the post on "Powers of two".

Readers of that post may recall that using 32 bits, there are exactly 4,294,967,296 possible patterns or codes. That's quite a lot to expect a reader to remember. But perhaps the reader will remember the rule of thumb, and recall that 32 bits is about 4 billion patterns.

It happens that in Linux systems, such as the one I use to write and publish my own little web applications, a 32 bit number is used to store the current date and time. The possible bit patterns are used to indicate the number of seconds after midnight, January 1, 1970 GMT (Greenwich Mean Time). This is an approximation (see Unix time for the gory detail).

Here is a table showing just a very few of the possible bit patterns (grouped by four for readability). I have placed the bit patterns in a particular order, which is a lot like an automobile odometer, with each wheel working its way up from 0 to 1 and around again.

The first column shows the bit pattern, and the second column shows the decimal number that is generally assigned to that bit pattern.

0000 0000 0000 0000 0000 0000 0000 0000 0
0000 0000 0000 0000 0000 0000 0000 0001 1
0000 0000 0000 0000 0000 0000 0000 0010 2
0000 0000 0000 0000 0000 0000 0000 0011 3
0000 0000 0000 0000 0000 0000 0000 0100 4
0000 0001 1101 0111 1111 1001 0000 0000 30931200
0011 1011 1001 1101 1111 1001 1010 0000 1000208800
0100 1001 0011 1101 1100 0001 0010 1001 1228792105
0111 1111 1111 1111 1111 1111 1111 1101 2147483645
0111 1111 1111 1111 1111 1111 1111 1110 2147483646
0111 1111 1111 1111 1111 1111 1111 1111 2147483647
1000 0000 0000 0000 0000 0000 0000 0000 -2147483648
1000 0000 0000 0000 0000 0000 0000 0001 -2147483647
1000 0000 0000 0000 0000 0000 0000 0010 -2147483646
1000 0000 0000 0000 0000 0000 0000 0011 -2147483645
1111 1111 1111 1111 1111 1111 1111 1110 -2
1111 1111 1111 1111 1111 1111 1111 1111 -1

If you click on the link for one of the bit patterns, you will be using one of my little web applications to tell you what that bit pattern means as a date and time on my Linux server. Since the server is located in Texas, the time will be in CST (Central Standard Time).

The very first link is the moment at which the Unix epoch begins. The next particular times that I have chosen to list are, in order: 1 through 4 seconds after the start of the Unix epoch; the start of Christmas Day in London in 1970; a moment that has had a big impact on our country; a moment that came and went while I was writing this post; and the final three seconds of the Linux clock.

After that, things go wrong. The usual interpretation of the bit pattern as a number goes negative. This happens because the usual interpretation of a bit-pattern-as-number is done with Two's Complement rules.

And at that point, many programs will stop working as expected. This is known as the "Unix Millenium bug" or "Y2K38".

If you just look at the bit patterns, you'll see that the problem happens right when the odometer rolls over to put a one in the left-most position (making it negative Two's Complement rules). My program stops counting forward at that point and jumps to 1901.

Of course, my program will not likely still be available by 2038! Even if I have continued to pay the lease payments, and that I have lived well into my 80's, it is likely that the system will have been updated to fix the problem by then.

This is nothing for anyone to lose any sleep over. I had to post it to get it out of my head. Other articles about this are one by Ansari and Patil and another by Unnikrishnan, both published in May, 2005.

"An X-treme Proposal"

This is a postscript to my earlier comments on political correctness.

The title of this post is a quote, since it exactly matches the title of a Boston Globe article published January 5, 2003*.

I assume no one has taken this proposal and ran with it, since it was made nearly six years ago, and I've never seen it in action, nor does a web search turn up any application of it.

In a nutshell, it addresses the problem of how to refer to a non-specific person without resorting the the sexist "he", "him", and "his". Personally, in spite of that disability that makes it difficult for me to be politically correct, I tend to use "she" for one non-specific person and "he" for the next one to appear in a dialog, and so forth. Ladies first**.

The proposal coins three new words: "xe", "xem", and "xers" (pronounced "zee", "zem", and "zayrs") to be used instead of "he/she", "him/her", and "his/hers", respectively.

The usage that seems to be gaining ground is to use "they", "them", and "theirs" for a non-specific person. Interesting, that if you pronounce these words with a mild French accent, you get something like "zey", "zem", and "zayrs".

Mostly, when I have occasion to write about non-specific persons, it is a technical document, so I'll tend to write it up like this:

When the system administrator receives such a request she will go to the user management page, enter the user identifier, and click "Search". The necessary information will then appear on her screen. She'll read this off to the user and ask him if he understands. If not, she will go on to the next step.
This does double duty. Not only are "her" and "him" given equal time, but by carefully choosing, I can even have "her" being superior to "him". Isn't that the ultimate in political correctness? Or have I misunderstood the intent?

*The Boston Globe wants $2.95 to let you read the article, even though it is now hardly news. You can get the first few lines here. Or, if you google the title you can find a site or two who copied it verbatim (thus violating copyright--but the sites are not in the U.S.A.).

**That reminds me of an awkward experience that I had a few years ago on the WordPerfect technology park. As I was leaving the cafeteria, I held the door open for a woman who was right behind me. She snapped at me that she was perfectly capable of opening the door for herself. Ouch. Okay, so ladies first; obnoxious women can take care of themselves.

Friday, December 5, 2008

Stubborn Elevators

You get in the elevator and press P3 to go to parking level 3. Then you remember, wait, I'm on level 4, so you press P4. But the elevator still stops on level 3. Why isn't there a way to tell the elevator that you changed your mind?

Or you press the button to call for the elevator to go up when you really want to go down. So, an elevator full of people going up stops and opens its door and lets those people have a look at you while you wait for an elevator that is going down. Why isn't there a way to tell the elevator that you changed your mind?

No big deal, except that it causes a few people a minor annoyance once in awhile. Multiply this by the number of elevators in the world, though, and you have a huge cost in annoyance because there is no way to tell an elevator that you have changed your mind.

I believe that what I have described is true of all elevators. Correct me if I'm wrong.

The elevators that I have to deal with every day are stubborn in another way that I've not seen before. If you've called for an elevator to go down and one stops that is going up, chances are you'll climb aboard. You then press the button of a lower floor and it won't take it. The light won't come on at all. You have to wait until it has gone up to the highest floor it has decided it is going to go to, and then press the button for the (now much) lower floor. Who designs the software that controls "my" elevators? Will you please explain, what were you thinking?

Tuesday, December 2, 2008

Political Correctness Impaired

For well over ten years I have had a sign in my office (actually a "cube") which makes this polite request, "Please be patient with me: I am Political Correctness Impaired."

It was initially intended as a self-referential joke. As a joke, it was a member of a family of jokes that was popular at that time, such as saying "folically challenged" for a bald man (such as myself). These sayings were not seriously intended to be politically correct, but had a similar form and were poking fun at the advocates. Being self-referential, it was calling upon advocates of political correctness to exercise the compassion due to one who had a particular handicap (oops, I mean "disability", sorry--see what I mean?): not being able to go along with their program.

Over time, I have begun to wonder if the sign isn't actually true of me. Part of this comes naturally, from my generation--educated before the days of political correctness. Part of it may be simply that I am a member of so many of the majorities that political correctness advocates consider unduly privileged.

Maybe I will post more examples of my thoughts on this subject, but for now, I'll just mention one. I grew up in a country deeply divided by two official languages (and two unofficial cultures). In western Canada we spoke English, yet I spent about ten years mostly speaking French, starting just after high school. This included seven years actually living in France and French-speaking Switzerland and visits to French-speaking Belgium (two other countries divided by official languages).

Many years later I heard of an incident in Alberta, Canada which changed my opinion of language issues, and considerably deadened my sympathies for the (locally) disadvantaged French speakers in western Canada. The French speaking minority in northern Alberta had formed a private school where their children could be educated in their native language. An English-speaking family had petitioned the school to allow their children to attend so that they could learn French. The school denied permission, explaining that the school was only open to children from ethnic groups that had traditionally spoken French through generations.

It's hard for me to understand exactly what this minority group in Canada really wants. Apparently they don't want any converts. What they have obtained is for the government to make every service available in both French and English. For, example, I once made a border crossing from the U.S.A. into western Canada speaking only French to the official.

Oddly, this bilingualism includes stop signs, which feature the French word "arrêt" as well as the English "stop". Or is it English? When I lived in France (and the other French-speaking countries), all of the stop signs only said "stop" (but generally didn't have the octagonal shape--see the image from Tonga).

As is generally the case when political correctness bears sway, the situation is asymmetric: The stop signs in non-French-speaking Canada are bilingual, but apparently in Quebec (French-speaking Canada) they are not (judging by this image). Hmm.

Wednesday, November 5, 2008

A Tele-presence First?

After the company Hallowe'en party, we all voted for our favorite costume.

The Cyanotic Cybernetic Cyclops costume tied for second place. This wasn't an overwhelming victory, given that only seven costumes were entered.

Is this a first? Is this the first time someone has won a Hallowe'en costume prize without physically being there? I don't know, nor do I know how this could be determined.

In any case, it is significant evidence that people will view an object that is remotely controlled in this way as being the person controlling it. At least enough to award a prize.

Saturday, November 1, 2008

Being there in costume

Yesterday was Hallowe'en, and I decided to dress up the "BruceBot" (see previous post).

Since it only has one eye, I decided to name it "Cyclops." After a little bit of searching on the Internet, and finding an image that I liked, and poking around in the dictionary, the final name became "Cyanotic Cybernetic Cyclops" (pictured below). "Cyanotic" because the image acquired a blue tinge, and "Cybernetic" because, well, it is really a "closed signal loop", with eye movements controlled remotely by someone who is watching the associated images.

With some help from Sara and Ben, the costume was applied the night before. Just before the event (a company party), I wheeled the unit into the room, then ran home and fired up the remote control from our iMac. Along the way, I reflected that what I was doing was the equivalent of "getting into costume."

Turning the volume up all the way, I was able to break through the conversation noise and interact with several of my colleagues as they were eating their lunch. One of them put a paper napkin over the eyestalk and I complained loudly that I was blind and couldn't see. Some kind soul removed it. A colleague leaned in close and challenged me to get out my costume. I promised that I would, but warned that it would take me about 5 minutes.

So, I left the remote controls in Sara's hands and ran back to the office. By the time I got there, Sara had captured a couple dozen images. Apparently the shutter sound effect from the iMac had gone through to the Cya...Cyb...Cyc... end and made some people a bit uncomfortable. In honor of that and simple privacy, I won't post pictures of others here.

Here I am eating some soup before...

and after zooming out.

Sara stayed connected as I wheeled the unit back to my desk, and enjoyed the ride. She said hi to a few people along the way.

I gave her some final advice about shutting down the remote control connection...

and smiled for a picture...

just after or before she captured it.

It was an interesting event, and because of how things happened, I got to experience the tele-presence thing from both ends within the same hour.

Tuesday, October 28, 2008

Being there

Last Wednesday, I did an experiment in telepresence. I sat at home in front of our iMac and remotely attended our daily meeting. I could see everybody else in the room and could talk with them.

To facilitate this, I put together a little virtual me, or "BruceBot" as one of my colleagues calls it. This is what it looks like:

As you can see, it is just a simple eyeball on an eyestalk, that I can pan and tilt to follow the action. The eye is a Logitech Orbit MP connected to a Dell laptop that is connected to a wireless network, making the whole mobile.

In operation, I remotely control the laptop, connect via Skype, and ask my colleague in the next cube to wheel the file cabinet into a meeting. Before he can move it, he has to unlock the cable that attaches the laptop to my shelves and disconnect the power cable (both visible on the left side).

Once in the meeting, I can speak to and hear the other participants (over the Skype connection). In addition, I can move the eye (through the remote control of the laptop) to look at each one.

It was a lot of fun, and they all agreed it was "cool" and that it felt more to them like I was there than a simple conference phone call would. Some of them thought it was a little "creepy" and my boss was a bit intimidated by the red light, as he felt he was being recorded.

Wouldn't it be great if I could mount it all on a robot base and "drive" it into a meeting by myself? Maybe someday...

Wednesday, September 10, 2008

Friends invited to visit

From time to time, our friends and relatives find themselves in downtown Salt Lake City.

When this happens to you, please take a few minutes and come to visit us!

You don't even need a car. There is great public transportation, and in the downtown area it is actually free. Check out the "free fare zone" map.

All you need to do is make your way to the "Planetarium" station at 150 S 300 W and then you are just a block away. There is an album on my facebook page which gives you pictorial directions.

Looking forward to your visit.

Tuesday, August 26, 2008

The power of distinction

There are lots of jokes that start out, "There are two kinds of people in the world." My favorite goes, "There are two kinds of people in the world: those who think there are two kinds of people in the world, and those who don't. I'm one of those who don't."

Making simple distinctions is a powerful tool for thinking. A favorite is the distinction between concepts that are necessary and those that are arbitrary.

I think this should be taught in kindergarden. In many domains there can be differences of opinion that could cause troubles. But mathematics is a good example, and one where there shouldn't be a lot of room for opinion.

Consider the concept of number. We teach our children to distinguish between groups that contain two items and groups that contain three items, and four, and so on. That distinction, in and of itself, and depending on your point of view might be either necessary or arbitrary. For example, some might think it more important what color the objects are (or what shape, etc.), rather than their number.

However, once we introduce the concept of number, things get interesting. It is necessary and not arbitrary that if you combine two groups that each contain two elements, that the new, larger group contains four elements. On the other hand, it is arbitrary and not necessary that we use the numeral "2" to label groups with two items and the numeral "4" to label the new combined group.

This use of the graphics "2" and "4" is a social convention and nothing more. We might just as well have used "2" and "9". The fact that we agree on the former, and that everyone uses it, is, of course, helpful for communication. But which symbols we use is arbitrary. In the other system, it would still be true that "2" combined with "2" yields a new group of "9".  That is necessarily so.

Sorry that I don't have the reference, but I have seen an educational study in which a boy who could not "get" the symbols we use was helped by a researcher. The researcher got several matchboxes and put different numbers of pebbles in each box. Then the researcher invited the boy to look in each box and draw something on each box to help him know how many pebbles were in each one. This technique helped the boy past his difficulty with arithmetic, and once he realized the numerals were arbitrary, he could accept and learn the conventional ones.

Another distinction that I have been thinking about is that between things that work whether you believe in them or not, and things that only work if you believe.

Every time that I fly in an airplane, I find myself disbelieving that something so large and heavy can actually get off the ground. Despite my disbelief, every one--so far at least--has actually taken off.

As a lad, I watched Peter Pan with my sisters and they were dismayed when I didn't join in the clapping to save poor Tinkerbell's life. The fact is that the film had already been made and there was nothing that could change the outcome.

I don't have anything profound to offer about this last distinction, except to urge my audience to graciously accept the things that happen in spite of their disbelief, and to believe for all they are worth in situations where that can make a difference.

Wednesday, August 6, 2008

Effects of a great man

This is dedicated to my dear friend and cousin, Harold Conrad.

We grew up together, being neighbors, sharing the same school and church and grandparents. Besides that, some of the more memorable events of my life occurred in your company.

Wonder. You lived in the town of Taber, and I lived on a farm 7 ¼ miles north of town. One summer night, I slept over at your house. The next morning, I awoke in an attic bedroom with an inexplicable feeling of excitement and certainty that it was going to be an extraordinary day. We rode out to our grandfather's farm, west of town, in the back of a truck. You took along your bicycle, and that day, with your encouragement, I learned how to ride a bike. Wow, what a day!

Novelty. Soon after our rural party line was finished, you phoned me from town, and I enjoyed my first telephone call. Our phone number was 949-23 and we could tell the call was for us by hearing two rings close together, immediately followed by three rings close together. After a longer pause, this would repeat until we answered or the caller gave up. We were in the modern world.

Surprise. One summer day, we were playing marbles, and you won with a spectacular shot, ruining my own strategy. I was suddenly seized by a strange and irresistible feeling, and threw my marbles towards the north as hard as I could. An early experience with anger closely followed by shame at my behavior, and amazement at the loss of control. The start of a life-long challenge.

Neighbors. When your father's house on the farm was finished, your family moved from town into the farm house, and we became neighbors. We rode to and from school together on the bus. Sometimes, I would sleep in and miss the bus and have to walk a quarter mile or more to the next corner to catch it. Lots of the time we spent together was on this bus, because we were one grade apart in school. Neighbors and friends.

Gratitude. You saved my life once. We were swimming in your father's pond, and I tired and panicked. You immediately grabbed me in a headlock, as we had been taught as boy scouts, and towed me to shore. To this day, I am in awe of your presence of mind, and thankful for your quick thinking. Everyone that I have ever touched for good in my life after that owes you a debt of gratitude.

Learning. Together with a few students, including our mutual cousin and friend, Burton Conrad, we formed the Apogee Scientific Organization in high school, and practiced model rocketry. At least to the extent permitted by the Canadian Department of Transport. This became a life-long hobby of yours, and one that I enjoyed for many years during our youth. Fun in school.

Phlegmatism. During one rocket launching session, I was ranging (upwind and several hundred yards from the launch pad, in position to observe the highest altitude (apogee) attained by a rocket of my making). I had spent hours gluing, painting, and polishing, and I dissolved into tears when it blew up upon launching. You came over and offered the comfort of the phlegmatic point of view. I have learned much from this incident, though I still struggle to put this into practice, being more melancholic in nature. Learning of a different kind.

Camaraderie. Our paths parted when I graduated from high school. When I came home, proud in my knowledge of computers, you showed me what you had been doing on your own personal computer (an IMSAI 8080, if I remember correctly). The things you accomplished on your own amazed me. I enjoyed trying my hand at your lunar landing simulator (and decided not to become an astronaut). How wonderful to meet again with yet another common interest.

Embarrassment. During your older brother's wedding reception, some of your cousins sang a song, which included this challenge to you, "be a man and be wed." I empathized with you, imagining that you might find this embarrassing. But, as I looked over at you, I saw that you took it in stride and good humor. And a short while later, you married your Rosa, and have raised a wonderful family. No need to worry, you have things under control.

Nostalgia. You and Rosa bought my father's farm when he had to retire after his stroke. We visited your new farm house, and enjoyed visiting with you and your new daughter. And playing with your updated lunar landing simulator. And what a surprise to see all the hot peppers that you had grown--I hadn't imagined that could be done in Canada.

Again, our paths have parted, and we have not spent as much time together as I would have liked. I want you to know how important you have been to me, and what an impact for good you have been. Thank you for your enduring kindness and example. The effect you have had on my life is invaluable.

Sunday, July 6, 2008

More W. R. Myers Marching Band Pictures

I went through old pictures today and found these pictures of the marching band, or of me in the marching band uniform. These are from either 1967 or 1968, in Taber, Alberta, Canada.

The above shows the band marching south, along 50th street, with the United Church of Canada in the background.

Marching towards the east, probably on the main street.

On the front steps of our farm house, which was located about 7 and a half miles north of Taber, along Highway 36. The house is still standing, and has changed owners a few times since our family moved out.

A portrait in the living room of the farm house.

These are digital scans of color prints, which have been cropped, but not retouched.

Tuesday, July 1, 2008

Blast from the past

Here is an old photograph. The original was taken using a chemical color process, around 1968.

Then, a color photocopy of that photograph was made in Lethbridge, around 2000.

Finally, the color photocopy was scanned today on an HP scanner.

What you see is the tail end of the W. R. Myers marching band, probably taken on parade day, around May 24, 1968.

The reason that I scanned it was to upload it to the facebook group "I was in W.R. Myers Band!"

However, it appears that one has to be a group "admin" in order to post photos. So, here it is.

While we're at it, here is one of me, in the same uniform, but without the beret. As you can see, I used to have a full head of hair!

Wednesday, June 25, 2008

Tour to Nauvoo

About a month ago, Sara and I flew to St. Louis, Missouri, for a two week vacation.

We spent just over a week in the Branson area, looking at possible retirement properties.

Then, we met a bus tour to Nauvoo, led by Susan Easton Black. It was very enjoyable.

Gifts from China

Elizabeth worked in China for a few months last year, and brought us some gifts when she returned. Thank you, Elizabeth.

There is a small wall hanging with, presumably, the text from Mark 10:9 ("What therefore God hath joined together, let not man put asunder") in chinese characters. A wonderful daily reminder.

Many other items in silk, as well, including some ties, place mats, and slippers.

And, Sara and I enjoyed putting together the wooden model of a chinese building, shown here:

Thanks again, Elizabeth.

Wednesday, May 21, 2008

Mechanics' Floating Point revealed

The eight bits in the pattern are used as follows:


S is the "sign bit": 1 means negative, 0 means positive.

EEE are the "exponent": in "excess four" notation, meaning that the usual decimal interpretation of these bits is four more than the actual power of two. When all 8 bits are 0 the entire bit pattern represents the number zero. 001 means an exponent of -3 (i.e. a multiplier of 1/8), 010 mean -2, and so on, up to 111 which means an exponent of 3 (i.e. a multiplier of 8).

MMMM are the "mantissa": the fractional value which is multiplied by two to the exponent value. There is assumed to be a decimal point and a "1" bit to the left of MMMM. So, the pattern 0000 represents the fraction .10000 (i.e. 1/2). Similarly, the pattern 0001 represents the fraction .10001 (i.e. 17/32), and on up to 1111, which represents the fraction .11111 (i.e. 31/32).

In the table below, the exponent bit patterns label each of the columns. There are only 7 patterns because the bit pattern 000 means that the entire number is zero. This wastes some of the bit patterns because the entire 8 bits represent zero whatever bit patterns are present in the S and MMMM bit positions.

The mantissa bit patterns label each of the rows.

Each cell of the table shows the real number represented by the overall 8 bit pattern. Not shown are the negative numbers, which use the same bit pattern except for the sign bit.

This table can also be found at

Tuesday, May 20, 2008

Mechanics' Floating Point

Several years ago (Fall 1993) I gave a presentation at Novell, as part of their informal lecture series, named "Food For Thought." Somewhere in a dusty archive there may still be a VHS video tape of the presentation, which was entitled "My Computer Can't Add." I presented part of this again during a job interview at UVSC in 2001.

The idea of a computer not being able to add may seem odd. But, a computer doesn't actually deal with numbers, but only with representations of numbers. Except for some very simple and small numbers, the representations are not completely accurate. Part of the problem is round-off errors. The rest of the problem comes from the fact that the representations are far from being a complete set, as only some of the numbers are actually represented at all.

Until recently, personal computers only represented integers between -2147483648 and 2147483647. Granted, those aren't small numbers (as in "pick a number between 1 and 100"), but they aren't big enough to handle the national debt. Newer computers are using 64 bit processors, enabling them to represent integers between -9223372036854775808 and 9223372036854775807.

However, money values and numbers used in scientific computations are generally handled by the "floating point" representation. Here one can represent approximations to real numbers in a larger range than the integer representations provide, but giving up precision. The floating point representation generally uses either 32 or 64 bits, but uses the bits differently than the way they are used when representing integers.

To make this clear, I invented "Mechanics' Floating Point" for the purpose of my presentation. This uses a floating point style representation inside of just 8 bits to represent numbers between 1 sixteenth and 8 (well, almost--the largest number representable in the scheme is actually 7 and 3 quarters). Choosing 8 bits allows one to enumerate all of the representations possible in 8 bits (there are just 256 of them (see "Powers of two")).

In a subsequent post, I will try to find a way to display the entire representation of Mechanics' Floating Point.

Thursday, April 24, 2008

Falling while walking

I've had time to get over it now, but it was quite traumatic last Friday to fall down while walking.

It was early morning and I was walking to our condo from our motor home parked in a nearby lot. On one ordinary step, I twisted my left ankle. On the next step it gave way and I fell!

A perfect three point landing: left knee, right hand, and chin.

Got some road rash in all three places and tore out the left knee of my favorite jeans. So, I got a free pair of cutoffs out of the deal.

Everything is mostly healed by now, and the ankle was undamaged by it all.

Strange though, to fall while walking.

Tuesday, March 18, 2008

Dissertation Published

So, after dozens of hours of work, my 1995 dissertation is published on the Internet.

This work honors the hundreds of hours that I spent documenting years of work on the project itself.

The document on the Internet differs from the printed version in a few ways:
  • It isn't broken into pages, but there are separate HTML documents for each chapter and each appendix.
  • The bibliography isn't formatted yet.
  • The screenshots from TOOL are colored instead of black-and-white.
Otherwise, I've been very careful to leave in original mistakes, except for a handful of typo corrections. But nothing substantive.

So, it stands as it did in 1995. In some ways it is considerably out of date. But the main topic is still pertinent today. How to facilitate programming by end-users is still an open question.

Thursday, March 13, 2008

Golden Gate Bridge

Yes, we are back in the San Francisco area, even though we had a bad experience here only two and a half months ago.

But, we only drove into San Francisco today because I missed the exit at the north end of the Golden Gate Bridge. Did a quick u-turn at the south end and drove back to the Vista Point parking area at the north end.

Then we proceeded to walk the length of the bridge from north to south (8,981 feet!), took a brief rest on a bench, ate an ice cream bar and walked all the way back. Two hours of very pleasant workout.

At the very middle of the longest span, where the suspending cable is lowest, I was able to reach up and touch it. What fun!

Otherwise, we're just hanging out, enjoying a beautiful location, surrounded by vegetation and bird song. Barbecued suppers. Good company.

Finished converting Chapter 3 of my dissertation.

Monday, March 10, 2008


In case you don't know where it is, Sausalito is just north of San Francisco: the first town after the Golden Gate bridge.

And that's where Sara and I are located right now. We are house-sitting, enjoying the home of a friend of a friend, who is herself whale-watching in Mexico.

We had a long but uneventful drive yesterday from Elko, Nevada, having arrived there the night before, after Andrew's birthday party. Hard to believe he will soon be 19.

I have now published Chapter 2 of my dissertation.

Saturday, March 8, 2008

Painful Times

Not being allowed to defend my dissertation was a painful time. But, there is no point in belaboring that now.

Whatever the reasons my adviser and the department had for their decisions, I am going ahead with my own decision to self-publish the dissertation on the Internet.

It is proving quite painful to convert WordPerfect documents into HTML documents. Microsoft Word helps a bit, but doesn't do a very good job of rendering the images. I'll work more on those as time permits.

In the meantime, I've finished the first cut at converting Chapter 1.

Thursday, March 6, 2008

All But Dissertation Defence

In 1986, while I was an assistant professor at the University of Lethbridge, I enrolled in the Computer Science Ph.D. program at the University of Calgary.

It is important to a university that its professors hold the Ph.D. degree, so the University of Lethbridge encouraged and helped me in this endeavor. I was in a tenure track position, and as I neared the next evaluation point, it became clear that I would not complete the requirements of the Ph.D. degree in time. For that and other reasons, I left this position and took employment at WordPerfect Corporation in Orem, Utah.

I kept in touch with the department at the University of Calgary, and, shortly before the 10 year limit, completed the writing of a dissertation. All that was left then was to defend it in front of a committee. This I was not allowed to do.

So, I hold what is considered to be a Ph.D. ABD (all but dissertation). In my case, the dissertation is written but not defended.

Looking through old disk drives recently, I located the files from which I printed out the dissertation. Now, I am in the process of publishing the dissertation on the Internet. It is quite difficult because the documents were produced using WordPerfect 5.1 for DOS, and Microsoft Word doesn't convert these files very well.

So, I'm running WordPerfect inside of DOSbox and saving each file in a generic format and then hand editing by inserting HTML tags. The diagrams are screen-captured from Word's attempt, or reconstructed. Otherwise, I am leaving everything exactly as I wrote it in 1995.

So far all that I have to show for it is Chapter 6.

Tuesday, February 26, 2008

10 Million People Could Do It

In my previous post, I claimed that it couldn't be done. Well, I was wrong.

One person could examine every (30 generation) ancestral line in 34 years, giving each line one second.

But, 10 million people could accomplish the same task in less than two minutes.

That's one dimension of the solution.

The other one is that it's not really 2 billion ancestors in a family tree, but 2 billion places or roles: Father, Mother, Paternal Grandfather, etc. We could represent, or name, these places with simple strings:

F and M
FF, FM, MF and MM

and so on. These are isomorphic to the binary strings that I constructed in an earlier post about the "Powers of two."

As a more intense example, in my family tree there is an ancestor at position FFMMMFFFFFFFFFFMMFFFMMMMMFFMFF, who happens to be William the Conqueror. I would be very surprised if this illustrious gentleman didn't pop up in at least one other place in my family tree.

The point is that sometimes the same person will be found at more than one place, playing more than one role in the same family tree. If my son were to marry one of my third cousins, his children would find that the person in position FFFMMF (Caspar Witsch) might be the exact same person as the one in position MxxxF (again, Caspar Witsch). This cuts out a huge section of his or her the family tree.

Replace each "x" with one of "F" for father or "M" for mother. I'm not going to say precisely which family of third cousins he might marry into! To his children, I will occupy position FF. Everyone descended from position FFF is either me or one of my sisters. Everyone descended from FFFM is one of my (paternal) cousins, from FFFMM a second cousin, and from FFFMMF a third cousin. From my hypothetical grandchild's point of view, all of my third cousins are descended from individuals in positions FFxxxx (of which there are 16 possible; in other words, any one of my great-great grandparents). The grandchild's mother, being one of my third cousins is a great-great grandaughter of one of these 16 people. This would make the child both a 3rd great grandchild and a 4th great grandchild of Caspar Wintsch--his or her own fourth cousin once removed.

Getting back to the work at hand, if we combined the family trees of all of the 10 million people, chances are really good that they would have a lot in common. My sisters' family trees are identical to mine. My cousins' (and nephews') family trees are half the same as mine, and so on.

How many people have lived in the world since the year 1000? Let's suppose 20 billion lived in the areas from which the 10 million people drew their 30 generations of ancestors.

So, these 10 million people have no more than 20 billion distinct ancestors shared among them. If we spread out the work, each ancestor could be contemplated for one second in under an hour.

But, one second isn't very much time to devote to another human life.

What if we wanted to see that each of the 20 billion ancestors got 3 whole hours of the undivided attention of one of our 10 million workers. The 60 billion hours, split 10 million ways, would require 6,000 hours of each worker's time. A full-time work-year contains 8 hours per day times 250 days per year, or 2,000 hours. So, if we could convince each of our 10 million workers to devote 3 years of full-time work, every person who ever lived could get 3 hours of attention. And the 10 million people could still take off nights, weekends, holidays and some vacation time.

So, it could be done, after all, if only we could convince 10 million people that it is that important.

Wednesday, February 20, 2008

It can't be done

In my last post, I showed an ancestral line from William the Conqueror all the way to my grandfather.

Here is another ancestral line from a contemporary of William down to my grandfather. It was chosen more or less at random from 64 possible ancestral lines leading to Margred Verch Llywelyn, and from there this line is the same as the first one.
Iwerydd Verch CYNFYN             1024
Owain Ap EDWIN 1044
Angharad Verch OWAIN 1065
Susanna Verch GRUFFYDD 1095
Margred Verch MADOG 1129
Llewelyn Ap IORWERTH 1173
Margred Verch Llywelyn 1210
Maud de Clifford 1234
Eleanor Giffard 1275
Elizabeth le Strange 1308
Roger Corbet 1330
Robert Corbet 1383
Roger Corbet 1412
Anne Corbet 1438
Blanche Sturry 1472
Thomas Whitcomb 1502
William Whitcomb 1528
John Whitcomb 1558
John Whitcomb 1588
Johnathan Whitcomb 1628
Johnathan Whitcomb 1669
Johnathan Whitcomb 1690
William Whitcomb 1719
Oliver Whitcomb 1749
Oliver Whitcomb 1772
Hannah Whitcomb 1806
Lucinda Haws 1828
Mary Elizabeth Holdaway 1856
Arthur Marion Conrad 1882
There are 268,435,456 ancestral lines of 28 generations (2 raised to the power 28). Counting ancestral lines from around 1000 AD down to myself there are well over a billion -- 268,435,456 for each of my four grandparents.

I don't think it is particularly easy to understand just how many lines this makes. But, a simple calculation will convince you that, if you set yourself the task of contemplating each one of the ancestral lines of 30 generations for just one second each, it would take you just over 34 years to complete the task.

And, if you wanted to go back another 300 years (10 generations) on each line, you would need 34,000 years to contemplate each line for one second. Oh, wait. Let's give you credit for the 34 years you have already spent. That leaves you a mere 33,966 years to go!

Well, that's one reason it can't be done.

Mercifully, there are not enough surviving records to complete the research going back 30 generations. And, of course, that's another reason it can't be done.

So far, I've found about 10 lines that go back that far, meaning that I am one millionth of a percent done with my genealogy research.

Still, it's a fun hobby. Fits right in with my fascination with time.

Tuesday, February 19, 2008

Related to Royalty

Yesterday, while digging through published Genealogies, I discovered that I am descended from royalty.

Here is a list, from parent to child, showing approximate birth year for each:

William I the Conqueror King of England 1027
Henry I "Beauclerc" King Of England 1068
Matilda (Maud) Empress Of Germany 1102
Henry II "Plantagenet" King Of England 1133
John "Lackland" King of England 1166
Joan Princess of England 1188
Margred Verch Llywelyn 1210
Maud de Clifford 1234
Eleanor Giffard 1275
Elizabeth le Strange 1308
Roger Corbet 1330
Robert Corbet 1383
Roger Corbet 1412
Anne Corbet 1438
Blanche Sturry 1472
Thomas Whitcomb 1502
William Whitcomb 1528
John Whitcomb 1558
John Whitcomb 1588
Johnathan Whitcomb 1628
Johnathan Whitcomb 1669
Johnathan Whitcomb 1690
William Whitcomb 1719
Oliver Whitcomb 1749
Oliver Whitcomb 1772
Hannah Whitcomb 1806
Lucinda Haws 1828
Mary Elizabeth Holdaway 1856
Arthur Marion Conrad 1882
I am a grandson of Arthur Conrad, and thus a 24th great-grandson of King John--the King John of Magna Carta fame.

This discovery is somewhat tempered by some realizations:
  1. The descent is through Joan, who was an illegitimate daughter (although she married and became Princess of Wales, and later got Pope Honorius III to declare her birth legitimate).
  2. King John must have millions and millions of descendants by now.
  3. Although he was an innovator in some ways (ex. the Pipe Rolls), he had many disagreeable traits, and was recently selected as the "worst Briton" of his century.
Last year, in "Powers of two," I wrote about large numbers. These happen to apply in genealogy, for each of us has two parents, four grandparents, eight great-grandparents, etc.

So, by the time you reach William the Conqueror, my 28th great-grandfather, there are well over two billion ancestors in my family tree. In particular, William the Conqueror is only one of nearly 550 million 28th great-grandfathers (and an equal number of 28th great-grandmothers).

I don't know how many people were living in western Europe back then, but I doubt that it was anywhere near a billion. So, it doesn't seem very unlikely that one of them in particular was a progenitor.

On Trusting the Internet

The other day, I was doing some JavaScript coding, and needed to find an element in the HTML document. Don't worry if you don't understand the technical details--the message of this post does not depend on them.

I remembered that there was a way to find an element by its identifier (or "id" for short), so I did a quick google of "findelementbyid" (which is what I remembered it being called) and got a whole bunch of results. The second one on the results list even included the excerpt, "FindElementById has yet to fail me" which sounded very reassuring.

However, it did fail me. Hmph!

I turned to my trusty reference book on JavaScript and there was no "findelementbyid" in the index. Very curious. So, I turned to "document" in the reference section and it wasn't listed there either. Curiouser and curiouser.

However, in the reference section, there was a mention of "getelementbyid".


Why did I trust the Internet?

I've just done a comparison, and a google of "findelementbyid" returns only 556 results (YMMV) which, in retrospect is awfully small.

Sure enough, a google of "getelementbyid" returns "about 5,410,000" results. (Again, YMMV.)

The moral of the story: exercise care when using the Internet as an authority.

Monday, February 11, 2008

Mourning Great-Great-Grandmother

Over the past week, I've been studying the life of my Great-Grandmother, Anna Caroline Wintsch Muhlestein.

Our family has copies of a few pages of her life story that she wrote in later life. I assume that this came from her "Autobiographical sketch, 166-68, in Histories and biographies written by members of Camp Sunflower, Daughters of Utah Pioneers of Center Utah County, Provo, Utah, vol. 1." (available at the Family History Library, Salt Lake City, Utah). (See this link.)

Another version of the story was posted on the Internet in 1999 by, presumably, one of my fourth cousins. I found this while waiting for Andrew to bring me a paper copy of the story that has been in our family for years.

Even though I had read both of these stories before, a funny thing happened while I was reading the story out loud to Sara.

Warning: plot spoiler follows. If you want to read the story yourself first, you ought to do so right now, before reading on in this blog.

You've been warned.

I was reading along, just past the point where Anna's older brother Jacob, dies and is buried in Florence, Nebraska. Then, as I got to the point where Anna's mother unexpectedly dies after saying goodbye to her children, I got all choked up. I even cried out, "No! I don't want this to happen." Sara and I were both crying, to learn of the mother's death.

The strange thing is, she actually died long before either of us was born. And, I had even read the story before. What a strange reaction.

Empathy, I suppose, for Anna, her brother and sister, and especially her father, who had lost his father, a brother, two step-fathers and several step-siblings, his mother, his oldest son, his first wife, twin baby boys, and a grandson by that point in time.

Time is a strange thing.

Wednesday, January 9, 2008

San Francisco Warning

Beware of parking signs in San Francisco.

The AAA guidebook for Northern California and Nevada does clearly warn, and gives accurate estimates of the costs. One thing it doesn't emphasize is that they really mean it.

San Francisco has a serious parking problem. There are more automobiles than there are parking spots. With typical California ingenuity, they have turned this problem into an opportunity.

Big money.

In parking meters, a quarter will buy only 5 minutes (in some, less desirable places, as much as 10). So, come equipped with three dollars in quarters if you want to park downtown for an hour. And one hour is the most you can get. Not enough time for lunch in a fancy restaurant, like the one we visited, Aqua.

Organized parking is very rare and comes at a cost of $2.50 per twenty minutes, or more. Doesn't look all that trust-worthy either.

So, we hunted around and found a spot that looked all right, several blocks away. After lunch, we walked to the spot which was empty. Looking up, we saw a sign that said no parking from 3 p.m. to 7 p.m. To make a long story short, we called the number on the sign and took a taxi there.

We found the location doing a booming business, with long lines. A steady stream of tow trucks was arriving, unloading, and going out again. We expected to pay maybe a hundred bucks, but the bill came to $238.75 and when we finally did get the car, there was a ticket on the windshield for an additional $60! Wow.

Big money.

Three hundred dollars--the penalty for not seeing a sign 15 feet above the ground. Or, for being unwilling to hand over $15 for parking even further from the restaurant. During the evening the restaurant offers valet parking (price unknown), but nothing at lunch time.

Since that experience, we noted other parking dangers. Further out, there is two hour parking where there are no parking meters. There is an exception for local residents, whose cars carry a neighborhood sticker. Overnight parking is allowed. If you can find a spot. Park in an illegal location (several per block) and you will be towed. Exceed the time limit and you will be ticketed. More than four tickets and you will be towed.

Further, each side of each block has a sign warning of tow away for a two or three hour period each week. We befriended a local merchant, who asked us each time we passed, "Where did you park?" Upon hearing our reply, he told us the details of the difficulty of that side of whichever street.

Wow, what an expensive ordeal! Our conclusion is that San Francisco is not a friendly city for automobiles. Leave yours across the bay in your hotel parking lot and take the ferry into the city. Or, take your chances, but you have been warned.

We won't be returning unless we absolutely have to--we didn't leave our heart there.

"If you're going to San Francisco, be sure to wear some flowers in your hair" may have been good advice in the 60's. Today, better advice is to leave your car behind, or bring lots of quarters.

Friday, January 4, 2008

Holiday Travels

Really, one should write one blog entry for each day of holiday travels. Oh well, we didn't.

Day 0, Thursday, December 20, 2007

Board the Amtrak "California Zephyr" just before midnight, and get some sleep in the bunk beds of our private roomette.

Day 1, Friday, December 21, 2007

Enjoy the train ride and the pre-paid meals in the dining car. Arrive in Emeryville late and take the bus into San Fancisco. Check luggage at the Amtrak station just at closing time. Walk to Ben's restaurant and then to his van, mostly uphill. Wait an hour for him to finish work. Cold. Drive to his apartment and stay up late listening to his room mate talking until early in the morning. Sleep on Ben's bed. Cold.

Day 2, Saturday, December 22, 2007

Go pick up a rental car and drive into Marin County. Visit with Tony and Anne. Lucas drops in. Cold. Drive to Emeryville and find the train station. Sleep in the Hilton Garden Inn. Comfortable.

Day 3, Sunday, December 23, 2007

Church in Cupertino. Drive to Monterey and enjoy eating near the beach. Sara gets her feet wet in the Pacific. Sleep in a Ramada Inn room. Comfortable.

Day 4, Monday, December 24, 2007

Drive along Highway 1 and enjoy the beautiful scenery. Windy and cold. Stop at Hearst Castle, where tours are sold out, but watch the video. On to Morro Bay and enjoy seeing Morro Rock, but not much of an ocean view. Sleep in our chosen motel. Burn one fire log in the fireplace. Comfortable.

Day 5, December 25, 2007

Burn two more fire logs. Drive to Cambria. Check in to chosen motel very near to the beach on Moonstone Road. Cold. Return to Morro Bay to eat crab.

Day 6, December 26, 2007

Drive to Hearst Castle and take the tour. Cold. Walk on the beach. Cold. Another night in the Moonstone Inn.

Day 7, Thursday, December 27, 2007

Drive to San Francisco. Hotels there do not honor their coupons, so we check into Marin Suites in Corte Madera. Very nice room.

Day 8, Friday, December 28, 2007

Eat Breakfast with Tony at Max's, and he gives us the key to Lucas' apartment. Drive to San Francisco and late lunch with Ben at his restaurant, "Aqua." While there, our rental car is towed! So, we go redeem it for $240. Move into the apartment on California in the 3200 block. Comfortable, but very cold.

Day 9, Saturday, December 29, 2007

We fly Helaman out to Oakland and go pick him up at the airport, after treating Ben to lunch at Max's in Corte Madera. Dinner at "Conduit" where a friend of Ben's is our waiter.

Day 10, Sunday, December 30, 2007

We try to go to church on Pacific Avenue, but get there too late. Helaman and Ben go to a Raider's game in Oakland.

Day 11, Monday, December 31, 2007

Drop our luggage off at the Amtrak station in Emeryville. Check into the hotel. Drive back into San Francisco to return the rental car. Help Helaman get ready to drive Ben's van back to Utah and say goodbye to Ben. Helaman drops us off in Emveryville, where we spend our last night in the area at the Hilton Garden Inn. Comfortable but not quite warm enough.

Day 12, Tuesday, January 1, 2008

The hotel has a shuttle, but no shuttle service! So we walk to the train station, and board the train, which leaves at 8:05 a.m. Enjoy the day on the train. Sleep in the bunk beds of our private roomette.

Day 13, Wednesday, January 2, 2008

Arrive about 5:15 a.m. and Helaman picks us up. End of holiday travels, and I actually work that day.


A few weeks ago, I decided to stop ingesting caffeine.

After the withdrawal headaches, things settled back to normal.

However, I notice that my head feels "fuzzy" and I'm not sure how clearly I am thinking.

No worries, though. Even though I can't remember why I decided to go off of caffeine, I trust that my mind was sharp back then, and I must have had a good reason.