Wednesday, December 17, 2008
Mesquite rip-offs
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
Y2K38
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"
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
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?
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
Tuesday, October 28, 2008
Being there
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.
Wednesday, September 10, 2008
Friends invited to visit
Tuesday, August 26, 2008
The power of distinction
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.
Wednesday, August 6, 2008
Effects of a great man
Sunday, July 6, 2008
More W. R. Myers Marching Band Pictures
Tuesday, July 1, 2008
Blast from the past
What you see is the tail end of the W. R. Myers marching band, probably taken on parade day, around May 24, 1968.
Wednesday, June 25, 2008
Tour to Nauvoo
Gifts from China
Wednesday, May 21, 2008
Mechanics' Floating Point revealed
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 http://sanbachs.net/mfp/mfp.html.
Tuesday, May 20, 2008
Mechanics' Floating Point
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
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
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.
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
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
Sausalito
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
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
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
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
FFF, FFM, FMF, FMM, MFF, MFM, MMF and MMM
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
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 1024There 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.
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
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
Here is a list, from parent to child, showing approximate birth year for each:
I am a grandson of Arthur Conrad, and thus a 24th great-grandson of King John--the King John of Magna Carta fame.
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
This discovery is somewhat tempered by some realizations:
- 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).
- King John must have millions and millions of descendants by now.
- 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.
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
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".
Aha!
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
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
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
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.
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.