Wednesday, December 31, 2003

Master and Commander of the Family

Scene: A father, not unlike Clark W. Griswold, is driving his wife and two sons cross-country to Los Angeles from Chicago in a large, wood-paneled station wagon. Having recently seen (and very much enjoyed) the motion picture Master and Commander, the father has decided to be Master and Commander of the the Family.

Cast: The father, Herbert, is wearing thick black glasses, the product of too many years as an associate in a medium-sized accounting firm. His wife, Madge, is a part-time real-estate agent who aspires to join the $1,000,000 club. His twin boys, Brad and Brent, are 14, their eyes obscured by mops of sandy-brown shocks of hair.

Herbert: Mr. Midshipmen, hands to the braces! Port your helm. Jump to it - and brail up the mains'l!

Madge: Herbert, will you please stop with that silly yelling? It's been over a week since you saw that movie! You're making no sense!

Herbert: Madge,under penalty of a charge of insubordination, ye'll address me as Cap'n and by no other appellation. Discipline in this man's navy is the watchword. Failure to abide by this rule will mean I muster ye out at the next port-o-call.

Madge: Seriously? Is that an option?

Herbert: Lieutenant Madge, I'll not warn you again, I'll brook no insubordination -

Brent: Dad, there's one of those new Porsche Cayennes coming up fast in the passing lane!

Herbert: [Shouting] Master of the watch, I'd be pleased if ye'd run up with a glass and tell me if ye see any of the enemy about!

Brent: What's that mean, Dad? [Whispering to Brad] What's he mean?

Brad: I think he wants to go faster so he can get a better look at the Porsche as it passes us. See if there's any cops around.

Herbert: Look smart, Mr. Midshipmen... have you sighted a privateer or a frog on the horeezon?

Brent: Uhmm, no...

Herbert: That's no way to speak to your commanding officer! Boy, you'll run up to the mizzen watch this instant or be clapped in irons!

Brad: Dad, I think he meant there aren't any cops around.

Herbert: Another bloody insubordinate? Both of you will taste the lash before this day is done!

[Continued on page 3]

Monday, December 29, 2003

Doug's Automotive Predicteration for 2004

#1) For better or worse, the automotive horsepower race will continue unabated. Nissan's groundbreaking success in appealing to lead-footed instincts will breed a host of copycats. Witness Acura's 2004 TL, boasting 270 horsepower versus the G35's 260. Look for 300 horsepower sports sedans, in the under $40K category, coming soon to showrooms near you.

#2) Mazda will continue its struggles. Its margins must be truly appalling and I suspect its volumes are disappointing overall. Witness the RX-8, which has been priced to undercut the G35 Coupe. Or the Mazda 6 Sports Sedan, which has some appeal, but is fighting against premium brands that have introduced low-end competitors (e.g., Acura's TSX). The Miata needs more horsepower... significantly more. In short, not a pretty picture.

#3) As I've written previously, VW's Phaeton will be an unmitigated sales disaster.

#4) Porsche will be forced to find a partner as it struggles to survive. At nearly every level, Porsche has been met with major challenges: Infiniti's FX versus the Cayenne, the G35 Coupe versus the Porsche Coupe, the Honda S2000 versus the Boxster. Porsche has to modify its model if it is to stay in the game... since this won't happen, its only other choice is to find a sugar daddy.

#5) Grille-challenged autos will suffer in the marketplace. Those models with bizarrely shaped grilles, presumably to establish uniqueness or brand awareness, will underperform equivalent models with conventionally shaped grilles. In the bizarre grille category: Acura and Mazda.

#6) Another safe bet: GM will continue to lose marketshare outside of Cadillac (which will perform a bit ahead of plan) and its Pontiac division, which will hold its ground - barely.

#7) Ford will take major heat for revelations that the Ford Foundation funded Palestinian and other interests not aligned with mainstream America. Expect Ford, Mercury, Jaguar and Volvo all to suffer as a result.

#8) The first manufacturer to produce an eco-friendly SUV (e.g., hybrid powerplant) for a reasonable price will perform astonishingly well in the marketplace.

#9) Hummer's forthcoming H3T will be a big hit among professional athletes, musicians and other playahs.

#10) Ford's new F150 will meet sales projections, but only by a hair.

Top Ten Fixes After HB12 is Law

From GlockTalk: "Top Ten Problems with HB 12 as passed by the General Assembly...

#3. Sec. 2923.16 creates a nearly unworkable framework for licensees to carry a firearm in an automobile, requiring that it be in a holster "in plain sight on the person's person" or locked up. Will this lead to a new market for chest holsters? What are women supposed to do who carry in their purses? What if your car's glove box doesn't lock? "

Read more: Top Ten Fixes for HB12.

Sunday, December 28, 2003

The Software Biz: Make More Mistakes

From MSDN, shockingly, comes an insightful article on small software businesses: Make More Mistakes.

Saturday, December 27, 2003

A very personal Automotive History ;-)

1982 Honda Prelude - It was my senior year in college when I first spotted the gen-I Honda Prelude. I was smitten. Sports-car? I don't know, but I loved the lines, the sun/moon-roof (this, when the only way to get such a roof in a GM car was to use a blowtorch), the five-speed. When my '77 Nova was finally paid off (thanks, Dad!), I went to Joy Stillpass at the old Stillpass Honda and bought a stripped, burgundy Prelude.

1985 Saab 900 Turbo - My Dad introduced me to Saabs: they were certainly very rare in the Midwest. He had a beautiful company car: blue 900S four door. When I was close to paying off the Prelude, I decided to switch. I bought a black 900 Turbo 16-Valve (woo-hoo, 16 valves!) with the factory whale-tail spoiler. I also had a company car, so I could leave my baby in the garage for long stretches. At the time, these cars were so uncommon that I pulled into a McDonald's drivethrough once, only tohave the guy at the window ask me, "is that a masserrattee?".

1991 Mazda Miata - With a young child, my wife sent me to get a sedan in October of '91. I came back with a Miata. An Indian Summer test drive left me captivated with ragtop driving. Rear-wheel drive, manual transmission, with no limited-slip - in snowy Boston - truly teaches you how to drive. My first attempted fast-lane pass in the snow resulted in me doing 360's on Route 128. Over the years, I spun the Miata out three times. Each time, the car touched nothing. Yes, I was lucky - not good.

1994 Cadillac Eldorado - My brother-in-law Marc introduced me to the comfort of Cadillacs, taking me to Thomson-McConnnell. After about a six-hour negotiating session - after which both Marc and the salesman ("G") were near tears, I drove away in the Eldo. The seats were the most comfortable I'd ever felt. The 275 horsepower Northstar engine was a delight: torquey, responsive and turbine-like. The downsides? Handling (non-existent) and the 'sploded fuel-pump that left me stranded partway to Indianapolis. After a few years of spotty reliability, I'd had enough.

1999 Volvo S70 T5 - My Dad had a T5 five-speed, which I thought was very cool ("it looks like a Nazi staff car"). I'd never thought of springing for one until Tommy (again, from Stillpass) called with a deal I couldn't refuse. They would take the Eldo in trade (strangely enough, no other dealership seemed to want to take Cadillacs!) and cut me an end-of-the-month deal on a T5 that had been on the lot awhile. Powerful and luxurious, without any ostentatiousness, the T5 did have some downsides: it was plagued with a variety of electrical problems including starting, burned out bulbs and the dreaded "check-engine light".

2003 Infiniti G35 Coupe - What can you say about the G35C that hasn't been said by the automotive press? I compare it to a Porsche 911 Coupe for a fraction of the cost. 280 HP, tremendous handling and grip, back seats that are actually usable - at least by my kids - and the most 'looks' per mile I've ever experienced while driving. A black coupe with 18" rims is simply a moving piece of art. I'm going to be an Infiniti driver from this point forward. At least until a fuel pump 'splodes.

G35C on Ice

In California, a G35 Coupe gets iced.


All you need to know about male/female relationships is easily explained with the Ladder Theory. Excerpt:

"A common question men ask of women is "Tell me what you want in a man?", which is ... an invitation to be lied to. Because she'll almost invariably answer with some combination of: sense of humor, intelligence, sensitivity, emotional stability. As far as I can tell this is mostly rubbish. But in an effort to be fair I have included this, since there seem to be a few rare cases of this. Just none that I have ever seen. Another thing to watch out for is the code words women use. Here is a translation guide for dealing with women.

Says: I want a man who is motivated and has goals.
Means: I want a rich man

Says: I want a man who knows how to treat a woman.
Means: I want a rich man

Says: He's from a really good family.
Means: He's from a really rich family.

I'm sure you get the point..."

Ladder Theory

I love this game!

The wit and wisdom of Rasheed Wallace, who earns approximately $17 million per year as a forward for the NBA's Portland Trailblazers: "'I ain't no dumb-ass [racial epithet deleted] out here. I'm not like a whole bunch of these young boys out here who get caught up and captivated into the league... No. I see behind the lines. I see behind the false screens. I know what this business is all about. I know the commissioner of this league makes more than three-quarters of the players in this league.

There's a whole lot of crunching numbers that, quote-unquote, me as an athlete and me as an NBA player should know. In my opinion, they just want to draft [racial epithet deleted] who are dumb and dumber -- straight out of high school. That's why they're drafting all these high school cats, because they come into the league and they don't know no better. They don't know no better, and they don't know the real business, and they don't see behind the charade."

Raw 'Sheed

Friday, December 26, 2003

More Outsourcing Fodder

My reply in the most recent JOS outsourcing thread... "Outsourcing should be especially terrifying to financial services/insurance organizations. Given the fact that their lifeblood is truly a set of business processes (i.e., moving bits around)... handing this domain knowledge off to a group in India, Romania, etc. could very well breed a new global competitor.

A bank or insurance company that farms out IT may, in fact, be building and training their own competition... ten, fifteen or twenty years from now.

Of course, I suspect some CEOs and boards are starting to get it. Bank One, I believe, stopped outsourcing and brought everything back in house. Still, I wonder how many institutions really understand the danger that outsourcing represents."

JOS - outsourcing thread

Thursday, December 25, 2003

Paul Graham

Quote: "Hacking and painting have a lot in common. In fact, of all the different types of people I've known, hackers and painters are among the most alike.

What hackers and painters have in common is that they're both makers. Along with composers, architects, and writers, what hackers and painters are trying to do is make good things. They're not doing research per se, though if in the course of trying to make good things they discover some new technique, so much the better...

...Great software ... requires a fanatical devotion to beauty. If you look inside good software, you find that parts no one is ever supposed to see are beautiful too. I'm not claiming I write great software, but I know that when it comes to code I behave in a way that would make me eligible for prescription drugs if I approached everyday life the same way. It drives me crazy to see code that's badly indented, or that uses ugly variable names."

Hackers and Painters.

Misunderstood Genius Dept., Part I: Tesla

Quote: "War clouds were again darkening Europe. On 11 July 1934 the headline on the front page of the New York Times read, TESLA, AT 78, BARES NEW 'DEATH BEAM.' ... The morning after the inventor's death, his nephew Sava Kosanovic´ hurried to his uncle's room at the Hotel New Yorker... By the time he arrived, Tesla's body had already been removed, and Kosanovic suspected that someone had already gone through his uncle's effects. Technical papers were missing as well as a black notebook..."

From PBS: Nikola Tesla: Master of Lightning.

Misunderstood Genius Dept., Part II: Galileo and the Inquisition

Quote: "Being one of the most renowned scientist of his time Galileo's opinions were scrutinized not only be his peers, but by also by Church officials and the public in general. This made Galileo the lightning-rod of many complaints against the Copernican doctrine (and also some against Galileo himself). He did not come out unscathed out of these encounters..."

Galileo and the Inquisition.

Return of the King

If Peter Jackson doesn't get a Best Picture Oscar for LOTR/ROTK, they might as well do away with the Academy, the red carpet, the statuettes, everything. Awesome in every conceivable measure. As an aside... funny column in the Toronto Star describing plot holes in LOTR.

Excerpt: "...Elrond is like the modern-day CEO who complains about the way the country is run, but won't run for office and do something about it. At Rivendell, the Ramada Inn of Middle-earth, he chooses to sit back and let the Fellowship do the dirty work. 'I'd love to help out and all, but hey, I got stuff going on,' he might as well be saying. 'I did let you guys use my house for your little meeting, you know, and came up with this whole Fellowship idea. But good luck saving the world.'...

LOTR plot holes

Wednesday, December 24, 2003

Spam Missive

Okay, here's some of the spam I received within the last 30 minutes (is AT&T really using Brightmail to filter? One wonders...). Anyhow, my question is... who clicks on messages like these? And, if you click on one of these messages, is that an automatic indicator that your general (and/or Internet) intelligence quotient is at the simpleton level?

 Direland p.r.i.c.e.s are v.a.l.i.d until 30.. 12/24/03 3KB
 Rene Blair Hiya 12/24/03 3KB
 Brigitte Dyment This is what she wants 12/24/03 2KB
 eBay Please update your eBay account in.. 12/24/03 8KB
 Carlita Adam cheaap but great medications ilium.. 12/24/03 7KB

Book Review: Secure Programming Cookbook for C and C++

From Slashdot: "In the foreword to this book Gene Spafford observes that there really are four types of programmers:

Those who are constantly writing buggy code, no matter what,
Those who can write reasonable code, given coaching and examples,
Those who write good code most of the time, but who don't fully realize their limitations,
Those who really understand the language, the machine architecture, software engineering, and the application area, and who can write textbook code on a regular basis.

There are, as Spafford claims, too many people in category 3 who think they belong to the category 4, and that's the primary target audience of the book"... Secure Programming Cookbook for C and C++.


For you old-time C hacks: here are the past winners of the International Obfuscated C Code Contest (IOCCC): Memories - the Previous IOCCC Winners. Some of the code is hilarious.

Tuesday, December 23, 2003

Evil Laugh Time

The NAIS 2004 auto show highlights new products (many 2005 models) from the major manufacturers. Having seen the new, twelve-cylinder Audi 8 6.0 and the Chrysler 300C, I can only say (putting on my auto designer hat), "We need bigger, bolder grilles... these grilles are too small... we must have the largest grilles in the world! Muhawwhawwhaww!"

In Old Bavaria

Let's be thankful Nazi Germany got their asses kicked when they did. "During WWII, German aircraft designers put forth many aircraft project ideas, which ranged from the practical to the bizarre. Some of these ideas were ahead of their time and reached a more advanced design stage, and even affect aircraft today. Within the pages of Luft '46 you will find descriptions of these aircraft projects, illustrated with three-view drawings, model photos and custom color artwork.... ". Luft '46 - WWII German aircraft projects.

Doug's Search Tips, #306

When I'm looking for public domain C source code, I always include the keywords argc argv. Say, I'm looking for an ANSI C hashing algorithm. My search would be: hash argc argv. Works about 70% of the time.

Armor All [tm] this!

Funny thread from I300: "It was wet out... and [I] lost the back end in the right hander near my dad's house. I hit the a tree pretty hard with passenger side rear door. Fortunately, I'm OK and nobody else got hurt. It was pretty dark so it was hard to tell how [messed up] the car was.

I know I'll get flamed for asking this, but yesterday I got new tires (S-03). Last night, I washed my car. I armor all'ed the sidewalls and thought since the tires were new I would put armor all over them so the whole tire would be jet ... black. It looked ... sweet. You guys don't think this might have caused my wreck, do you? I know Armor All is a little slick but I wonder if there was something else wrong with the tires also, or something?".

Follow the resulting flames on IS300.NET.

Monday, December 22, 2003

Ugrh, another tough week in the NFL:

Pick Sprd Opp Result
STL - 7.0 cin W STL 27-10
DAL -11.5 nyg W DAL 19-3
sd + 7.0 PIT L PIT 40-24
PHI - 7.0 sf L sf 31-28
ari +15.0 SEA L SEA 28-10
den + 7.0 IN W den 31-17
Week: 3-3, Total: 33-19-2

Sunday, December 21, 2003

In the Uh oh Department: On January 10, 2004, the Unix/Linux time_t typedef (defined as a signed long) rolls over to -1. I'm not sure if this has been widely recognized as a problem, but I suspect it will be an issue for many smaller-scale/embedded systems. Some software companies are already in panic mode over this Y2K-like problem. Recommendation: fresh ammo, ramen noodles and bottled water. ;-).

Technical recruiting tip: for all current and aspiring technical headhunters... visit the hardest of the hardcore-software development discussion boards and find the smartest people there. Email them. It's just that simple: The Joel on Software Forum.

Installer: need a quick, yet capable, installer for your application? My recommendation is the free, open-source Nullsoft Scriptable Install System (or NSIS). NSIS is used by BadBlue - and a bunch of other apps - and generates a miniscule 30-40K of overhead after compressing the files to be delivered.

Google Calculator: thanks to the AngryCoder, I found out that Google now supports a calculator mode. Just type an expression into the search box, e.g., 5 * 2 + 2, and *voila*... Google determines it's a formula and evaluates it for you. In addition to the calculator, Google now also supports definitions.

At first I thought this was a joke, but apparently it's all too real: Girls' High School Wrestling.

Wednesday, December 17, 2003

Byte arrays in PHP

Byte arrays are represented in PHP as "binary strings". PHP is perfectly capable of doing sophisticated bit-mapped operations, yet the documentation I've read is far from clear as to the methods. I'll hopefully save you some time and effort: here's a way to create a binary string from a series of hex values:

$bs = pack("C*", 0x41, 0x44, 0x45); // pack unsigned chars, yields "ADE"
$bs = pack("n*", 0x8000, 0x8001, 0xFE5A); // pack unsigned words
$bs = pack("N*", 0x70018001, 0x80042E5A); // pack unsigned double-words

Okay, that was easy. The unpacking of a binary string into separate values is a little more obtuse:

$bs = pack("CnN", 0x41, 0x8001, 0x80000001);
$aTemp = unpack("Cmyunsignedchar/nmyunsignedword/Nmyunsigneddw", $bs);

After execution of this command, $aTemp["myunsignedchar"] is 0x41, $aTemp["myunsignedword"] is 0x8001, $aTemp["myunsigneddw"] is 0x80000001. The unpack's first argument is a series of data-types, followed immediately by the keys used in the returned associative array for storage of the unpacked values. If that explanation doesn't suffice, see some excellent Unpack Examples.

Announcing the WorldWideWeb

This is pretty neat... Tim Berners-Lee's original announcement of the web.


If you've never read the books of Lee Child, you are missing one of the best action/adventure authors of all-time. Only C.S. Forester, A.J. Quinnell and Raymond Chandler compare. Seriously. All of the books track the experiences of Jack Reacher, formerly of the U.S. Military Police, as he travels the country enjoying a vagabond-style existence. The most recent book in the series, Persuader, was one of the finest books I've ever read.


My wife reminds me that Linda Gray was in Dallas ("Sue Ellen, you idiot"), not Dynasty. Anyhow, having seen Linda naked, I can only muse about one of the all-time great female actresses, Anne Bancroft.

Tuesday, December 16, 2003


The wife is forcing me (yes, physically compelling me) to go to the Broadway production of The Graduate tonight. "You'll get to see Linda Gray naked!", she cajoled.

Yes, Linda Gray, of Dynasty fame is going to get naked tonight. I can hardly contain my excitement. I think she might be a few days shy of 90 at this point, but I could be wrong. What a treat, Linda Gray naked. My enthusiasm for The Graduate pales in comparison to my feelings for The Producers. When I saw it at the Aronoff last year, I nearly ruptured myself due to a conniption fit of laughter. Only a well-timed intermission saved my life.

For those of you heathens unaware of the plot of The Producers, Max Bialistock - a washed-up Broadway producer - meets up with unassuming accountant Leo Bloom. Together, they happen upon a fantastic money-making scheme: sell 20,000% of a play - rather than 100% - to investors. The hitch: they must ensure that the play closes in one night, and is an utter failure. After ripping through hundreds of candidate scripts, they finally find the gem: "Springtime for Hitler", by Franz Liebkind. It is sheer madness, a celebration of the misunderstood Hitler.

Together, Max and Leo visit Franz to secure the rights to this sure-fire Broadway disaster. The author, still wearing his German war helmet and uniform, is feeding his pigeons on the rooftop of his apartment building.


Oh, how I miss ze hills und dales und vales und trails of old Bavaria
Oh, it's such bliss to kiss the Miss I miss like this in old Bavaria
Oh, ze meadows und ze mountains und ze sky
Not to mention hordes of brown shirts passing by...
Bring a tear to every single Nazi eye
In old - I'm talking old - Bavaria!

You will join me in singing and dancing the Fuhrer's favourite tune:
"Der Guten Tag Hop-Clop"! All right, key of E?
Is there any other?
Vunderbar! Eins, zwei, drei...

Lyrics: The Producers

Monday, December 15, 2003

The Tale of J. Random Newbie

"Why do programmers reinvent wheels? There are many reasons, reaching all the way from the narrowly technical to the psychology of programmers and the economics of the software production system. The damage from the endemic waste of programming time reaches all these levels as well.

Consider the first, formative job experience of J. Random Newbie, a programmer fresh out of college. Let us assume that he (or she) has been taught the value of code reuse and is brimming with youthful zeal to apply it."

The Tale of J. Random Newbie

Personal Firewalls

From SecurityFocus, a pretty good summary of the choices consumers have for Personal Firewalls.

Blogging from Baghdad

Catch up with our favorite Baghdad resident and his impressions of a certain, famous spider-hole denizen.

Got blown?

Great thread from FreshAlloy, describing a G35 Sedan after adding a factory-approved supercharger: "...I simply wasn't expecting the car to be as fast as it was. The speed at which my sedan now reaches redline in 1st gear is shocking. In fact, the first time I put the pedal to the medal I actually bounced off the rev limiter (OOPS!). It's unbelievable... The best word I can come up with to describe the speed of the car with the supercharger is violent."

A G35 Gets Blown

Mediocre week in the NFL:

Pick Sprd Opp Result
NO - 7.0 nyg W NO 45-7
bal - 7.0 OAK L OAK 20-12
cle +11.5 DEN W DEN 23-20
SD + 5.5 gb L gb 38-21
Week: 2-2, Total: 30-16-2

Sunday, December 14, 2003

Defining nested, associative arrays in PHP

I was asked about this last week... here is a simple example:
$aaServers = array(

"serverName 1" => array(
"profile1" => "value11",
"profile2" => "value12",
"profilen" => "value1n"
"serverName 2" => array(
"profile1" => "value21",
"profile2" => "value22",
"profilen" => "value2n"
"serverName n" => array(
"profile1" => "valuen1",
"profile2" => "valuen2",
"profilen" => "valuenn"

$aServer = $aaServers["serverName 2"];
foreach ($aServer as $k => $v) {
echo($k." => ".$v."<br>");
should result in:

profile1 => value21
profile2 => value22
profilen => value2n

Cool IE Exploit

You would think Microsoft would have cleansed web addresses (and stripped out %00 strings) long ago... Spoofing an address using IE.

Six week update, post ACDF surgery

Last week I saw the neurosurgeon - with new X-rays - and was allowed to remove the neck brace. Instead of a disc at C4-C5, I now have a hollow synthetic plug. Inside the plug is a kind of "replicating DNA" that promotes bone growth through the hollow center. By May, the idea is that C4 and C5 will have fused through the the plug. The five week X-ray showed that it, so far, remains in place.

Some bizarre thoughts on this whole episode: I went for an MRI around 9/12. The MRI report (a two-page textual description) was faxed to my GP a few days later. Somehow, the second page of the report never made it to the GP. The second page spelled out that this was a "severe" situation, while the first page indicated "moderate". But the GP never saw the second page - and, seeing the first page - it wasn't obvious that there even was a second page. So I merrily went along living my life, going to PT and damaging things further with PT things like traction, presumably making things worse.

Of course, when the neurosurgeon finally saw the MRI at the end of October, he scheduled surgery for 11/4... just a few days out. And this is in a scheduling environment where people who are having trouble walking (like Jeff in Bethesda North Radiology, who has connections) can wait for months for their operation. Thus, it was a little more serious than I would have ever suspected.

Lessons learned:
1) Make sure you've got the entire report if you ever get an MRI (don't neglect the second page of impressions, which could differ from the summary)
2) Try to get the actual MRI image in the hands of a specialist (orthopedic, neurosurgeon, etc.) immediately
3) If you ever experience tingling and numbness in your extremities (especially after a trauma), get an MRI as fast as you possibly can

Still experiencing minor symptoms (and still on Neurontin to help combat them), mostly in the lower body. Primarily tingling and cold in both feet, lower legs and occasionally in thigh/knee areas - but, since going back on medication, only about a 1 to 3 out of 10 on the discomfort scale. The medical staff indicates that progress with spinal cord injuries is measured in months, not weeks.

I truthfully feel very, very lucky. I did an hour on the elliptical at Bally's yesterday - and feel pretty good so far today. Hopefully, progress will continue and my goal of bench pressing on May 4 will come to fruition.

Excerpted from FC's message board...

Q: What do you think Saddam's first words were on capture?

(singing) If I could turn back time...
> Peek-a-boo!
> Can you hear me now?
> Hello American Friends! My name is Bruce Springsteen.
> Ehhhh! Saddam NO HERE! He IN NEXT HOUSE! Come back ehhhh, later!
> Another loan lost to DiTech!
> There will be dinner at this place you are taking me, no? And perhaps a shower?
> Not so close, cutie. I haven't brushed.
> Would it be rude to ask for hot sauce on falafel?
> Satan, is that you?
> Six "Chicken McNuggets" or I don't talk.
> i ain't surrenderin' until i get a sampler bottle of this great pantene shampoo i keep hearin' about on > cnn.
> Doh!
> Please mail this for me. This has to be in New York by next week. (Hands them a Publishers Clearinghouse sweepstakes entry form.)

Saturday, December 13, 2003

Please read if you live in Ohio: House Bill 12, as reported by the Conference Committee, is on its way to Governor Bob Taft's desk. No matter what you've heard or read, there is still a chance Taft will NOT veto this legislation. His office is taking calls on the subject. Ohioans For Concealed Carry, the National Rifle Association and the Citizens Committeee for the Right to Keep and Bear Arms are calling on the Governor to sign this Act.

The Ohio Senate Voted 25-8 to accept the Conference Committee Report. The Ohio House Voted 70-27 (with 2 no votes) to accept the Conference Committee Report. You can see how your representatives voted on this crucial issue: HB12 Conference Report - How They Voted.

Next step: Governor Taft's phone number is 614-466-3555. Call his office today and politely ask him not to veto HB12.

Why is this important? The current Ohio law governing concealed carry was enacted about one hundred years ago to prohibit minorities (Blacks, Irish, Jews, etc.) from protecting themselves with firearms. It "allows" carrying concealed weapons provided that you are first arrested, charged, brought to trial and found innocent through means of an "affirmative defense" clause. In stark terms, it ensures citizens are found guilty until proven innocent. Any rational, law-abiding citizen is prevented from exercising their right to defend themselves by this plainly unconstitutional law.

As the Ohio constitution reads: the People have the right to bear arms for their defense and security. My take: it is sad and ludicrous that Ohio is one of only six states that does not have a means for allowing lawful concealed carry. Every academic study has shown a decrease in violent crime (and even accidental gun deaths, strange as it may seem) and no state has ever repealed such a law. For the first time ever, Ohio's violent crime rate is higher than Michigan's. Reason: Michigan recently passed a concealed-carry law. Get on the horn and call Governor Taft's office today. Be polite, and ask him not to veto HB12.

Thursday, December 11, 2003

An intriguing battle is shaping up between Google and Microsoft. First came the improved Google Toolbar. Since this was a direct attack on the consumer desktop, Microsoft responded with its initiative to integrate search into the OS.

Now Google has introduced the Google Deskbar, a search utility that can "[cut] out the browser for search tasks".

My take: Google's technology advantage is daunting. Its toolbar has achieved a significant level of penetration (my estimate is that 10-15% of regular Google visitors have installed it). By expanding on its consumer desktop beachhead, Google can provide some fantastically useful functionality:

  • Personal web servers (like BadBlue) that allow blogging, file sharing, and other 'publishing' features for broadband-connected, 'always on' users; each PC could then be indexed by Google, providing new personal and shared searching capabilities that go far beyond what is available today

  • Corporate information dashboards using the Deskbar, alleviating the need for unified storage based upon Longhorn's (Microsoft's next-gen OS) new file system

  • Multi-device, real-time news delivery agents, dispatching personalized news items to consumer desktops and their mobile devices

    Microsoft and Google will have to coexist for quite some time. Neither is going away anytime soon. Hedge your bets: go long on both MSFT and GOOG.


    "I have been testing a beta version Microsoft's new SPOT (Smart Personal Object Technology) wristwatch for [the] last month and thought I would share some observations... First and foremost, SPOT is a watch. It has every watch feature you might want including alarms, timers, chronographs... One of the core features of the watch is an integrated radio that allows the watch to receive information over the FM band. There's no need to re-set SPOT for daylight savings time or when traveling to a new city as the watch picks up the local times automatically. SPOT also has some very cool custom watch faces, they range from the whimsical, to the cute to the downright cool. Overall, as a watch, SPOT is great. Where the product really shines is in information. By configuring your information feeds at a website, SPOT will automatically update the following information, local weather, news headlines, stock information (with trends and graphs), MSN messenger users can send messages directly to your watch and Outlook will Sync your calendar to the watch and automatically remind you of the appointments ahead. In short, Microsoft took the concept of watch and turned it into watch plus. Does it work? Yes."

    Sweet SPOT.


    Survivor Recap for Warren, since once again he somehow missed out on the show by "seven minutes". Waaahhhh.

    Not a bad episode: highlighted by the biggest tactical screwup that Johnny Fairplay has made thus far. In the reward challenge - another pointless digging and shooting extravaganza - Burton dominated the field and won reward. Instead of screwing up the three girl to two boy advantage, he chose John to share in the reward. Overconfident in their ability to fool the women (who "should be peeling potatos," according to John), they enjoyed Burton's new vehicle (Envoy) oblivious to the fact that they were about to be schooled.

    Darrah won reward for the third time in a row, due to her small hands being able to reach into the fleshy folds of Jeff's private-most parts. Just kidding. But she was able to reach keys that others had to work a lot harder for, giving her the advantage in a multi-stage "plank walk".

    John and Burton schmoozed Lil - with Sandra as backup - assuming that they had at least one in the bag. For once, the girls had their act together and completely shocked the J&B gang by knocking Burton out in the expected 3-2 tally. Jeff closed with an interesting missive, "...seeing that no one is thinking about who's going to finish third.".

  • Wednesday, December 10, 2003

    Some things just make you go "hmmmm". Just for the heck of it, I did a Google search for "confidential" "do not distribute". The number of results - including some from security companies - borders on astounding. Maybe some of the information is now public domain. But methinks most can be attributed to some major corporate content management "issues"...

    Pete Lyons' excellent blog had a very nice reference to our relationship, back in the day. Pete and I were co-directors of technology at Alpha Software, helping to create the mass-market, Windows-based database software package Alpha Five. Pete's creativity and willingness to embrace new concepts and technologies were two key traits I remember. As an example, he was investigating design patterns from the outset... long before they became the buzzword du jour.

    Can you believe I have the magical ability to check a world-wide, real-time news-feed for my areas of interest? Okay, it's not magical. I signed up for Google News Alerts. Like the NBA (or, rather, college hoop), it's fannnnnntastic.

    Speaking of which, David Stern: there's a reason that most hoop fans can't watch the NBA - and overwhelmingly prefer watching the college game. It's called boredom. The NBA lacks teamwork and a shared passion for the team's success. Until the NBA changes the shot-clock (e.g., to 30 or more seconds) to enable offenses to actually pass the ball, it will remain a cult of personality. The NBA needs to highlight the success of teams (i.e., the great Lakers-Celtics battles of the 80's) and not individuals. They need to run plays, and not clear-outs. But what do I know, I'm just a fan...

    Tuesday, December 09, 2003

    Sooners BCS Fiasco

    Oklahoma Coach Bob Stoops says: "'We've had 13-14 straight weeks of being No. 1, carrying that burden the entire year, and playing pretty well. In the end, we're No. 1 in the BCS. I find no shame in that.' "

    "In the last four weeks, everyone wanted to tell us we were the greatest team in the history of college football," he said. "We didn't listen to that just like we're not going to listen to someone saying that maybe now we're not worthy."

    Uhmmm, Bob: no one would be bitching if Oklahoma had dropped their game to K-State 35-28. Or made it remotely competitive. Oklahoma, in their spotlight game of the year... and with the whole nation watching... just got rocked. There is no way the Sooners deserve to be in the game after a complete meltdown and public humiliation. And, besides, the game wasn't even in high-def ;-).

    Sunday, December 07, 2003

    An interesting approach to hiring a senior computer scientist/senior developer type... Hiring a Senior Computer Scientist or Programmer. And I'll bet it's one that's effective, too, along the lines of the ThoughtWorks recruiting pipeline.

    Anyone considering installers for their software should check out this rant thread from JOS on the trials and tribulations of InstallShield.

    At what point do I declare statistical victory over the Vegas point spreads? 28-14-2 is not a bad record at all ;-). Of course, the Bengals didn't quite make the number, but we'll chalk that up to a Levi Jones injury and an infestation of the flu bug within Jon Kitna's massive dome. In all seriousness, Levi Jones' replacement (can't remember his name) at left tackle was unable to control Ravens' speed rushers like Boulware. This led to a complete meltdown as Kitna was blind-sided several times, losing the ball. Kinda underscores the importance of a solid LT.

    Pick Sprd Opp Result
    GB - 7.0 chi W GB 34-21
    PIT - 5.5 oak W PIT 27-7
    cin + 4.0 BAL L BAL 31-13
    PHI - 5.5 dal W PHI 36-10
    Week 3-1, Season: 28-14-2

    Pretty funny (and well done) Survivor site...

    Think you've got a nice set of wheels? Here's Porsche's $440,000 Carerra GT.


    Thursday, December 04, 2003

    Ten Best Cars

    The Infiniti G35 is named one of Car & Driver's 10 Best Cars for 2004. The only surprise is any Audi product making the grade and BMW's long-in-tooth 3-series hanging in there another year. Those were the only two euro-models to make it. Two US cars (Corvette and Focus) with the remainder Japanese. The Accord and S2000 from Honda, the TSX from Acura (way underpowered for my tastes, though nice otherwise), Mazda's RX-8 and the Toyota Prius round out the list.

    Survivor Recap

    Gawd, that was a terrrrible show. What little action took place revolved around everyone trying to backstab each other in horrible, whispered conversations. John, obviously, was playing everyone. not sure what his end-game strategy will be, since he's hated by the entire jury.

    Reward challenge: broken up into random 3-man teams, with John, Lil & Dara winning the swimming-based obstacle course, primarily because the Hispanic girl (can't remember name) can't swim worth a damn and doomed Burton & Christa to failure. The reward was awesome, the three winners got flown to a private island spa with pool, cabana, restaurant, etc. for an overnight stay.

    Immunity challenge: had to shoot flintlock-style rifles (shooting flares) at flags to set 'em on fire. Dara won pretty convincingly.

    Tribal Council: votes went like this: lil, christa, lil, christa, christa,
    christa. John pretty much gets credit for this, swearing "on his
    grandmother's grave" that he has an alliance with everyone. no one fully trusts him, but they have no choice since they believe he'll be carried along by the majority for the endgame.

    Grade: C-, weak episode.

    Wednesday, December 03, 2003


    My contention is that certain software development practices, including the heavy use of assertions, contribute to far more problems than they solve.

    Further, run-time-checking with extensive and tunable logging, can help find the most devilish problems and provide an audit trail for your support team.

    My simplified example of validating and logging everything (with complete error recovery) is:
    do {
    if ((rc = TableOpen(...)) != 0) {
    Log("Couldn't open table");
    bTableOpen = TRUE;
    if ((rc = TableLock(...)) != 0) {
    Log("Couldn't lock table");
    bTableLocked = TRUE;
    if ((rc = RecordLock(...)) != 0) {
    Log("Couldn't lock record");
    bRecordLocked = TRUE;
    if ((rc = RecordUpdate(...) != 0) {
    Log("Couldn't update record");
    } while (0);
    if (bRecordLocked) {
    if ((rc1 = RecordUnlock()) != 0 && !rc) {
    Log("Couldn't unlock record");
    rc = rc1;
    if (bTableLocked) {
    if ((rc1 = TableUnlock()) != 0 && !rc) {

    Log("Couldn't unlock table");
    rc = rc1;
    if (bTableOpened) {
    if ((rc1 = TableClose(...)) != 0 && !rc) {
    Log("Couldn't close table");
    rc = rc1;
    return (rc);

    IOW, everything is checked _at run-time_. Period. And everything can be tracked, depending upon the verbosity level of your logging and desire to audit.

    My key finding over 20+ years: few applications are so performance-intensive that you can't afford checking whether a pointer is NULL or not or verifying a return-code came back the right way.

    IMO, a big reason most software is unreliable is that "go-naked" tools like ASSERTs are overused (so called, because is in RELEASE mode, you're going nekkid :-).

    I'm not sure this article isn't a bit out of date, but interesting nonetheless. Debate - .NET V. PHP: Top 10 .NET Myths Exposed.


    Ten Things I Disliked About the Indiana/Wake Forest Game

    : Young, smaller forwards playing directly behind bruisers like Williams, not fronting, not three-quartering

    : A guard-oriented team unable to handle double teams and pressure

    : Donald Perry not starting at point

    : Having Bracey get beat up with no one physical enough to fight back

    : Having the opposing team's walk-ons look respectable against us

    : Not being able to get a shot off, or inbound the ball, or bring the ball upcourt...

    : Not having George Leach inside on D

    : Not having a backup power forward on the roster (and, no, despite the size of his heart, AJ doesn't qualify)

    : Not having Tom Coverdale or Kyle Hornsby or Jeff Newton for just a _few_ more games

    : Missing out on a sushi dinner to watch this game on my big screen, especially when it's not in HD

    I liked the way the team fought and scrapped the whole way, including Roberts' tackle. The refs were directly at fault... as he was protecting Bracey IMO. Bracey took a beating without repurcussion for Wake. Someone needed to take the tussle to the Deacons. (Sign) Where's Sean May when you need him?


    Decent - but not great - week in the NFL.
    Pick Sprd Opp Result
    DET + 7.0 gb W DET 22-14
    ne + 4.0 IND W ne 38-34
    tb - 3.0 JAX L JAX 17-10
    NYJ + 2.5 tn W NYJ 24-17
    cle + 6.5 SEA L SEA 34-7
    Week: 3-2 Total: 25-13-2

    Monday, December 01, 2003

    'Every major label is drooling over the money-making prospects of having its own iTunes or Musicmatch. But they are all, in the immortal words of Johnny Cash, 'born to lose, and destined to fail.' Why? The music industry's problem is fundamental: the implicit contract between music companies and listeners is no longer viable.

    The music industry fails to understand that a primary reason that consumers illegally share music files is that they want insurance against the music industry itself. File sharing is as much about risk sharing as it is about the theft of value. Technology makes file swapping possible - but the music industry's business model, which is at odds with the implicit contract it signs with listeners, is what makes it probable...' "

    The Economics of File Sharing