Friday, January 30, 2004

Careful plans:

Ever have one of those days where you’re not sure you can do all the many things you’ve planned, and then a few catastrophes later you have trouble remembering why those postponed tasks seemed so important? Say, aren’t MOST days like that? My aunt Marilyn says that you feel you’re in charge of your life, but you really get to decide what color socks to wear in the morning.

Thursday, January 29, 2004

WMD:

I was going to make a joke about Weapons of Mars Destruction, but I think this cartoon by Mike Luckovich says it best.

Wednesday, January 28, 2004

Speaking of Inventions:

While on vacation, we saw a restaurant billboard advertising a new bathroom invention: "Drive-thru clean rest rooms." I'm not sure how that would work, but it sounds like a great idea for the weary tourist.

Wednesday, January 21, 2004

Precision Blogging will now take a short vacation, resuming late next week:

Here are a few archive items to tide you over...

The deal of a Solar System:
Jeff Bezos, the founder of Amazon, has launched his own space program and wants to send tourists into orbit. This could be a terrific bargain: I'm going to wait until they offer free shipping.


My other car is better than your other car...
I can hardly wait to own a car with a big digital display on the back. Then I can display short messages like: STOP TAILGATING or YOUR LIGHTS ARE OFF. This feature has to be economical within ten years. Just give me a giant display with big fat pixels that the driver behind me can read sixty feet away. By the way, I’ve already invented the first joke for this exciting new medium, a message that says: MY OTHER CAR HAS VIDEO.


What's the name of that left turn?
Tonight I'd like to ask for some help. There's a certain type of left turn; I don't know what to call it. Sooner or later, giving instructions, I'll want a clear descriptive name for this thing. So: you're driving on a road, approaching an intersection with a traffic light. You want to turn left, but you're not allowed to just go left at the intersection. Instead, you have to go past the light, curve sharply right on a short access lane until you are briefly on the cross road, and then go straight through the traffic light (again) to cross the road you started on. I'd call this an "allemande right/turn left" except that even the few remaining square dancers probably wouldn't guess what I was talking about. It's not a "post light jughandle" either. What's it called?


(I also ordered a cardboard box online):
When I bought some wrapping paper for my friend, I asked the clerk to wrap it in itself. {Steve Wright created his own, rather better wrapping paper joke. To find it, search for ‘gift-wrap’ on this page:(Steve Wright Humor)}


Adopt a Place via the Web:
Is there some place in this world that fascinates you, but you’ve rarely (or never) been there? The web provides extraordinary opportunities for vicarious travel. Pick your place. You can see its maps, see pictures of its people, read its newspapers, study its tourist information, follow its economics, guess at its future, worry about its problems. You can even write letters and get involved. Think of it as a Massively Multiperson Online Living Experience. There will be no monthly fees, hackers will not try to steal your virtual goods, and you don’t have to try to level up.


Time Really does Fly (away):
When I was a teenager, I once found myself talking to a middle-aged woman at a party about something I hoped to do in the vague future. “When I’m older and have more time …” I began. She cut me short. “You will never have more time than you have now, “she said. “You will always have less time.” I stared at her in disbelief. But she was right.

Don’t Cryo for me:

The comedian Steve Wright says: “When I die, I'm leaving my body to science fiction.” Wait a minute … isn’t that exactly what happened to baseball great Ted Williams?

Tuesday, January 20, 2004

Horch horch, die Lerch:

When programmers write programs, we add comments to the code. The comments are ignored by the computer, but they remind us (or tell anyone else who has to change our code) what in the world we were thinking When We Wrote That. I was reading from the book of Isaiah last night and it occurred to me that we programmers have been missing something.
When we have really bad news to impart in a comment, we use “note” or “warning” to get the reader’s attention. For example:
//Note: the next line looks like a bug but if you change it the program will crash.
Here’s another example:
//Warning: the programs in this file have not actually been tested. They’re probably okay.

Now I think I have a new weapon to add to the arsenal that will really get attention:
//Hark! This routine doesn’t check for errors (I had to meet an unreasonable deadline).

The title of this blog entry is the first four words from Schubert’s lovely setting of Shakespeare’s poem, Hark, Hark! the lark (Cymbeline). Even native German-speakers will admit that the words lose some elegance in translation.

Monday, January 19, 2004

It’s not Blackbird:

People in the business world love to use metaphors, similes, shared allusions and code words to “communicate” more precisely. For example, many years ago I overheard this, passing the door of a tense meeting between a senior Microsoft representative and a software company president. The Microsoft guy said, “I know, last year we told you our story was Blackbird. We told everybody our story was Blackbird. But his year our story is not Blackbird.” (It has a certain sound, doesn’t it?)
I thought of this recently when overhearing the end of another business meeting. This time everyone sounds happy, agreement has been reached, and one man sums up: “Exactly, it’s the guy in the middle that has to make the marriage work!” The guy in the: middle? What kind of marriage does he have?

Sunday, January 18, 2004

Should I write a letter to the newspaper?

Two years ago, if I had an interesting view of a newspaper story, I would write to the paper. The New York Times has published three of my letters, so I always feel I’ve a chance of getting published again. But now I can respond in this blog (as I did regarding movie trailers) instead of writing a “letter to the editor”. I’m addressing a different audience (a smaller one and more classy of course), but I’m certain to be published. I wonder if newspapers get as many letters as they used to.

Friday, January 16, 2004

There was once (almost) a free Lunch:

You know of course that there’s no such thing as a free lunch. But consider this. I was once working away, minding my own business, when an argument arose - right next to me - between a developer and a marketing guy. “If my code has that bug I’ll take you both to lunch!” shouted the developer, obviously including me. “If there isn’t, I’LL take you both to lunch,” responded the marketer. I suddenly realized that regardless of the outcome, I was going to get a free lunch. But somehow, the lunch never materialized. (The developer was right, in this case.)

Thursday, January 15, 2004

Some Software Bloat is Good; Some Software Functionality is Bad:

I got some good comments to my Jan. 9th blog entry on Save Files, and I’m going to respond a little today. First, software “bloat” (programs much larger than necessary) is often a good thing. One cause of bloat is that developers include libraries in their programs that have already been well tested. These libraries do more than a given program needs; re-inventing wheels to do without these libraries is a genuine waste of time, resources and money.

Another cause of bloat is that cheap memory and speed of modern computers does not require carefully crafting software to fit into a tiny memory and run with incredible efficiency. Coding for speed and code size greatly lengthens the work and time to develop. It’s much better to take the bloat and save the work time.

Most commercial programs are buggy because they have too many functions. They can get into trillions of different states, and there is no way to test every state. In general, small programs that do much less can be reliable, and computer users get a big win when they learn how to harness many small programs to solve their problems.

The last twenty years however have produced immense pressure to produce these big maxi-function programs. First, companies realize that if they sell you a program that does your entire income tax form, other companies have a hard time competing with them. If they sell little programs that handle individual aspects of tax forms in well-defined ways, 100 other companies will compete with each of these little components, probably with great success.
Second, reviewers and purchasers often give high marks to the program with the most functions, or reject a program without their favorite function. Winning this popularity contest leads to buggy bloat. Third, our current wisdom is that most people lack the patience or understanding to string small tools into big solutions; end users need the big programs that do this for them. One could argue that the ugly bugginess of big programs is easily outshined by the productivity they confer on large numbers of users.

Just remember, the computer business is still in its infancy. And maybe the computer business will always be in its infancy….

Wednesday, January 14, 2004

Inventions that we probably don’t need:


  • “Smart” paper cups.
  • Miniature rainbows.
  • Disposable sky scrapers.
  • Re-useable food.
  • Cleverly misleading maps.
  • Digital toilet paper.
  • Combination wireless phone and microwave (uses the same frequency to, you know …).
  • Extra-strength placebo tablets.
  • Treadless tires. (The tire industry might like these; you’d have to replace them as soon as you buy them. And if the tire industry ever starts thinking like the printer business, you WILL be able to buy a new car with tires that have to be replaced after the first thousand miles.)
  • Then of course, there’s everybody’s favorite candidate: A new medium to store music on, in a new format.

Tuesday, January 13, 2004

Why didn’t Merry & Pippin Grow Taller?

Enjoying the RotK movie, I waited eagerly to see how tall Merry and Pippin would look after drinking the Entish drafts. Of all the omissions from the books (many quite understandable), the one that disappointed me most was that Merry and Pippin remained the same size as Frodo and Sam. I asked myself afterwards why this bothered me. The answer, I think, is that the LotR movies are, quite strikingly, an artistic exercise in playing with height. The director delights in stretching towers, mountains, building sites and buildings, elephants and even swords to heights that are unrealistic, impractical, inconsistent with the apparent technology of Middle Earth, but yet artistically very effective.

In fact, Peter Jackson seems to have a phobia: a dread of the slightest absence of extreme heights.

The movies also play with the heights of the actors. My wife discovered that the tallest ACTOR of the Fellowship (at over six feet) appears to be the smallest character: Gimli. Child doubles frequently play the hobbits in depth shots to give the desired size relationship to grown men. So if playing with height is an artistic dimension of this movie, wouldn’t it have been consistent to show Pippin and Merry’s growth spurt? Enough about RotK; tomorrow, back to our “regular” programming.

Monday, January 12, 2004

Just a little Wagner? Please?

We saw the Return of the King movie yesterday, and definitely enjoyed it. I imagined the following conversation between the movie director and the composer of the music:

Composer: Hey you know Wagner wrote all this neat music in his Ring of the Nibelungen Operas, about a ring to rule them all. We could use some of that in the movie music.
Director: No thanks; no Wagner.
Composer: I think it's in the public domain by now, and anyway I’d be ‘sampling’, we wouldn't even have to pay for it.
Director: No Wagner!
Composer: There are all these neat leitmotifs - little portentous music fragments - about the ring. I could work them in at key moments.
Director: There will be NO WAGNER in my movie!
Composer: Tolkien must have been aware of Wagner’s ring plot. You know, it makes sense to quote the mus…
Director: ABSOLUTELY!     NO!     WAGNER!

Nonetheless...

When the ring falls into the lava you can hear the three-note leitmotif that my orchestral score calls the "Annunciation of Fate". The harmonies are there; the melody is there too, but the third note is heavily disguised, appearing a few octaves higher than usual.

Sunday, January 11, 2004

Movie Credits Should be Entertaining:

The NYT has an article complaining that credits at the end of movies have gotten too long (RotK is over 9 minutes). The article discusses in painful detail why people get named in these long credits, but it never discusses the real issue – entertainment. If the movie companies just want historians to know who adjusted the Best Boy’s shirttails, all they have to do is give the full credit list to the wonderful Internet Movie Database. If a movie is good, we usually don’t complain how long it is; the same should be true for the credits. The movie “Airplane!” has jokes in the credits and a nice boff for you if you wait to the end. “Independence Day” has very long credits, but the music playing while the credits roll is terrific, I stayed to the very end to listen to it. Many movies, even animated ones, have delightful outtakes that keep us in our seats for the credits. And some movies even roll the credits slowly enough that we can read them! Creativity is the answer here, not quibbling about who deserves to be credited.

Friday, January 09, 2004

Save Files:

(I hope to make a boring subject interesting today.) When you’re playing a computer game and you Save, the program has to write out everything it needs to resume your game later. Some complex games write save files too large to fit on a floppy, perhaps recording everything about the state of an artificial world and its hundreds of inhabitants. There’s a similar problem when you save a document or, say, a file in PhotoShop. When I write a program, I find that hardly anything is more tedious than taking care to record everything – everything – when you click Save, and to restore it all when you resume later. Inspecting the source code and testing to make sure that save/restore works is time-consuming as well as boring.

That’s why I was astounded the first time I looked at a save file for the game of Myst. The save file was tiny, much smaller, for example, than a save of this blog entry would be. The moment I saw the size of the Myst save file, I realized that the game had been designed to keep this tedious task simple. In Myst, you can only resume the game at a dozen or so locations; a few bits suffice to record that. The game has to remember which puzzles you’ve solved, but either you have solved them or you haven’t! So that’s one little bit per puzzle. There are things on the island that you can move, mostly switches or doors that are either open or closed. Again, one bit per item remembers its state. When I thought about how easy it must have been to program the save/restore logic of Myst, I was more than astounded. I was jealous.

Thursday, January 08, 2004

Global Warming is a Weapon of Mass Destruction:

Global Warming is a Weapon of Mass Destruction. If it’s happening, it definitely will be one. Think about it. Shouldn't we seek it out and destroy it?

Wednesday, January 07, 2004

Christina's Other World:

Christina's Other World. (It may be difficult to view this web page due to high demand.)

And by the way, this is:
(Christina's World). (This page may not display very fast either.)

Tuesday, January 06, 2004

They’re talking in a very foreign language…

How do you feel when you hear people talking in a language you do not understand? I tend to listen to them as one listens to abstract music, or to an opera in a foreign language. The meaning may be inaccessible but I can enjoy the sounds, the pitches, the rhythms, the phrasing, all of which tend to seem controlled in an artistic way and delightfully different from the sounds of ‘American’. I’m not speaking, of course, of those frustrating cases where I must understand them or communicate something to them.

Monday, January 05, 2004

The smallest unit of Mouse Movement is called a “Mickey”:

A mickey is the smallest visible unit of cursor motion your mouse can produce on a computer screen. It turns out that most of the mousing annoyances we experience using Windows could and should have been avoided by its developers in the first place. Joel Spolsky has many thoughtful comments on designing for Good Pointing on this web page: joelonsoftware.
This page is full of advice for programmers, but Spolsky has made the text quite non-technical and it’s a good read.

Sunday, January 04, 2004

January First is our great Pagan Holiday:

Well, another secular New Year has been celebrated. The obvious characteristics of the celebration are: unease about the new year (will it begin? Will it be better or worse?), a sense of the cycles of time, a desire to congregate for reassurance, and a desire to lower inhibitions and use the magic of sex and drink to ward off the evils of time. If you study anthropology, you’ll see similar celebrations in very primitive societies. We may be a sophisticated civilization, but we show our primitive pagan colors when time waves its ugly flag at us.

Friday, January 02, 2004

I hereby resolve (or do I):

I generally do not make new year's resolutions, but this year I've made an exception.

  1. I resolve to make my resolution #2 very important; I shall do it as soon as possible.
  2. I resolve that in order to avoid careless miskates I shall not rush into anything, especially resolution #1.
  3. Notwithstanding, I resolve to give top priority to resolution #4.
  4. At a convenient moment, I resolve to renumber these resolutions in descending order, possibly causing those with numeric references to refer to other resolutions.
  5. I resolve to delete, at a convenient moment, any resolutions in excess of four and renumber accordingly.
I'll end this blog entry on a less confusing note. Mark Twain once said: There are two types of people: those who divide people into two types, and those who don't.

Thursday, January 01, 2004

A picture would have been worth a thousand words:

Sorry, I didn’t have a camera, you’re going to get the words instead. I looked up this morning and saw a fascinating cloud pattern I’ve never seen before. It reminded me of the “mackerel sky” that is pretty common in the Northeast US: Cloud puffs arranged like large fish scales. (It often rains 12 to 36 hours after the mackerel sky appears.)
Today’s cloud pattern was unusual: rectangular clouds tiling the sky! A closer look showed that the tiles were formed from diffused, straight ropes of clouds in formation across my field of vision. Something had casually scraped almost straight scratches – slightly curved thin arcs actually – across these ropes to divide them into rectangles. A contrail perhaps 30 degrees away from the tiled clouds (and parallel to the ropes) showed what had sculpted the crossing arcs: the contrail was crisscrossed in the same way, but also strongly blown to one side by a strange formation of very thin parallel crosswinds.