Thu, 24 Dec 2009

Happy Holidays 2009

We've had a pretty amazing, but hectic holiday season this year. That's my lame excuse for explaining why you haven't received a holiday card in the mail (assuming you're on my mailing list).

However, I did put up a digital version of our 2009 holiday card. If a picture is worth a thousand words, then consider this a 36,000 volume essay on our activities throughout the year!

Sun, 13 Dec 2009

You Don't Know What (Hi Fi) You're Missing

I've recently had my eyes re-opened to how the mainstream consumer market has been watered down to the least common denominator as far as audio quality is concerned for consumer music. Home theater, by contrast, has managed to do a decent job, comparatively, and examining the differences between the two markets is a good way to illustrate the problem.

When the movie industry sets out to produce a movie (take James Cameron's "Avatar", for which he pioneered a completely new stereo-HD camera and projector system and then proceeded to convince movie theaters to adopt the format-- a similar journey that George Lucas took to get THX into movie theaters), they ensure that they shoot in a format that meets or exceeds what people have in their living rooms. For example, most movies in the 80s and 90s were recorded on analog large format film, which is why it can be digitally encoded to Blu-Ray as 1080p because there is enough fidelity in the film to convert it into 1080 lines of digital video. Similarly, they pay attention to encode the audio during and post- production into multi-channel high fidelity (bitrate), often lossless formats.

By contrast, the music industry takes the masters from the original recordings and puts them into a simple stereo format, like 16-bit, 48Khz PCM (pulse code modulation) encoding as the basis for Compact Disc Digital Audio, and calls it a day. Lossy formats like MP3 and AAC (which comprise the overwhelming majority of online music) are often sourced from the CD media and thus can only maintain or degrade the audio quality from there.

When you consider that many consumers are content to listen to their music on tinny computer speakers, tinny TV speakers, pathetic earbuds that ship with their MP3 players, or base-level OEM head units which use simple connection technologies (like the MP3-cassette tape interface, the analog "AUX in" stereo mini plug, or private-band FM-radio transmitters), I suppose it's reasonable to suggest that anything better is a wasted investment for most of the market.

But there are exceptions, and these exceptions really highlight where the biggest gaps really are. Take for example the multi-channel audio offered as an upgrade for certain luxury car brands. Our 2009 Mercedes Benz R-Class came with a Harmon Kardon "Logic 7" 7.1 channel surround system, which consists of a head unit that can decode DTS and Dolby Digital audio (thanks to it being the source component to drive the rear-seat entertainment system, which is DVD based and thus needs to read AC3 and DTS audio tracks for popular Disney and Dreamworks titles for the tykes). Similar systems are available from other car makers, including the Bose SurroundStage product line.

The problem is that most of the source media isn't high quality enough. Content from the iTunes store, to my knowledge, does not contain any more channels than joint-stereo (that's 5.1 channel short of the 7.1 channels Harmon Kardon provides, and 3.1 channels short of the DTS-encoded AIFF format the receiver supports), nor do any of the CDs that most people own to rip their own MP3s from. Do you think that the sound engineers who captured your favorite recording just used a single stereo microphone? (Solo a capella tracks being a notable, if rare, exception for a reasonable choice to use 2 channel stereo)

So-called "HD" and satellite radio doesn't do the trick either. HD Radio is better called Digital Radio because the audio quality often falls short of high definition. Like TV stations before them supposedly broadcasting "HD", free, advertiser-supported over-the-air broadcasters would rather partition their bandwidth into several low quality channels with the hopes of gaining listener/viewer stickiness with quantity of programming rather than quality of content.

So the only avenues to get the most from your 5.1 or 7.1 channel system is to obtain your source media from vendors and formats that support high quality, preferably lossless, multi-channel audio.

With iTunes, online MP3 vendors, Audio CD, and broadcast & satellite radio out, what's a consumer to do? The industry's answer has been "DVD Audio". Essentially, this is DVD quality audio (encoded as DTS or Dolby Digital AC3) with no accompanying video. But good luck finding it in stores, or even to listen to samples of titles recorded in this format on online stores like Amazon. (The files are encoded as DTS, and unless your computer can decode DTS, all you'll hear is static)

The good news is that there is at least one online source where the content is recorded with high fidelity audio in mind, it's marketed with high fidelity in mind, and it's sold with high fidelity in mind. That source is The content is recorded at a 96Khz sampling rate (the input signal is sampled 96K/sec, but physics suggests that this is higher than is necessary, and that 2x the human hearing range, or roughly 44Khz is all people can hear). The content is encoded using 24-bit quantization (at each of those 96K samples in a second, there are 16 million discrete values the waveform can take, versus 16 bit audio with 65K values for audio CDs), a factor of 256 times better audio resolution. And while audio CDs store data in two channels, itrax uses up to 6 discrete (5 standard, plus one low-frequency response) channels (standard CDs just use two) to encode DTS tracks.

In fact, itrax tends to scale down their audio quality of their DTS tracks to lower bitrates so their albums can fit onto a standard 700MB CD-R as uncompressed AIFF/WAV formats.

After downloading some DTS tracks, I used iTunes to burn a couple DTS audio CDs for the Mercedes and they worked like a charm. The downside to itrax is that since the broad consumer market isn't requesting such content, itrax lacks mainstream audio content.

Stores like Amazon, iTunes, Borders, Barnes & Noble, and FYE would likely carry more hi fi content if consumers were buying it. Consumers would buy it if they knew the difference, and this blog entry is here to plug the gap. If you don't know if you're making the most of the equipment you've got (whether that's an iPod, a home theater receiver, or your car's head unit) hopefully this blog post will inspire you to find out, and to begin searching for media that makes the most of it.

Finally, in case someone from Sirius or any local "HD" radio channels stops on by, I'd be much more inclined to be a loyal listener if you offered content that was more compelling quality wise. I've heard many folks comment that "I watch lots more TV in HD because it's so pretty to look at". Like them, I just spent $50 on content from itrax from artists I've never even heard of (my standard monthly expenditure is substantially less, spent on artists I know well) just because "it sounds good".

P.S. A part of me wonders if the reason why the home theater experience is so good is because of who's at the top of the food chain in the respective industries. The producers, directors and executives like Spielberg, Cameron, Scorsese, and Lucas, live and breathe their craft. They're as much artists as they are technicians. I get the feeling that the guys calling the shots in the music industry are MBAs and garden variety marketing hacks, not audiophiles, audio engineers, recording artists and technical practitioners like you see in the movie industry, but I'd love to stand corrected.

Wed, 09 Dec 2009

Photography Flash 101

To those not familiar with photography, the principal aim of photography is capturing light. In more situations than many amateur photographers realize, the available light is often insufficient to shed enough light on the subject (double pun intended). That's where flashes come in.

Many readers will note that the flash built on their camera seems to do the trick, but the built-in flashes of most cameras don't have the power or versatility of an add-on flash. For example, adding a source of light at the point where you're capturing the image is nice if that's all you can manage, but being able to get the light on the subject from other angles is often more flattering than direct on, which can destroy a sense of realism in the photo by eliminating shadows that provide definition and depth.

That's where off-camera flashes really shine (the puns keep coming). By being able to define the angle of the light off the camera, or even bouncing it off a wall or ceiling, the photographer can obtain a flattering ambient lighting effect.

But simply adding a flash to your camera is often still limiting, particularly outdoors, where you don't have the ability to bounce or diffuse the light off walls and ceilings.

Anyone who has seen a photographer's studio has seen diffusing umbrellas or shiny panels that reflect available light onto the subject. The "mobile photographer" needs a better trick up her sleeve, and that's where diffusers come into play. Recently not only did I invest in a Canon Speedlight 580 EX II, but a Gary Fong flash diffuser as well (actually they were anniversary presents from my dear wife). This is a plastic transparent shroud that acts sort of like a cloud that captures the flash above your camera instead of a harsh straight light illuminating your subject directly.

Saturday night, Christine Carson and I went to the Point Defiance Zoo which has a holiday light show each year. I brought along my tripod and my flash gear to practice my technique.

Whereas I used to avoid the built-in flash of my camera since it destroyed the natural ambiance of the scene, the external flash with diffuser seems to soften the harsh effect of the flash.

Diffused flash.

As a photographer, being at the mercy of the available light will affect your options. Some will prefer the naturally lit scene that doesn't light up the grass so much, but clearly if you wanted to illuminate your subject a little better, and your only choice was the harsh direct illumination from your on-camera flash, a diffuser does a great job in providing a softer, haloed lighting effect that balances proper exposure of your subject with the softness that the scene requires.

Sat, 28 Nov 2009

We're A Welcoming Society (to the Japanese, British and Thai People)

In this case, I'm speaking of our highway system.

This Thanksgiving I had the frustrating experience of driving on our American roadways during a busy holiday season. What I noticed, after trying to drive like a sane person, and noticing many, many signs (gladly ignored by my other fellow drivers) to "keep right, except to pass", that while the freeway lane going your opposite direction is to your left, the passing lane in the United States is on the right.

I hate tailgaters as much as you do. And while flashing your headlights in Europe is a reminder to a left-lane hugging driver that "oh crap, I'm being a total ass, sitting here in the left lane when there are two lanes to my right", here it apparently means "I'm the one that made you an orphan, that shivved your brother in prison, broke your sister's heart, and keyed your car in the parking lot".

So clearly, if flashing your headlights at the car ahead of you is a major faux pas (never mind driving at 60mph in a 70mph zone in the leftmost lane), and you refuse to tailgate, then what's a driver to do?

Well, imagine you're in Thailand, Japan, or the United Kingdom, and pass on the right.

On my recent trip to Portland and back on I-5, I punched in the cruise control at 75mph, 5 over the limit for approximately 10 minutes. I sat in the right lane, and aside from having to get into the middle lane to pass the occasional truck, I passed over two dozen vehicles cruising in the right lane. Only one car passed me on the left during this entire stretch of freeway.

So the thought that occurred to me was that this was remarkably like driving in the U.K. The only things out of place was the semis in the right lane, and the opposing lane of traffic on the left instead of the right.

Bottom line? U.S. drivers suck. They don't read road signs, or if they do, they don't understand them, or if they do, they ignore them.

Why am I venting about it here? Better here than on the road. And in the off chance that one of my readers is a "left lane sitter", I've just done the rest of us a favor by reminding them that they call it the "passing lane" for a reason.

Thu, 12 Nov 2009

Shouldn't Customer Feedback be Easier Than This?

I created this page for Amazon today because their automated system wouldn't allow commentary from the customer. They do allow the customer to send Amazon to a web page that documents the customers assertion that the catalog is incorrect... I wonder if my website will do the trick. (Their catalog update form showed all the proper data, but it doesn't change the fact that they're calling a 17" MacBook a 15.4" laptop)

Tue, 10 Nov 2009

Toyota to recall 250 million cars manufactured since 1972

Doors Slammed Shut on Infant Fingers Poses Amputation Risk

Toyota to take $1 Billion charge since idiotic parents slam doors when their children's fingers are in the jamb.

AP, Tokyo - Toyota today announced a voluntary recall of every vehicle they have manufactured since 1972 to repair a key design flaw in their vehicles. Prompted after dozens of complaints to the Consumer Product Safety Commission, Toyota's voluntary recall takes effect immediately. A senior Toyota official, speaking on condition of anonymity admitted the flaw in their vehicles.

"When we designed these vehicles, we made the foolish choice of using what is called a 'hinge', made of steel, that allows the car door, also made of steel, to swing open and shut. What we didn't factor back at the time was that when such a steel hinge is operated, and soft tissue like children's fingers are placed in the jamb, an amputation risk exists. While it may seem evident now, one must remember that such consequences were not obvious at the time."

Consumer advocate Ralph Nader, known for his relentless guardianship of consumer rights was critical of Toyota. "It's about time that Toyota came to acknowledge the design flaw in its doors, but they have stopped too short. I have been criticizing all automakers, including Toyota about the inherent safety flaws in their vehicles for years. Take, for example, that every car manufacturer ships their vehicles with what they call 'bumpers' made of steel and plastic. Clearly, from the name alone, these products were designed to protect the vehicle when it 'bumps' into objects, which occasionally include human beings. Consumers should not relent until all carmakers recall all vehicles on the road and remove every single object that may bump into another object from their vehicles. Alternatively, all vehicles should be shipped with immobilization devices that permanently prevent them from moving."

Toyota suggests that any consumers wishing to take part in the voluntary recall contact their local Toyota dealership.

(Editor's note: Satire contributed to this story. Similarity to a recall of a popular stroller brand is purely incidental)

Name/Blog: keith
Comment/Excerpt: Is this from the Onion? I thought you were serious. Please link the actual recall info.

Name/Blog: Link to Maclaren recall
Title: Recall Info
Comment/Excerpt: I wrote the satire. The link to the Maclaren recall is above.

Sun, 25 Oct 2009

And Now, To Announce That We Are New Owners of...

A 2009 Mercedes Benz R350... The deal was simply too good to pass up.

Avid readers of my blog know that we had narrowed the car search down to three makes. A Toyota Highlander, a Volvo XC90, and a Mercedes Benz R350. In an earlier post, I admitted that I was a little discouraged that the marketplace had gotten so threadbare that it was hard to come by a configuration we wanted and could drive off the lot with.

But, this weekend, I called around and found a car that was worth looking at. A 2010 MB R350 Bluetec diesel. Problem was, when I showed the dealer my numbers (what I was willing to put down) I was told the numbers simply wouldn't fly.

The problem was that one of the reasons I had been pressing hard for an R-Class was that the information on showed that there was currently (until 11/2/2009) a $10,000 marketing support incentive offered by Mercedes Benz. That meant that the dealership I was working with was essentially willing to knock $10,000 off the invoice, MSRP, whatever price you start at, off the price of the car, no hassles, no problem.

Except, this is where my naivité came in... Marketing incentives are those by the auto manufacturer to dealers to move old inventory. When I walked into negotiate $10K off a 2010, that wasn't going to fly.

Clearly, knocking $10,000 off the cost of a car is a huge incentive, so I asked if they had any cars to which the incentive did apply. And sure enough, they had one in the same dealer's other lot.

The base MSRP of the car we bought effectively dropped from $47K to $37K, making a lot of the competition not much of a... well, competition. The base MSRP of the Highlander, for example, was $35K. Would I be willing to pay $2K more to drive a Mercedes? Sure I would. Especially when, for example, after two years (at a 50% residual for easy math), I'm still $5K ahead on the $10K I just saved.

Of course, you can only take advantage of these kinds of deals when the automaker offers them, typically to move older inventory out in advance of new models coming down the line. And while they may not all be as good as $10K, they generally appear around this time of year.

Frankly, if the Mercedes lots had been devoid of 2009 R-Class vehicles, it's quite likely we'd still be looking, and probable that we could have ended up with a Highlander instead.

There are three things I regret about not being able to take advantage in this purchase, none of which rise to such a high level that it was worth walking away from the deal. First, I'd love to take advantage of European Delivery. This is the least painful as bringing Carson along on a transcontinental trip when he's 1 year old isn't that attractive right now. Second, I wish I could have found a Bluetec diesel instead of the gas one I bought. Of course, gas is the "conventional" answer, but I think I would have liked the torque of the diesel as well as the gas mileage. And third, it would have been nice to have found a car fully loaded (our car lacks the 3rd zone climate control that I liked in the Acura we test drove, and it lacks the rear entertainment system, something we can add later).

But, as I said, minor quibbles, all things considered.

Name/Blog: Khan
Title: Oh yeah...
Comment/Excerpt: I forgot to mention that the M class wasn't an option because it lacked a 3rd row, and no $10k in marketing support. We're unlikely to use the third row that frequently, but it'll be nice to have when we do.

Name/Blog: Khan
Title: And the winner of the easiest car to install a car seat is...
Comment/Excerpt: During our shopping outings, I pulled out and put back our carsear into a Highlander, Tribeca, MDX, RX450, R-Class, Q7, Venza, and CX9. No car stood out over the others until today-- when I swapped the car seat into my A3 in preparation for trade-in. The A3 LATCH anchors have nice plastic guides that literally make installation a snap. After fighting all those cars, the best and easiest one to install into was in my garage all along!!

Name/Blog: Rus
Title: congrats
Comment/Excerpt: I don't think you'll regret going with MB at all. We have had two major problems with our MB... a fuel filter glitch and the tranny failure (at 150k)... but my independent mechanic (Adam at said those two problems are peculiar to the 1998-1999 MLs, e.g. the first generation of that model (we were the early adopters). The ML is now on its 4th generation of engines/equipment/etc so all those problems have been ironed out (hopefully without introducing new ones) and the ML shares all of that design technology with the R. So, good choice... I approve! cheers. --rus.

How to Buy A Car

We bought a car this weekend, but before I give you the details, I realized I should write this blog post first.

The first thing to know is that knowledge is power. There were many sources I relied upon, but a few key ones are worth mentioning. First, I relied on Consumer Reports to provide invoice and holdback costs. These are what the dealer was charged to take inventory of the car, and how much the automaker will compensate the dealership for selling it. The cost of each report is about $12-14 (depending on how many you buy) and they're fully worth it.

Consumer Reports lists each one of these details, which means you can walk into the dealership knowing exactly how much the dealer's cost is, and negotiate up from there, as opposed to negotiating down from the MSRP.

Second, I relied on the automakers' websites to familiarize myself with the models, packages, and options on the car. Consumer Reports provides this also, I suppose, but the "build your own" option on carmakers' sites helps with dependency and conflict resolution (not all options are available on all trims).

Third, I relied on, specifically, to get the residual values to determine just how quickly the amount paid on any particular car would depreciate.

Fourth, I relied on to get "true cost of ownership" values to determine what other costs are likely to rule the roost.

Since Christine and I could technically afford a much more expensive car, we were looking at a broad range of vehicles, from MSRPs as low as the 30's to cars whose MSRP is in the 60's. What was key was that we were buying safety, quality, and that the money we spent for that safety and quality didn't erode over time, so in that sense, we were value shoppers. And of course, the car simply had to "feel right" and so fit, finish, and comfort were also key factors. Outside of that, we looked at well over 50% of every brand and segment on the market.

Having done our finger-research (online) and butt-research (test drives) we narrowed the field down to a few, and pulled the CR new car reports which immediately gave us a sense for how much to negotiate. Once you find the car you think you want, make a note of all the options on the car (I called the dealership and asked for all the options of the car they had on the lot I was interested in-- it helped that there was just one-two cars on the lots I called).

Then, run a spreadsheet adding up the invoice prices, and subtracting away the holdbacks and marketing incentives. Add the transportation fee, marketing/advertising expenses, and various fees/expenses the dealer is likely to charge, and add a few hundred dollars of profit for the dealership, and you've got your offer price.

This will often be too low, and the dealer will try to talk you up. Listen to their rationale, and make your decision on whether or not the prices seem reasonable. I paid roughly $2K over my initial offer price, but $12.4K lower than MSRP. Another reason to bargain up from the invoice, holdbacks, and incentives rather than down from the MSRP!

Here's an example. These are actual numbers that I pulled, except I multiplied by a mystery factor and with a few numbers changed here and there, so as not to give away what I bought or to diminish the value of the CR data by publishing it. As I said, if you're buying a car, spend the $14 to get your own. It's totally worth it!

MSRP: $34xxx
Dest. Charge: $700

Marketing Support: ($x,000)
Dealer Holdback: ($1,144)

Luxury package: $3,980
Metallic Paint: $535
Premium Audio: $781
Wiring for Entertainment: $111
Heated Seats: $535

Subtotal: $42,096
Subtotal (minus incentives) $3x,952

Dealer profit: $500 (how generous are you feeling? What's a reasonable profit so the guys can be there when you need service?)

My Offer: $35,452

This price will need to come up, for various fees and costs, such as advertising support that regional dealerships pool to run the ads you see on TV, for their costs to prep and detail the cars, and the amount they pay to the bank to take inventory of the car (banks hold the ownership interest in the car, and the dealership pays the bank the monthly interest for each car in their inventory... So their inventory costs are just the interest on the car rather than the whole vehicle cost). Also, some dealerships, primarily the premium marquees, resist strongly to eat into the dealership holdback. They figure that a richer guy who cares less about the cents on the transaction will buy the same car you're negotiating for.

Finally, you need to take into account your trade. Before talking about the trade, make sure you finalize the offer on the car. When given an opportunity to tie the deal together, they'll find a way to inflate the price on the new car to compensate for your perceived value of the trade-in. Finalize the price on the car, then negotiate on the trade. If they won't go up any more on the trade, take the purchase without the trade, accept the offer, or walk away.

Of course, here again, knowledge is power. Do a search against sites like, where auto wholesalers bid for these cars. Pull NADA values (or simply ask for it) and KBB figures, to figure out, what is the actual trade value? Our car was in excellent shape, so we got top dollar for our car. (It also didn't hurt that we knew exactly what was a reasonable price for the car since my brother-in-law got us the numbers-- he's a wholesaler who brokers cars for a living).

What you'll end up paying is, of course, higher than just the offer price minus the trade. First, you'll only pay sales tax on the difference between the offer and the trade. So it also helps, if you want to know, to the closest dollar, how much you're likely to pay, know the sales tax rate of the city you're buying in. You'll also have to pay title/registration. Armed with this information, you'll know exactly how much you'll need to pay down in cash, or finance.

Armed with this bevy of information, you'll be able to rest assured just how much the dealership is making, and frankly, how much you're saving or not saving on the deal. And, if the prices just aren't coming down far enough, you can just tell yourself, "well the price I'll likely be able to negotiate at Ford will be better than this based on my research, and while I like this Escalade more than the Explorer, I don't like it $10,000 more!" and begin to walk out. When you're prepared to walk out to get a better deal elsewhere (and know you can get it!) that's when the dealership has to bargain.

Name/Blog: Khan
Title: Clarification
Comment/Excerpt: Christine pointed out that I almost make it sound like the figures in this post are real. They are not. I tweaked the real numbers beyond recognition and didn't specify which car this was, and renamed option packages. For illustrative purposes only!!

Name/Blog: Rus
Title: great post
Comment/Excerpt: This is great stuff. Keep that spreadsheet around... I may need it when Berkeley turns 16 for my next car purchase (in 8 years time). ;) cheers. --rus.

Tue, 20 Oct 2009

Car Buying Hiatus?

I'm half-considering abandoning our car shopping endeavor.

Am I bewildered by the bevy of cars and options and in over my head?

To the contrary, I'm motivated to finish my research and get a deal done, but I also want what I want.

Perhaps part of the problem is being spoiled by build-to-order options on the Internet, which makes the on-the-lot options which lack the packages and options I want, less appealing.

But I think the real culprit is a convergence of a few factors that have made car buying for the consumer a real pain, at least right now.

For one, the economy went south, and the car companies, apparently without exception, scaled back production substantially.

Second, the "cash for clunkers" program wiped out the inventory of lots of dealerships for certain car types, particularly those getting good gas mileage.

Consumers like me that want a specific configuration lose the negotiation ability since there isn't a car on the lot that I'm interested in buying. It's special order, and when the sales person knows you're looking for a special order, there's no incentive to negotiate.

With certain car makes (Volvo, Mercedes, etc.) there's the option for "European Delivery" which apparently saves the buyer a certain amount of cash (made up for with the expense of the vacation typically accompanying Euro delivery), and (at least it's my impression) puts the negotiation of the car price into a more narrow 'no haggling' arena.

So it seems my choices right now are to settle for some base configuration and find a way to add on the packages I want aftermarket, to order from the factory (and pay closer to MSRP), or to order European Delivery (so long as I don't decide to get a Toyota)...

Sun, 18 Oct 2009

Car Shopping - And Then There Were Three

This weekend we took some more test drives to include or exclude the cars we wanted to consider.

Last weekend, we had the field sorted in the following order: MB R350, Highlander, RX 350, MDX, Tribeca and XC90.

This weekend, we took the R-Class, Highlander Hybrid, RX 350, and the Tribeca for a spin.

The exercise allowed us to narrow in on specifically what were our priorities in the car. Briefly, we wanted a no-compromises solution, which meant the ability to seat 4 adults and a car seat comfortably. (Scenario: Christine, Carson and I go to the airport or train station to pick up two guests).

That meant the elimination of the Lexus, as it lacks a 3rd row seat, and seating for four adults with a car seat is not practical. This was tough because it was one of our favorites in terms of interior comfort and fit/finish. And the trailing candidate in fit/finish, the Tribeca was also eliminated, although it is definitely the class leader in its price class. If you want a mid-size SUV for less than $40K, you should take the Tribeca for a spin.

We also ended up eliminating the Acura MDX. The interior and technology package are quite nice, but the undoing of the Acura was its "truck-like" drive. Compared to the steering response from the R-Class, the Highlander and even the RX 350 and Tribeca, the Acura was dead last.

And we also ended up eliminating the Toyota Highlander Hybrid. Christine simply found that the non-linear braking and acceleration didn't inspire confidence, and the savings in gas mileage were offset by the fact that this car will be driven well under 10K miles/year, minimizing the fuel economy benefits of the Hybrid.

That means that the final list is starting to narrow to the R350, the Highlander (non-hybrid), and the XC90-- the latter two which still need a test drive. (While I test-drove the Highlander Limited several weeks ago, Christine hasn't and she'll be the primary driver)

P.S. Some readers might be curious as to why we didn't take any American cars out. First, I have yet to be impressed with anything the American car companies manufacture, simply from a "can I see myself driving this, can I see myself spending money on this" perspective. But prodded by my brother-in-law, who is a wholesale car dealer, we looked at a few American cars a couple months back when we first explored the option of a Honda Odyssey. That outing included the Escalade, the Envoy, the Navigator, the Yukon, and the Acadia. To the extent that the Mazda CX-9 is similar to (and likely superior to in some respects) a Ford, even Ford was represented. None of them made us take a second glance.

Name/Blog: Rus Berrett
Title: take the ML over the R
Comment/Excerpt: I still think you dismissed the ML prematurely. Put your rear-facing carseat in the middle of the back row and you should have plenty of room for two adults on either side of Carson. Seating for 4 adults plus 1 carseat has not been a problem for us in the past... and I think the current ML's a bit longer and _wider_ than our 1999 model. I test drove the R-class (a couple of years ago) and I thought the driver's cockpit was a bit too claustrophobic (you are I are about the same build and size). Also, the driver in the ML sits higher than in the R... which (for me) is a good thing. You didn't say you took the ML for a test drive. I think you should, because it is far better to drive than the R in my humble opinion. I am fairly certain that the two cars share the same unibody chassis and engine and tranny (and just about everything else), yet I just like how the ML drives over the R. cheers. --rus.

Wed, 14 Oct 2009

Rear Facing Seats

Rus asked if there was another little one on the way. Alas, no, this isn't the reason why we're thinking about buying a more family-friendly car. The implication is that, unless there's another one on the way, eventually, Carson will be forward facing, assuming we can tough it out until we can turn him around.

The problem is that while the American Association of Pediatrics recommends that kids stay rear-facing at least until age 1 and 20 lbs., they also recommend to keep babies rear facing until they reach the height or weight limit of the car seat.

(For details, see this, this, or this)

The seat we have will work rear facing until he's 49" tall, or 35 lbs. Clearly he'll hit the weight limit first before we need to turn the seat around. By my calculation at 95 %tile, that might be as late as 36 months. (Then he can use that seat until he's 49" tall, or 60 lbs., which appears to be around age six)

Name/Blog: Rus Berrett
Title: I have both hands up and am backing away slowly...
Comment/Excerpt: My 3-yr-old doesn't weigh 30 lbs yet... and we switched her around probably 2 years ago. You. are. both. insane. Much love, --rus.

Name/Blog: Rus Berrett
Title: turned her around @ 9 months

Name/Blog: Rus Berrett
Title: wait... March 29 == 8 months.

Name/Blog: Rus Berrett
Title: The verdict is in...
Comment/Excerpt: Dr. Kristy sez you aren't insane. So I take it all back. *grin* Just get the ML. Your concerns about your rear-facing car set bumping up against the ML's rear-seat DVD entertainment system seem somewhat moot since your son will not be in a position to watch the screen. cheers. --rus.

Name/Blog: Khan
Title: Are you suggesting...
Comment/Excerpt: The only way that would work is if we don't buy the rear-seat entertainment system, and add it later when he's forward-facing. I suppose that's one way to go, but I'm still pretty impressed with the R-class as a family car for other reasons (access to the rear seat, floor height, more spacious interior)...

Name/Blog: Rus Berrett
Title: How long are you keeping the car?
Comment/Excerpt: My presumption is that you aren't keeping the car for very long (3 maybe 4 years) based on your concerns about the car's resale value. So, therefore, you'll barely need the rear-seat entertainment system if you are keeping your child in a rear-facing position until he is 3-4 years of age. If you are buying the car for keeps (6 years or more), then resale values will all be so close (as measured by a percentage of the original purchase price) it hardly seems worth noting what those resale values are. Our philosophy about buying cars is to buy something that will last 20 years (or more)... so our concerns deal more with maintenance costs as opposed to resale values. But you haven't mentioned long-term maintenance costs in your blog entries, which leads me to believe that this is a short-term purchase. cheers. --rus.

Name/Blog: Khan Klatt
Comment/Excerpt: We haven't had a track record of keeping cars long, that is definitely true, but we're thinking of buying a keeper this time, hence the amount of research, and the desire for the rear-seat entertainment system. The research I've done shows that while resale value does narrow after five years, it's still significant. As far as maintenance, yes, this is part of my spreadsheet, which also includes gas and insurance. But long-term? No, the research I've found only goes out five years. Given that beyond a certain time horizon, it's all just guesswork, I'll have to be content with making the decision with the 1-5 years of data the industry generally provides.

Sun, 11 Oct 2009

Car Shopping @ Mercedes Benz

Today we stopped by the Mercedes Benz dealership. Last time we were at the Mercedes dealership, we sat inside the GLK and were not impressed. The M class was six feet away, but for some reason, it was locked on the showroom floor. Carson was getting grouchy, and so we were out the door without looking at it any closer.

With prodding from Rus, we decided we needed to take a closer look at the M class, particularly the ML-350 BlueTec diesel. I've been a fan of diesel engines for some time (post about diesels from 2005, and another post about diesels from 2007), and the latest ones from the collective efforts of Audi, BMW, Mercedes-Benz and Volkswagen are clean, fuel-efficient and possess none of the hassles (glow plugs, dirty exhaust) of the diesels of yesteryear.

These "clean-diesels" accomplish the task with urea-injection, which means approximately every 15,000 miles or so, you need to have the urea topped off. A hassle? Not much more than the hassle of having your spark plugs replaced in a non-diesel engine, I'd say.

Anyway, we got into the M class and while it was substantially better than the cheap interior of the GLK, the interior room wasn't impressive considering what we'd gotten used to with the other marquees we'd sat in. It wouldn't have been so bad except the configuration we're looking to get, with rear-seat DVD entertainment, places the DVD screen right behind the shoulder level of the front seat. Or, right at the touch point for where a rear-facing baby seat would go, cutting available seating room by at least 2-3 inches.

Disappointed, we began to depart, but the salesperson (I've grown to appreciate the difference in the salespeople at Audi, BMW, Mercedes and Volvo dealerships compared to Toyota, Lexus, and Acura) suggested we take a look at the R-class.

If you're not familiar with the R-class, it's a cross between an SUV, a minivan, and a sport wagon. We didn't have time to drive it, but it's based on a car body, has interior seating and room like a minivan, and four doors (no sliding doors) like a regular car.

Its seating room is comparable to the Honda Odyssey, but it doesn't look boxy and boring like a minivan. The used one they had on the lot (they were sold out) was a 2007 with captain's chairs, and that meant that with Christine in one seat, me in the other, with 4-5 inches of knee room from the front seats which were also moved far back, Carson was walking around between us on the floor. There is probably some apartment in Tokyo that has less room than the back of the R-Class.

Unlike the Tribeca, the 3rd row seats have plenty of knee room when the second row seats are copiously adjusted. Headroom is a different story, but the 3rd row seats are not ornamental in any way on the R-class.

If you drive by an R-class, take a glance at the length of the rear door. It is gargantuan in size, which means you need to be careful swinging it open in a parking lot, but also means placing a baby into a car seat is not an issue. And as a car-based platform, it's easy for younger kids to step up onto the car (no running boards required).

In short, the R-Class has climbed to the top of our list of what we like, followed by the Toyota Highlander, the Lexus RX 350, the Acura MDX and the Subaru Tribeca. Our original favorite, the Volvo XC90 now trails in fifth place.

That is to say, this is the rank of the cars as we sat in them, as we explored their features, fit, and finish, on the dealer's lot.

Two other rankings need to be taken into account. First, how do these cars drive? And second, what are they going to cost to own? I don't have a specific budget of how much to spend. A car is an expense, not an investment, so the critical factor in the financial dimension is not "invoice price", but the expense to own/drive it. The cost spreadsheet basically looks at "at given point X, how much did I spend on car Y, and how much more is that than the value of the car?"

Of course, the price you pay for a car is only one part of the total cost of ownership. MPG, service intervals/costs (outside of included service), insurance, warranty duration and coverage all come into play. My spreadsheet, which looks at the picture two years out, takes most of these into account, but will need updating as I negotiate the final prices on these cars (after the test drives, should that eliminate any cars based on driving them).

The preliminary numbers I've gathered for five of the cars (all well-equipped) puts the Highlander Hybrid in first place. After two years of ownership, including all of the above expenses taken into account, the expense of owning the car is about three pizzas short of $6K. The Toyota Highlander (non-hybrid) is $1670 behind the Hybrid, followed by the Lexus RX 350 ($3593), the Mercedes R350 ($4640), and finally the Acura ($9299).

I couldn't include the Volvo or the Subaru since they didn't offer finance calculators online that would have made a fair comparison possible, but assuming their finance incentives are as good as the competition, they are essentially a couple hundred dollars behind the Highlander Hybrid. (The Subaru is cheapest to insure; the Volvo is the cheapest to maintain with free service intervals for maintenance, but the Highlander Hybrid squeaks ahead on fuel costs)

Finally, Rus commented about residual values. The X5 xDrive35d does have excellent residual values (58% after two years), but Christine and I found the X5 to be a bit too small (note the scalloped front seatbacks that eat into the room for a rear-facing carseat's headrest here). Since residual values are dependent on the trim, news articles about residual value often don't contain enough detail. Of the cars in my spreadsheet, the Lexus RX 350 has the best (66%), followed by a three way tie with the Highlander Hybrid, the Acura MDX, and the Mercedes Benz R-class (52%). Fifth is a two way tie with the Toyota Highlander (50%) and XC90. Seventh place falls to the Tribeca (46%).

Name/Blog: Rus Berrett
Title: putting the cart before the horse?
Comment/Excerpt: Are you and Christine planning on perpetually having a rear-facing car seat? There must be something on the horizon that I'm not aware of... and if so, then congrats!

Mon, 05 Oct 2009

Car Shopping, Continued

As Rus and Justin suggested, Christine and I checked out the BMW X5 and the Subaru Tribeca (still on our list, a stop to check out the Mercedes M class) this past weekend.

I wasn't particularly impressed with the BMW. The biggest downside was the molding of the rear of the front seatback. It's molded strategically to give about two inches of extra legroom, but the way the shoulder of the seat is molded, in a scalloped fashion, robs the rear of two inches of seat space. Meaning that when a rear-facing carseat is installed, it's as if there were no room there at all.

And, both Christine and I were expecting to find the Subaru to be cheap, plasticky, and quickly eliminate it like we did the Mazda CX-9. But we both found that Justin's description was spot-on. The second row seat is on rails that allows that row to push into 3rd row seat territory. This feature alone gives the car the same legroom (subjectively) as the Highlander, for substantially less, and in a smaller vehicle. Interior fit and finish had its quirks, but nothing objectionable that made us want to scratch it off the list.

It bears mentioning that we haven't driven any of the cars except the Highlander (it's the only venue where we had the time), and even then it was me doing the driving on the roads while Christine took it for a 5 minute spin in the parking lot.

So far all our research has been doing is including or excluding on tactile, instant gut reactions. The "can you see yourself in this car" sense, the "does it feel right" factor, and "are we physically comfortable/does it have enough space" concerns.

Next weekend we'll try to schedule some back-to-back test drives of the Highlander, RX 350, MDX, Tribeca and may even squeeze in the Cayenne and X5 (so far, lowest on the practicality equation, but highest in perceived sportiness).

Name/Blog: Rus Berrett
Title: X5 and resale value
Comment/Excerpt: You mentioned in your previous post that resale value is a consideration. I'm pretty sure I read somewhere that the X5 has the best resale value in its class. It used to be the ML resale value was top of its class, but MB released the R class and then the GL class which cannibalized the ML sales (and re-sales). To wit, my wife wants to replace the ML with a GL. Why? Because it seats 7! And how often do we need to seat 7? Maybe once or twice a year. Not a compelling reason for the extra cost and much lower mpg (IMHO), but there is no reasonsing with wives sometimes. *wink* Enjoy your test rides. cheers. --rus.

Wed, 30 Sep 2009

Car Shopping Responses

Rus asked the question "No visit to the Audi dealership?"

Actually, the Audi dealership was the first place we went, when we first started casually looking a month ago. We found that every single car, with the exception of the Audi A8/S8 was too small to comfortably fit a front passenger and a rear-facing car seat on the passenger side. When you add the front + rear legroom specs together, the result is 78.4 inches, which is about 1.6" too short. In comparison, the Lexus RX 350's specs are 79.9 inches, about 0.1" too short (but clearly workable). So anything with < 80" of space is not seriously in the running.

VW doesn't fare much better unless you include minivans, but even then the Honda Odyssey and Toyota Sienna outclass the Chrysler-inspired Routan hands down.

And BMW is pretty much right across the street from the Lexus dealership.

The X5 also doesn't make the cut on combined legroom at a paltry 76.6" combined. Our A4 has 75.6" and I'm not keen on spending $50G+ just to gain an inch of interior space.

BTW... we love our ML, I'd replace it with another ML in a heartbeat. cheers.

Yes, the ML has a stunning 82.2" of legroom. That's near BMW 750iL or A8L territory!

Meanwhile, Justin wrote: "My wife and I have owned a few Subaru Tribeca's...We almost never use the rear 2 seats, opting instead to roll the 2nd row all the way back which gives a lot of legroom to any rear passengers, and also provides enough room for a rear facing carseat and having a front passenger be comfortable at the same time."

Interesting. Thanks for turning me on to this. The price is right, and while the space is tight (also 76.6" combined), the fact that the second row can scoot farther back into the 3rd row area means that this spec is actually moot. Just goes to show that sometimes going by specs on the Intarwebs can exclude options that are worth exploring. If the X5 has a similar feature, it might be worth taking a look at.

My principal buying criteria (once the requirements of safety, space, and options are fulfilled) is to make as good a financial decision as possible. So resale value is a strong plus, and big depreciations after 2-3 years is a big minus. Christine has a gut instinct about what "feels right" (both in motion and not) and given that much of driving safety comes from confidence behind the wheel, that's another key factor in the buying decision.

Sun, 27 Sep 2009

Car Shopping

With a rapidly growing little boy, Christine and I are finding that our Audi A4 is a bit space-constrained. Not only does a rear-facing car seat force the front passenger seat so far forward that it's not possible for an adult to sit there, a stroller and a shopping bag or two quickly consumes any available cargo room.

So we've been doing some casual car shopping. Some of the cars we've been looking at are the Toyota Highlander, Volvo XC90, Acura MDX, Lexus RX 350, and the Porsche Cayenne. I realize that's an eclectic bunch with a variety of price points, but the key selection criteria are legroom, available options (such as rear entertainment system) and five star safety ratings.

Over the past few weeks, Carson, Christine and I have visited a few car dealerships. I thought I'd share some of my experiences and observations. They're a bit eye opening regarding the target market, sales strategy, and customer service.

  • Our best salesperson experience was probably Volvo, so far. No high pressure tactics, knowledgeable salesperson, and attentive service.
  • Toyota was among the worst salesperson-wise. No service people anywhere, have to wait 5 minutes to even be approached, another 5 minutes to get a salesperson to come by, and another 5 minutes get the keys to any cars.
  • The Toyota salesperson requested our info after a test drive by saying "would you mind giving me your info so I can show my boss I was busy?"
  • She was unable to explain the difference between full time 4WD and AWD, which is a relatively minute difference in the Highlander since it doesn't have a 4WD Low setting as far as I can determine (I had to look it up after the fact)
  • After the test drive, I told her that I wasn't looking to buy for a few months, just doing the research, and that I'd be in touch.
  • A couple days later the salesperson's manager called me on my phone four times, and left one message. He told me that he could give me a quote on my trade-in (I made no such request), and that they'd have the Highlander Hybrid I was looking for in stock "real soon".
  • Note that I'd done the math, and even at outrageously high gas prices, the time to recoup the extra cost of the hybrid was too high to make it worthwhile. I never uttered the word "hybrid" to my salesperson.
  • The salesperson at Acura was a bit clingy. After showing us around the Acura, he kept on talking about how cool the nav system with voice recognition was.
  • Unfortunately, Carson was tired, and we didn't have time to get the "full tour". After excusing ourselves, Christine began to put Carson in the car. "While you're waiting, let me show you something cool", he remarked. Uh, dude, I just told you we'd be back for a test drive. And my wife is putting my son in the car, I'm not going to let them sit there while I'm getting a voice recognition demo that mimics what my Mac could do back in 1997!
  • Lexus was a mixed experience. In person, it was fine, but Yahoo Autos had a feature to get a quote online. I figured I'd try it out, and asked for a quote. I specifically asked for a configuration with the rear entertainment system. After 3 intro emails confirming that the various middlemen and lexus systems had gotten my quote, I got a fourth email with specific numbers.
  • The specific numbers were all stock configurations, and all the prices quoted were MSRP.
  • I wrote back saying "uh, I've been to your website, I know the stock configurations and MSRP"
  • The response "our most aggressive pricing is reserved for in-person consultations"
  • OK, so you've just demonstrated that the Internet is nothing more to you than an overpriced lead generation system. If I knew it was so worthless to me as a customer, I wouldn't have wasted my time.
  • And, despite putting my "preferred contact method" as "email", I got no less than 5 calls, and 2 voice messages from this "Internet manager"
  • In person, at the Lexus dealer, we were told that the rear entertainment system was a very rare configuration, if it was available at all, because Lexus had done some market research with the dealerships to find the most optimal configurations, and apparently rear entertainment systems didn't make the cut. Lexus/Toyota are renowned for their lean operational expertise so this wouldn't surprise me too much if it were true, but I still have to wonder if it's just not another excuse to sell something that's on the lot.
  • Come to think of it, I thought it was chintzy for the Toyota person to show us an aftermarket Kenwood kiosk in the showroom when we started the conversation about a rear-entertainment system.
  • Finally, the cash-for-clunkers situation had apparently wiped out the inventory at the Toyota dealership. There were a couple of Highlanders on the lot, and the one that we took for a test drive was out for a test drive right before us, and went out for a test drive right after us.
  • The Porsche dealership was a bit interesting. We pulled up in our Audi, and a Cayenne was parked right out front. It was unlocked, so we sat inside testing the interior room for legroom comfort. In the five minutes we sat there alternating seating positions, we didn't see a single salesperson. I think I saw someone walking inside, but otherwise it was a literal ghost town. You'd think that if you have $50K+ to spend on a car, that somebody would be interested in talking to you when you drive on their lot, but i guess not.
  • We also stopped by a Mazda lot to take a look at a CX-9. Too small for our needs, but while we were there, the salesperson first told us that he didn't have one on the lot. Christine said "what about that one?" pointing to a CX-9. "Oh yeah", the salesman remarked as he went inside to grab the key. When he returned, he told us "we're having a sale today". I suppose I was supposed to think "ooh, yippee, I'll be able to get a good deal today then!", but instead I thought, "Really? Does that technique actually work on anybody?"
  • After we told the salesperson the car was too small for our needs, and started to head towards the car, he said thanks and began to walk away. He was about 5 paces ahead of me when Christine, who was wrangling Carson five paces behind me, said "you want the key?" The salesperson didn't hear her, so I had to shout after him, "uh, you want the key?"
  • We briefly (like for two minutes) considered the Honda Pilot. Not only did nobody talk to us or even greet us at the Honda dealership, we walked directly into the showroom, opened the door of the (hideously ugly) Pilot and began to gauge interior legroom. After a few seconds we quickly eliminated the Pilot from the running and made a beeline for the exit. We weren't approached then either, which struck me as odd for an industry so rife with competition. Not that I was complaining, I appreciated the opportunity for the quick exit.
  • The Mercedes Benz dealership is right next to the Volvo dealership so we decided to take a look at the GLK. The other Mercedes SUVs are a bit pricier than the competition with lackluster residual values (compared to the cheaper RX 450), so the GLK was the only one we wanted to look at. We took about the same amount of time in the GLK as we took in the Pilot to reject the GLK. There was another GL right next to it in the showroom, but it was locked... on the showroom floor(?!)... Oh well, they were more expensive (and I'd excluded the ML for some reason I now can't recall), so we began to look for a quick exit.
  • Actually, now that I look at it, the ML350 BluTec has a pretty decent RV, so we'll probably be back to take a look at that configuration.
  • Anyway, as we were walking out I thought I heard a "have you been helped" from the far distance. I ignored it and continued with the egress. As we reached sunlight, the saleslady caught up to us. "Did anybody help you? Are you leaving?" After explaining that we were just checking legroom and that the GLK hadn't made the cut, we excused ourselves and were on our way.

I'll keep writing about our car shopping experiences and observations over the upcoming weeks.Stay tuned.

Name/Blog: Rus Berrett
Title: Barrier Audi?
Comment/Excerpt: No visit to the Audi dealership? And BMW is pretty much right across the street from the Lexus dealership. I guess there is only so much you can do with a 1-yr-old in tow. ;) BTW... we love our ML, I'd replace it with another ML in a heartbeat. cheers. --rus.

Name/Blog: Justin Akehurst
Title: Subaru!
Comment/Excerpt: My wife and I have owned a few Subaru Tribeca's. We went for the 7 seater limited package which has rear DVD (and two wireless headphones). We almost never use the rear 2 seats, opting instead to roll the 2nd row all the way back which gives a lot of legroom to any rear passengers, and also provides enough room for a rear facing carseat and having a front passenger be comfortable at the same time. I love those vehicles, they do great in icy weather. Highly recommended.

Sun, 13 Sep 2009

Congratulations Richard & Mel

Last weekend my friends Richard and Melissa got married at the Zenith Vinyards in Oregon.

My friend Gavin was the best man, and my friend Tony and I were two of the groomsmen.

Richard, Melissa and Gavin

It was a memorable wedding, from the scenic views to the dynamic weather, and the opportunity to touch base with long time friends.


I'd set this article aside a while back and only now got around to reading it. I'd seen Frank Schaeffer on various talk shows. He's one of the founders of the religious right who has come to repudiate his former views and colleagues.

Open Letter to the Republican Traitors (From a Former Republican).

Aircraft Broadband, Part 2

Approximately three months ago, I wrote about some potential improvements to aircraft avionics that ought to be implemented.

At the time, I wrote:
From the maintenance perspective, airplanes either should already be (or if not, could be required to be) equipped with on-board diagnostics. [...] [T]hese codes could be beamed, in-flight, to a central maintenance facility who can dispatch the proper parts and mechanics to meet the plane at the most optimal location in its itinerary.


The other aspect of my argument is illustrated by Air France 447. The diagnostic stream of data is useful in maintenance, but the FAA could really benefit from live streams of black box flight data streamed in-flight. [...] In situations where the black box may not be able to be recovered (reports put the 447 flight recorder as deep as 13K feet), or if the data on it is damaged, voice and telematics data could be encoded, compressed and transmitted to ground-based stations that can provide either up-to-the-minute data of what was going on in the aircraft.

The other day, I saw this news report. Quote:
European plane manufacturer Airbus wants to see the end of the black boxes on airplanes. [...] Airbus [...] is working on the possibility of sending while inflight the most important flight data in real time via satellites to the airline’s HQs and to no longer solely rely on black boxes which, in some cases, are difficult or impossible to recover or too damaged to be analyzed. [...] [A]ircraft would continuously transmit technical data via VHF if it is less than 125 miles from a reception station or via satellite beyond this distance. The satellite then would relay the technical data to a reception station on the ground. And this station would pass on all the information via phone lines or satellite to the airline company’s reception center.

Another aside in the same article was about my point about maintenance:
An aircraft is already transmitting using VHF or satellites certain technical data to its airline on the ground. Coded messages called ACARS (for Aircraft Communication Adressing and Reporting System) are sent continuously and at more or less regular intervals of about 10 minutes to the maintenance centers of every airline company worldwide. Listed in these messages are, among other things, the aircraft’s flight path, the speed and position of the aircraft, but also alarms which alert maintenance personnel on the ground of issues with the aircraft that would need to be looked at when the aircraft lands at its destination.

This isn't the first time some ideas I've had are contemporaneously being developed, and that's a good thing.

Sat, 05 Sep 2009

Wisdom from seat 4a

On my flight to Portland, an 18 year old kid behind me was saying the darndest things (sounded like he had just enlisted in the air force):
  • that building looks like a Lego I built once
  • it was inspired by my lego
  • or maybe my Lego was inspired by that building
  • the propellers sound like they are cutting through something
  • the fuselage
  • it was made of red meat
  • beef - it's what's for dinner
  • pork - the other white meat
  • whoa that plane in front of us almost hit that X
  • you can crash into something and still fly... we're crashing into a cloud right now
  • looks like we're gonna land in water
  • the pilot screwed up the landing ... but we can still careen off the runway
  • landing in 3... 2... 1.... 321... .... ... there 

I found the commentary amusing, but what if you had flight anxiety? ;)

EPCA-2 Lawsuit

Several members of my family have been stricken with prostate cancer. In order to stay informed, I've been following prostate cancer news, and in fact, when consulting with a specialist, I knew of a test he hadn't even heard of called EPCA-2 or "Early Prostate Cancer Antigen".

The traditional prostate cancer test, the PSA test (prostate-specific antigen), is a less-than-reliable indicator for prostate cancer. Many doctors don't recommend it to younger patients simply because of the concern and worry it creates in potential patients because it can show elevated numbers even in healthy people.

The promise of EPCA-2 was that it would produce much more reliable early detection of prostate cancer.

Last time I saw my urologist (about two years ago), he looked into it and responded that it was too early for clinical use, but by the time I should be screened (at age 40-- he recommended against screening until then) it might just be available.

Well this morning, I found the following news article: Pitt, Johns Hopkins scientist sued over prostate cancer research. The synopsis is that the researcher is being sued for fraud, and EPCA-2 may be "no more accurate in distinguishing cancerous tissue from normal tissue than flipping a coin".

If the allegations are true, count me as one of the duped victims who has been following nearly every article about EPCA-2 for several years now.

Mon, 31 Aug 2009

Dear Apple (My Digital Video Wish List)

Thank you for supporting the AVCHD format commonly used by many HD video cameras in iMovie.

However, I should point out that this support could be vastly improved if you offered native AVCHD support. You see, transcoding one hour of AVCHD into Apple Intermediate Codec results in roughly 40GB of clip files, which are handily stored in some hard-to-find location on the hard drive. And, it's not clear whether or not these files need to be archived, or are intermediate files that can be purged after final editing.

My MacBook Pro, with its original 100GB drive would have choked on a single hour of video (what with the OS, my photos and iTunes libraries consuming well over half of the drive). But while I'm thankful I upgraded my Mac to 250GB, even that begins to fill up quite quickly at 40GB/hour. So much so that I had to go archive a bunch of files to my AirDisk just so I could install Snow Leopard.

So what do you say, Apple, can we get native AVCHD support? Please?

Grand Unified Theory of Moore's and Murphy's Laws

Intel co-founder Gordon Moore predicted in 1965 that the number of transistors on a chip will double about every two years.

Physicist Edward Murphy was quoted as saying "Anything that can go wrong will go wrong."

It's not exactly groundbreaking news, but I'm today proposing a grand unification of these laws:
"The likelihood that something will go wrong doubles every two years."

You (probably) heard it here first. ;-)

Thu, 20 Aug 2009

How and Why to Pay Your (Technical) Debts

Disclaimer: While I relate stories about my work experiences, my views are my own and do not necessarily reflect those of my employer.

Recently, my company made a decision to shift from a deliberative, sequential and often secretive (work is done without visibility to the stakeholders until the stuff is ready to go out the door) software development process (called "waterfall") to a iterative, adaptive (agile), and transparent process called Scrum where business owners are a key part of the team and participate in story (work) definition and acceptance.

Technical Debt
Scrum describes a concept called "technical debt". Think of "technical debt" as the remnant work not done because it's easy enough to define the finished working product loosely enough that just putting the stamp of approval counts as "good enough".

In other words, technical debt is stuff that you're going to have to contend with eventually, but expediency, procrastination or deadlines result in putting off dealing with it.

If your house is a mess, when your friend calls you on the phone saying "hey, we're going out, wanna come?" you either say "no, I really need to do some chores around the house" or you go out and don't have a good time because all the while you're thinking of the mess you left behind at home, or you go out, but realize that when the weekend comes, you've got a huge mess on your hands.

Essentially, your ability to quickly respond to the needs of the circumstances (a friend wants you to drop everything and come with him) and your ability to respond appropriately (nobody wants to hang out with someone stressed out about the house chores they have to do) without suffering undue difficulty (the weekend is shot if you don't do the dishes and cleaning as the needs arise) is a function of how far you let things slide in the normal course of things.

So in this way, Agile encourages the conversations between engineering and the business to negotiate what work should be handled now, and what can be put off, by expressing things as relative priorities. For example, if your house is on fire, you don't tell the firemen "I'll be right out, I need to finish vacuuming". At the same time you don't install hardwood floors (customer feature request) over rotting wood (infrastructure or foundation) either.

Sins of the Past
Organizations that have historically done "waterfall" work also tend to lack having clear "definitions of done" (another Scrum term that suggests teams establish standards that must be met to assert that the product is complete and ready to ship), so products are shipped with quality varying not whether the product has evolved to a level of appropriate maturity, but rather on how well the team was able to predict exactly how long it would take to build a quality shippable product. That is, poor estimation (an endemic problem) equals poor quality. So, definitions of done tend to nip this in the bud by describing the properties of a completed product as the standard by which something is declared "ready to go" rather than some deadline that comes whizzing by.

This also means that teams moving to Scrum from Waterfall have to contend with a lot of historical debt that was incurred previously. The code they are working on may be bug-ridden (or difficult to prove is not bug-ridden due to lack of automation or repeatable functional tests), poorly documented and hard to extend and maintain. (By contrast, definitions of done in Scrum tend to aim to make well documented, well tested, using industry best practices to identify and address problems early and often)

But Engineering teams tend to want to build the software that way to start, yet typically have their their hands tied because the business expected a shippable product at the deadline and don't notice or care that the software lacks automation testing (throw more QA people at it) or proper documentation, for example.

The Scrum model says "ah, but they should care, and the rationale justifying the work should be conveyed to them." For example, convince them that poorly documented code is harder to fix later. For these reasons, Agile processes assert that teams can increase their velocity as they pay off their technical debts and become unencumbered by the sins of the past.

Healthy Skepticism
So Scrum was introduced in my organization and I was initially skeptical. The "sins of the past" seemed like they were largely incurred by an overexuberant business who wanted the product ASAP, and didn't know or care about the relationship between available time, definitions of done, and product quality.

The "transparency" aspect of Scrum suggests that you "lay down your cards", meaning that if engineering management wants the teams to spend some time backfilling automation tests of individual units of code (repeatable assertions that the code is doing what you expect such that when you change some behavior of the code, everything else continues to work as you expect), you write a story for that work, express the benefit to the organization, and let the business prioritize that story amongst all of their stories.

"Surely, this can't work", I assured myself. "An organization who expressed priorities as 'I want it ASAP' couldn't shift culturally fast enough to say 'sure, take the time to do it right'. I must 'hold back' a certain amount of my teams' time to ensure we do things the right way."

Our Scrum coaches argued against me, and I wouldn't budge... at first.

Articulation of Value
I began to come around when the business showed a willingness to accommodate technical stories. I knew, deep down, that the reason why I insisted on "doing it right" was because there was, in fact, a benefit to the business to doing it that way, I just hadn't spent the time to articulate it in a way that allowed prioritization against other stories in the queue.

As engineering was able to explain the "why this ought to be done", the business began to concede that "yes, we'd like to pay off a little of that debt to gain a little bit of velocity".

To help my teams in conveying the value of technical stories into business value, I prepared a "so that" wiki article. You see, each user story (a unit of work where the desired outcome is described in a form like "as a business owner, I want to add blinkers to my car so that drivers behind and ahead of me can know that I intend to turn right or left") has an optional "so that" clause that expresses the value of the work to be done. Often times, the "I want" part of the phrase is easy to write, but the benefit (the "so that") is much harder to articulate.

Transparency, Incentives and Planning
One of the patterns in Scrum involves maintaining an up-to-date "wall" of user stories and their progress for transparency. "Burn down charts" depict how much work is remaining in the 1-3 week window of a "sprint". And given daily reminders of their progress and "velocity" of getting work done against the goal, the team begins to take pride in their numbers, and strive to resolve issues and increase the number of points they can complete in a sprint.

Obviously, if I "held back" backfilling automation testing or documentation, for example, this would be work the teams would be mandated to do, but not given credit in their velocity calculations. And, given that they are tracked for the other stories in the sprint, the technical debt stories not tracked through scrum would mean my tech stories would be constantly pushed out or delayed.

In other words, this lack of transparency would also dis-incentivize employees to do my technical debt work.

Sure, there was an opportunity to create my own "backlog", try to run it as well as the business backlog, but the time commitment both from me and the team would have been non-trivial.

It also helped to have a backlog of technical stories "ready to go" in case a last minute business priority decision or some dependency (such as approvals for creatives, for example) delay meant lost productivity on the team. These stories would be added to the sprint, meaning that the estimated "points" to complete them would be counted in the team's velocity.

Finally, we added objectives to the team that partially grade teams on their velocity. Thus, any story that was "planned work", would count for velocity, where unplanned work wouldn't. So I was reminded of the adage, "your failure to plan does not constitute an emergency on my part”.

Overcoming Challenges
That's not to say that this was entirely panacea. Crucial conversations with team members, business owners, and stakeholders in both IT and the business had to be addressed. And I had to accept some measure of compromise when the business needed functionality done ASAP, in exchange for greater capacity in future sprints. We had to ensure that we had a process for handling high urgency unplanned work (P1/P2 bugs for example), as these could quickly derail sprints in progress.

So, in summary, if you can’t trust the business to prioritize your technical debt stories, then you need to become a better story teller, or your business has more significant problems because a key stakeholder’s properly articulated concerns are not being heard. I assert that “if it’s worth doing, it’s worth covering in either your Definition of Done, in your Acceptance Criteria, or prioritized in the Product Backlog.”

Scrum promises not only to speed up the course of software lifecycle management, it promises to increase the capacity and problem-solving abilities of your teams, and, via transparency, bring the technology and business units into greater alignment than can ordinarily be seen in a non-Scrum environment.

Wed, 12 Aug 2009

(More) Fun With Unix Commands

I decided to see what the boring cloud would look like (no stopwords, no character limits). Here's that list.

like my a as was would are of you up
from when it we I or that an on what
their is which will if but can all with they
have about and for who be by so more
our out one to this not at your the in

How I generated this list:

cat ~/*.txt | tr '[A-Z]' '[a-z]' | sed 's/ /\n/g' | \ egrep -v '[\><"#{}1234567890/|?;_.)(!&-+=:@-]'| sed 's/[,.]//' | sort | uniq -c | \ sort -n| sed 's/$/<\/font>/' | sed 's/[0-9][0-9] /">/'| sed 's/\([0-9]\)/<font size="\1/' | \ sed 's/>i</>I</' | tail -50 | shuf -n 50 > ~/wordcloud2.txt

Fun With Unix Commands

Just for fun I decided to see if I could write a long Unix command line to produce a top-25 word cloud from my blog contents.

Here's what I came up with.

should would google those voted
know needs never server technology
seems thought people three products
country speed shuttle looks couple
through problem pretty could every

And here's how I generated it from the Unix command line:
cat *.txt | tr '[A-Z]' '[a-z]' | tr ' i ' ' I '| sed 's/ /\n/g' | grep ..... | \ egrep -v '[\><"#1234567890/|_)(!&-+=:@-]'| sed 's/[{}?;,.]//' | sort | uniq -c | \ sort -n | grep -v -f ~/stopwords.txt | sed 's/$/<\/font>/' | sed 's/[0-9] /">/'| \ sed 's/\([0-9]\)/<font size="\1/' | tail -25 | shuf -n 25 > ~/wordcloud.txt

In English, what those commands do are:

  • List all the text files
  • Transfer all the words into lower case
  • Recover the word i back to I
  • Substitute every space in each text file with a carriage return (now all words are on their own line)
  • Apply my own "stop word" filter-- namely, only show words with 5 characters or more (not, me, us, she,... boring words for a cloud)
  • Pull out lines containing non-alpha characters
  • Pull off , and . and other punctuation from words
  • Sort the resulting list
  • Count the unique lines
  • Sort the counted list
  • Pull out a list of stopwords from google
  • Add a closing </font> tag to the word
  • Replace the space between the count and the last digit of the number with a "> to close the font size tag
  • Replace the first digit(s) of the count with <font size="[number]
  • Take the 25 last (most frequent) lines
  • Randomize the list of 25
  • Put the <font> tags into a file called wordcloud.txt

Another day, another (geeky) project. ;)

Mon, 10 Aug 2009

Flickr Activity Posts

Facebook has been getting some bad press over the past few months over their rather onerous terms of service. I'm a proponent of open source, and open licenses, and have made my photographs available on Flickr with a specific-- and permissive-- licensing model.

Posting photos on Facebook, even if those photos were displayed via an automated feed from Flickr, would seem to give Facebook the ability to sub-license and transfer rights to those photos that might be more liberal than the ones I applied to them originally. (This is my interpretation anyway, and the language is vague enough to allow this to happen).

For that reason, I severed my Flickr feed with Facebook, and decided that I already have the power to publish my content to those who have any interest in following me (you're reading it!).

Which brings me to this post. :) I've just completed my latest programming project, a simple perl script that processes my Flickr feed and posts the results here to my blog.

It runs hourly and submits any Flickr uploads I've provided in that span of time to my blog. The entry right before this one used the same script (but expanded to pull from a greater amount of time). For those of you who run a blosxom blog (or one which accepts plain text posts) the script is available for you to use as well. It's in Perl and requires some module installations.
#!/usr/bin/perl # Author: Khan Klatt # Released under the GNU GPL. ( # use strict; use HTTP::Request; use LWP::UserAgent; use PHP::Serialization; # Flickr Constants my $flickr_id = '43546914@N00'; # REPLACE ME WITH YOUR OWN FLICKR ID my $flickr_format = 'php_serial'; # Date Constants my $global_date = time() - 36000000; # (to kickstart first post when no photos recently posted) my $global_date = time() - 3600; # One Hour Ago # Post Constants my $path = '/PATH/TO/YOUR/BLOG/DIRECTORY'; my $post = qq[My Recent Flickr Activity\n<div class="flickrphotos">\n]; my $photosposted = 0; my $filename = $path . "/flickr" . $global_date . ".txt"; # Get the feed from Flickr my $uri = "$flickr_format&id=" . $flickr_id; my $request = HTTP::Request->new(GET => $uri); my $ua = LWP::UserAgent->new; my $response = $ua->request($request); my $data = $response->{_content}; # Process the feed my $feed = PHP::Serialization::unserialize($data); foreach my $entry ($feed->{items}) { foreach my $item (@$entry) { next if $$item{date} <= $global_date; # Don't post photos older than an hour ago $post .= <<EOF; <span class="flickrphoto"> <a href="$$item{l_url}" target="_new"><img src="$$item{thumb_url}" alt="$title" /></a> </span> EOF $photosposted++; } } $post .= "</div>\n"; if ($photosposted) { umask(002); open(outfile, ">$filename") or die "Couldn't open $filename for writing."; print outfile $post; close(outfile); }
The CSS classes of flickrphotos and flickrphoto are included to help with visual presentation.

Finally, you'll need to automate this script every hour (or on whatever interval you prefer). Here's my crontab:
5 * * * * /path/to/your/ # Run 5 after the hour every hour of every day
There might be a bug lurking in the logic that compares the feed's photo timestamps with the local time of the server you're on. If these are in different timezones, then photos may be missed in the pathological case (where the timestamp on the photo is much older than the timestamp on the unix box, which would be true generally if you take pictures in Hawaii and have your hosting in Japan, for example). Adding timezone support is left as an exercise for the reader. ;)

Sat, 11 Jul 2009

World of Warcraft Humor

Sadly, I could relate to much of this article. I'm Not Questing With You Until You Admit You Screwed Up The Zul'Aman Raid.

Sat, 04 Jul 2009

Neat Apple Store Experience

My MacBook Pro's keyboard just gave up the ghost recently. The QAZ keys as well as ESC, TAB, etc. would no longer function.

It was tolerable just using my bluetooth keyboard, so I just put up with it. Since Apple is the only source for parts, I had to take my MBP in to have it serviced, which is a little bit of an inconvenience. Having done my homework, the repair charge was $200, including the replacement keyboard. I had asked if I could buy the keyboard and replace it myself (after all, I'd removed the keyboard to install a 7200 RPM hard drive in this puppy, so I knew how to do it). Apple said "sorry, can't sell you parts". A little bit of a problem, but for $200, including the hardware, plus I wouldn't have to take apart 42 little screws using 2-3 different screwdrivers? That's actually not a bad deal...

So I had Thursday off, and I began to call around to the various Apple stores to ask a few questions... a) Do you have the replacement keyboard in stock? b) Do you have an Apple Genius slot open early in the day so I can get it repaired same day?

The Southcenter store is the closest, but their earliest slot was 5pm. University Village had a 2:30pm, so off I went to Seattle. The store was hopping-- as in "what recession?" hopping. People buying iPhones, checking out MacBooks, iMacs, iPods, and tons of people seeing Geniuses or getting tutoring.

I drop off my MacBook, and the guy in store informs me that I have two options: 7 day guaranteed repair turnaround, ship it out of state repair, or 2 business day turnaround in-store repair, but sometimes it needs to be shipped out of state, meaning 2-9 days.

I tell him it's just the keyboard, they have it in stock, and gee, is it possible to pick it up same day?

The Genius says "one sec" while he checks with the technician. A short while later, he reappears and says "yes, we can do it same day". I ask "I live in Renton, do you think it might be quick-- should I stay in town?" and his answer is, expectedly, "It's hard to say. It might be 40 minutes, it might be 4 hours".

So, thinking it won't be that quick, I head home (only to receive a call 40 minutes later that it's done).

On the return trip as I walk in the store (around 8:20pm, 40 minutes till closing) the din has died down, only about 20 people in the store now (instead of 50-60). The greeter says, "Can I help you find something?"

I respond with "Nope, just here to pick up my laptop."

I proceed to the back of the store, some 20 yards away, and another Apple employee walks up to me and says "I understand you're here to pick up your laptop?"

I notice he's got an earpiece, and I'm thinking "oh, way cool!!!".

After I give him my last name, he goes to retrieve my laptop and I'm out of there lickety-split.

I've been a big Mac fan for over a decade now (thanks to Richard and Gavin who turned me, with of all things, a PowerMac 7200) but this was perhaps my best repair experience to date. It isn't rocket science technology they're using to relay customer info to the back of the store, but it is slick!

Sun, 21 Jun 2009

Broadband-Enabled Airplanes

If you're moderately interested in technology and travel by air, you've probably heard news of in-flight broadband access.

Rather than being yet another amenity for the business traveler to stay productive or for people to keep in touch or to keep entertained on long flights, in-air broadband is something the FAA should consider making standard on all new aircraft.

No, I don't think the FAA has a vested interest in making sure that the tween in seat 16C can download the latest single from Hannah Montana in-flight. Rather, I think the airline industry, as well as the regulatory body overseeing it, should make in-flight broadband a requirement for safety and maintenance reasons.

From the maintenance perspective, airplanes either should already be (or if not, could be required to be) equipped with on-board diagnostics. This is something the car in your garage or driveway already has. Called ODBII (On-Board Diagnostics 2) your car's engine can diagnose and warn about several kinds of problems that your car might encounter from the air/fuel mix, to the ignition and exhaust. If you've ever seen a "Check Engine Light", you know what I'm talking about.

Now, clearly, airplanes could "store" these codes, much like your car does. And much like you can take your car into the dealership to have the codes pulled to identify what the maintenance issue is, airplanes can be checked at the terminal for their operational status.

Or, alternatively, these codes could be beamed, in-flight, to a central maintenance facility who can dispatch the proper parts and mechanics to meet the plane at the most optimal location in its itinerary.

My personal philosophy when it comes to maintaining my own vehicle is to address each issue as soon as it comes up, when the cost of addressing it is minimal. Issues ignored typically equals issues magnified and made more expensive in my world view. If this belief holds true in the real world, then real ROI can be shown here by airlines voluntarily including broadband and using that pipe to stream such diagnostic signals.

Consider if there were tire pressure monitoring systems, like in modern luxury vehicles, that could alert about lower tire pressures, in-flight. Forget the sensational scenario of averting a safety danger (although this, too, could be a benefit), but just consider the alternative of having a flight land and return to the terminal. The post-flight check, or possibly the pre-flight check of the next flight might detect the low tire pressure on the aircraft. Meanwhile you're boarding 200+ people on the plane, and the plane needs to reach its next destination with little room for error to not cascade delays everywhere on its itinerary.

Clearly, having advance notice of the problem means that you can have the air pump or tire replacement equipment ready at the gate when the plane lands. True, if the airplane is so instrumented, the pilot can alert the ground crew too when the light switches on in the cockpit, but why add the human element in the middle who might be busy with other details?

The other aspect of my argument is illustrated by Air France 447. The diagnostic stream of data is useful in maintenance, but the FAA could really benefit from live streams of black box flight data streamed in-flight. Rather than having to hunt for the black box, what if all the black box data was already available? In situations where the black box may not be able to be recovered (reports put the 447 flight recorder as deep as 13K feet), or if the data on it is damaged, voice and telematics data could be encoded, compressed and transmitted to ground-based stations that can provide either up-to-the-minute data of what was going on in the aircraft.

Depending on the speed of the in-flight broadband, this data stream could obviate the need to find the black box entirely, or at least begin to offer investigators some early data to help rule out various scenarios which might aid in either finding survivors, victims, or wreckage, not to mention answers as to what happened to prevent similar problems on similar aircraft flying hundreds of thousands of miles each day.

The question then becomes, if the FAA and airlines are constantly streaming that much data from the aircraft, how much would be left for passengers? On its face, that's a bit of a silly question... safety and cost savings would seem to have greater value than a few folks squeezing some productivity out of a flight, but I would suspect that there would be sufficient bandwidth if the FAA's requirements for black box data was of MP3 audio quality for cockpit recordings and time-limited telematics (i.e. ten data points per second as opposed to 1 data point per ms, for example). Given that it would seem to be a quantum leap in benefit beyond the basic data that is currently sent via radio, even these modest improvements, I suspect, would offer substantial benefits.

Sat, 20 Jun 2009

A Fun Thought Experiment

At a recent conference I attended, a session touched on intercultural communication issues (with offshore engineering teams). To illustrate the point, the speaker remarked "consider explaining how baseball or football works to someone new to the game".

In +-60 words or so (assume 1 word per second for a one minute explanation), try to explain each one. Here are my first tries:

Football: Teams score points by taking the ball into the team's "end zone". Seven points are scored for running or catching the ball therein, three by kicking through the goal, and two by forcing a team to end their play in their own zone. Each team has four attempts to take the ball 10 yards. Failure gives the ball to the opponent.

Baseball: Points are scored by completing circuits around the field. Batters can advance when the ball is put into play. A batter's turn ends when he reaches base, or is counted "out". Outs occur when failing to swing and hit the ball, or not swinging at a hittable ball three times, and when failing to reach a base before the offense can tag the runner or prevent them from taking the base. Four poor throws allows batters to advance. A team gets three "outs" per inning, and nine innings per game so long as there is no tie.

How well can you do? Clearly baseball is more difficult.

Windows 7 72-349% More Expensive than OS X Snow Leopard

From the "Lies, damn lies, and statistics" department...

According to Apple, to upgrade to Snow Leopard (OS X 10.6) from Leopard (OS X 10.5) will be just $29 in September. It will run on every Mac shipped in the last three years.

Meanwhile, to upgrade to Windows 7 Home Premium will set you back $50 while Windows 7 Professional will be $100. Oh, and don't forget to download Microsoft's "Windows 7 Upgrade Advisor" from their website to see if you need to buy a brand new PC to run it on.

I wonder if any of the laptops purchased in the "Laptop Hunters" ads can run Windows 7 or not...

Wed, 03 Jun 2009

It's Time to Move On, Microsoft

I don't get why Microsoft feels like it needs to compare PCs to Macs in their laptop hunter ads. Pitting the PC against the Mac doesn't do Microsoft any favors. First, any such comparison is basically going to come down to price. And for a company whose latest "Ultimate" product retails for $219.95 for an upgrade, the implication is, after you buy this laptop the next upgrade to Windows is going to cost you $$$. (A new copy of OS X costs $129. And a family pack-- 5 computers in the same household-- is just $199)

My Flat Panel iMac, which doubles as my home server, introduced by Apple over 7 years ago, is capable of running OS X 10.5 (Leopard) just as fast and as well as the OS that shipped with it: OS X 10.1.2 (That's right, four major versions ago).

When you set the expectation that cheap hardware is abundant, are people really going to feel like the OS upgrade is worth $200+? So does MS expect you not to upgrade the OS, and to just buy a new PC with each OS release?

So what was that about the Apple tax, again?

But this distracts from the broader point. If Microsoft is making $200-300 per copy of Vista Ultimate, why aren't they content to make the same amount with Microsoft Office for Mac? (yes, retail pricing for Office for Mac is in that ballpark)

Wither the Office for Mac ads that say "With Office for Mac, Microsoft brings the best of breed Office product to the Macintosh. So you no longer have to feel like a second class citizen on your preferred platform"?

And it's not just the Mac that Microsoft needs to rethink. They should consider if Microsoft Office for Linux can be profitable. And for that matter, IIS, Access and SQL Server for Mac and Linux too. Top it off with C# and the other developer tools. Why allow Linux and Mac developers to live in a completely different ecosystem? Why not enable them to use the tools and software they need to build software for any platform, using their tools?

Now some people will call me crazy, stating that Linux needs IIS like a fish needs a bicycle. The point is that that by focusing on trying to capture 95+% of the desktop market for Windows, that they are ignoring the fact that they already have a dominant position for Office products on the Mac, and if the execs at Microsoft are concerned about Linux (considering the FUD they've been spreading, they are) the strategy to make money on Linux is to embrace it, not to ignore it.

If I were at the helm of Microsoft, I'd insist on running it as if the antitrust suit to break it apart had succeeded. Let each division make the decisions about the marketplace that are in their best interests, and don't let one division (Windows with their laptop ads) snipe at the other (Mac BU, authors of Office for Mac).

Name/Blog: Tim
Title: Check out the Mono project for C# on Linux / Mac
Comment/Excerpt: You can do quite a bit of the .NET stuff on Linux (and Mac, though that is newer) with Mono.

Sun, 31 May 2009

I'm Not In the 7%

I was recently forwarded a email which started like so:
Written By Regina Brett, 90 years old, of The Plain Dealer, Cleveland, Ohio "To celebrate growing older, I once wrote the 45 lessons life taught me. It is the most-requested column I've ever written. My odometer rolled over to 90 in August, so here is the column once more...

In preparing this blog post, it turns out that, unless she was caught in some "miraculous" time warp, she turned 50 in 2006, so being 90 only 3 years later is an impressive feat.

It turns out this 53 year old actually has her own site, (I'd link to it but it's down), and I found a reference to the actual post in Google's cached copy.

Now, I generally don't forward emails. Not because I'm a curmudgeon, but I figure that posting stuff on my blog is a far better use of "broadcast" communication to my friends. Emails are generally point-to-point for me (mailing lists excepted, but which are generally about a specific topic so forwading to them is not an option either).

You might say I generally follow the following flowchart: Should You Forward That Email?.

But I digress. The purpose of this blog post is to offer my revisions to Regina's posts, which are just as smarmy or relevant (whichever you subscribe to) whether she's 5, 45, or 90...

"1. Life isn't fair, but it's still good."

Life tends to be fair to you in the degree you're fair to life. Are your expectations realistic? Have you invested in yourself and your circumstances to give yourself a fair chance at success?

"2. When in doubt, just take the next small step."

Never underestimate the power of your intelligence and the ability to make something better out of your circumstances. In some cases, taking a small next step might take you over a precipice that is impossible to climb back up. So don't step over a cliff.

But if you're facing an uphill challenge that seems too steep to overcome, remember that those who have mastered Everest need oxygen masks and crampons, and those who have mastered space had suits and rockets. Properly prepared, you can overcome anything, so if you're in doubt about a step in the right direction, remember that luck is when preparation meets opportunity.

"8. It's OK to get angry with God. He can take it."

Plus, like Mickey Mouse, he doesn't really exist.

"17. Get rid of anything that isn't useful, beautiful or joyful."

Everything you own requires some element of investment in time, storage, or maintenance. If you can't get use or joy out of something, it's holding you back.

"33. Believe in miracles."

But don't expect them to come true. See #1.

"34. God loves you because of who God is, not because of anything you did or didn't do."

So does Mickey Mouse. See #8.

"36. Growing old beats the alternative -- dying young."

So long as you make something of it. Young Anne Frank lived a more inspired life than her elder, Adolf Hitler.

"38. All that truly matters in the end is that you loved."

All that truly matters in the end is that, when faced with doing what is right and what is easy, that you picked doing what's right when it mattered. To say that you loved and therefore you did what matters ignores the reality of doing what is right by those you love.

"39. Get outside every day. Miracles are waiting everywhere."

Fresh air is a more likely outcome than a miracle. See #1. In other news, fresh air is way under-rated and miracles are way over-rated.

"40. If we all threw our problems in a pile and saw everyone else's,we'd grab ours back."

Mathematically, this makes no sense. On average (by definition) everyone's problems are equivalent. The distribution of problems, on the other hand, are typically disproportionately laid at the feet of the poor. So be thankful for what you've got, and minimize the extent that your life contributes to problems for others.

As Voltaire put it, "we must tend to our gardens"... that is, optimism is better met with pragmatism.

"42. The best is yet to come."

... so long as you continue to make opportunities for yourself, and avail yourself of them when they appear. Too many people peak too early and then check out of life, figuratively or literally.

"43. No mat ter how you feel, get up, dress up and show up."

... unless what you have is contagious. In which case, stay in bed, get lots of rest, and drink lots of fluid. See #40.

"44. Yield."

...unless the sign says "Stop". Otherwise, your insurance premiums might go up.

"45. Life isn't tied with a bow, but it's still a gift."

Life is more like a bank account. Invest in it, and you'll see it grow. Neglect it and you'll find that when you need to make a withdrawal, there's nothing there to count on.

The email continues with a made up statistic (like her age of "90", which the original article doesn't contain), that "It's estimated that 93% of people who receive this email won't forward it." and to keep the subject line of "I'm in the 7%".

Allow me to retort with my own statistic. "It is estimated that 100% of statistics that start with the passive voice of It is estimated are completely made up, just like this one. Otherwise, real statistics require a source or an attribution, and a statistically relevant sample size to add veracity to their claims."


Name/Blog: Tim
Title: Love the flowchart!
Comment/Excerpt: I get lots of forwards and my first activity, for anything that is not just "Funny" is to check it with or similar, which usually results in me trying to decide whether I should tell whomever sent it to me that the thing is a hoax... I may end up sending a link to this chart instead. :)

Name/Blog: Tim
Title: Heh...
Comment/Excerpt: I didn't bother reading the original (seen too many like it) but I like some of your revisions. 43 and 44 made me laugh, and 17 makes me want to get back on cleaning my garage. :) Interestingly, the first reCAPTCHA word for posting this is "Adolf."

One Perspective on North Korea

In his book, "Outliers, The Story of Success", Malcolm Gladwell argues that one of the reasons that Korean Air Lines had such a dismal safety record in the 1990s and prior was the Korean cultural deference to authority implicit in the Korean language (which apparently has six different levels of hierarchy). (In the intervening time, Korean pilots are now expected to converse in English, and the safety record of Korean airlines has normalized).

To be sure, there are many criticisms of Gladwell's observation, and I'm equally skeptical that the single shift from Korean to English in the cockpit is a principal, or even secondary, reason for the improvement (at the same time the Koreans underwent a shift to English in the cockpit, they employed a sweeping set of changes in training and certification as well).

Still, to me it's an intriguing question... Could language be a key reason for socio-political norms? Take, for example, one of the most successful transitions from east-to-westernization, Turkey. After the war of Turkish independence which simultaneously pushed out the Western allies and the old norms of the Ottoman Empire, Ataturk practically singlehandedly transformed Turkey into the best example (by my estimation) of a muslim Western democracy.

Part of this transformation was the repudiation of many Arabic words in favor of their Turkish ones. And certainly a major part of it was the rejection of the Arabic alphabet in favor of a modified Latin one. Today Turkey remains the a key Western ally whose democracy is comprised of a 97% sunni muslim populace. Coincidence?

Perhaps, but I for one am a little hesitant to dismiss so quickly the influence that language has on our culture. I suspect that properties of our languages, from flexibility to ease of learning, the cultural morays that they often exhibit, and the emotions that are conveyed when reading, writing or speaking them likely have a far greater influence on our modern world than we give them credit for.

Wed, 27 May 2009

iPhone CSS Enabled

Those of you who occasionally read my blog using an iPhone will be pleasantly surprised to note that my blog now displays a custom stylesheet for your convenience.

The iPhone has a much smaller screen than a desktop, and as a result can't display the full content of a standard web page like my blog in a large enough font for comfortable reading without scrolling the content.

By disabling some of the peripheral blog content (such as the Archives, About, Colophon, License blocks, etc.) there is more screen real estate available on the iPhone for showing full screen blog posts.

Technically, the implementation is pretty easy. You need a custom CSS definition for the iPhone, and a custom meta CSS header that serves this CSS definition to iPhones to tweak the UI.

The bottom line is a more convenient iPhone reading experience, particularly in landscape mode.

If you notice any anomalies, please drop me a line.

Wed, 13 May 2009

Region Info Test

Every so often I like to sharpen my coding skills by writing a simple proof of concept.

My latest effort combines a publicly available geographic/IP address database with a simple web service that takes an IP address (like the one you're using to read this), and returns a JSON result of the city/zip/country/latitude/longitude.

I can then use this object to dynamically include your geographic access details here in this blog post.

For example:

Neat, huh?

Of course, the reliability of this service is subject to the IP database's accuracy, and the logical topography of how your IP address is routed over the Internet. I'd appreciate some feedback from my readers on just how accurate, if at all, the database and your internet topology is to your actual location. Feel free to post in the comments, or drop me a line.

Name/Blog: Jeff
Title: Close
Comment/Excerpt: Hey, Khan. This is sweet, but unsettling. I thought I was anonymous on the interwebs!? I'm at work in Bellingham, with your utility placing me in Burlington. That's a 30-minutes drive.

Name/Blog: Usha
Title: Exact ciy and state
Comment/Excerpt: I got my city and state

Name/Blog: Maelyn
Comment/Excerpt: one city over!

Sun, 03 May 2009

Google's 404 Handler

With my recent updating of my URL structure, I also took advantage of Google's 404 handler service.

The way it works is pretty simple. You enable a custom 404 handler in your web server (in apache, there is a ErrorDocument directive, see your web server docs if you use something else), and point it to a static HTML page. Here's mine: 404.html.

The Apache directive looks like this: ErrorDocument 404 404.html

Next, into this static HTML, you add a reference to a javascript file at Google. When your server encounters a 404, it will trigger Google to do a search for terms in the URL against the index that Google has for your site, and offer a "closest match" if it can find one.

Google's code looks like this: <script type="text/javascript"> var GOOG_FIXURL_LANG = 'en'; var GOOG_FIXURL_SITE = ''; </script> <script src="" type="text/javascript" ></script>
Now, should an old or incorrect link refer to you, the 404 handler will give them a search to find a better page. For example, there is no /carson link at my site, but here's what you get if you try: carson.

Takeaways? First, any self-respecting website should have custom error pages, even if they are static. Second, Google has a helpful utility that can help your site visitors find what they're looking for and it's a simple copy, paste, edit away from your site too.

Wed, 29 Apr 2009

Microsoft Proves My Point

Microsoft's newest "Sheila" Laptop Hunters ad continues to provide a warped view of the PC shopping experience.

Here's how Sheila was apparently led astray.
  • Sheila says that portability is "super important", but then she picks a laptop that weighs over 7 lbs. (The Mac is a svelte 5.5 lbs)
  • She rejects the Mac because it "only has 2GB of RAM". For $99 more, Apple sells a 4GB model. Sheila is serious about video editing and portability, but $99 is too much to spend to get it?
  • It's questionable if the 4GB memory configuration on the laptop she bought is actually usable particularly if the version of Vista is the 32-bit version.
  • Even then, it's slower DDR2 RAM as opposed to the DDR3 RAM in the Mac
  • The only "quick ship" (I read that to mean "retail boxed") configuration from HP has a display resolution of 1366x768.
  • At that resolution, a MacBook is available for $1,973 including Final Cut Express with similar specs of the PC she bought. (The comparable HP would be at least $1,468.99, plus the cost of a comparable video editing package to Final Cut Express)

Can you get a comparable PC video editing package for under $500? Undoubtedly. But your work is far from done because price is only one dimension of the equation. You still need to answer a ton of technical questions (that are far simpler on the Mac aisle), which, even if they are favorable for the PC, require time to research and investigate.

Start by visiting the store, and write down every single model number for the ones with attractive pricing. Next, identify what version of Windows each one ships with (remember: Anything less than Vista 64-bit edition means you can't use RAM > 3GB). Then, fire up a browser, and begin the spreadsheet. DDR3 RAM? CPU speed? Display resolution density? Backup software? Antivirus subscription (tax) cost? Battery life? Weight?

When all is said and done, this task will take any thorough buyer several hours, at which point you can return to the store and compare the details that don't show up online. Flimsy keyboard? Cheap plastics? Pick it up with one hand, does it flex or is it solid? Layout of ports? Clamshell performance? Wake up time from sleep?

The experience in the other aisle is much simpler. Walk in, compare your needs and your budget to a simple and consistent product lineup, and find the Mac most suited to the intersection of your needs and your wallet.

Walk out knowing confidently that you got what you paid for, and spend the time you saved doing all that research using your new computer to produce something of value instead of downloading specs of a half dozen PCs, a handful of which you will never end up buying.

Sat, 25 Apr 2009


I'm a fan of computer science history (my favorite CS artifact is probably "As We May Think" by Vannevar Bush), but I'm surprised to find out how many people have no idea what the oldest version of Unix is.

Some people think Unix is less than 40 years old, when in fact, it is much, much older than that.

While the originals have been destroyed, I uncovered a 132-column printout (on green-white form feed paper) of the following transcript which is evidence of the true origins of not only the oldest version of Unix, but the very origins of the Universe.

Lest you think I exaggerate, read on.
universe login: god
Password: *******

Welcome to Universix 7.7.7
Jan 01 0000
# mknod heavens
# mknod earth
# touch light
# ls -l light
-rw-r--r--   1 lord     root           0 Jan 01  0000 light
# wall
light is good
Broadcast Message from god@universe
	(/dev/ttyp1) at 0:01 ...
# mv /darkness/light /light
# ln -s light day
# ln -s darkness night
# logout

universe login: god
Password: ********
Welcome to Universix 7.7.7
Jan 02 0000
# mknod expanse between the waters to separate water from water
mknod: too many arguments
# mknod sky
# logout

universe login: god
Password: ********
Welcome to Universix 7.7.7
Jan 03 0000
# mknod water under the sky be gathered to one place, and let dry ground
mknod: too many arguments
# mknod land
# ln -s gathered_waters seas
# wall
land and sees are good
Broadcast Message from god@universe
	(/dev/ttyp1) at 0:01 ...
# mknod land produce vegetation: seed-bearing plants and trees on the land
that bear fruit with seed in it, according to their various kinds
mknod: too many arguments
# touch seed
# cat seed > fruit
# cat fruit > trees
# touch seed-bearing_plants
# cat seed-bearing_plants trees > vegetation
# cat vegetation > /dev/land
# wall
vegetation, seed-bearing plants and trees and fruit are good
Broadcast Message from god@universe
	(/dev/ttyp1) at 0:02 ...
# logout

universe login: god
Password: ********
Welcome to Universix 7.7.7
Jan 04 0000
# mknod lights in the expanse of the sky to separate the day from the
night, and let them serve as signs to mark seasons and days and years, and
let them be lights in the expanse of the sky to give light on the earth.
mknod: too many arguments
# mknod night
# mknod seasons
# mknod days
# mknod years
# mknod sun
# mknod moon
# wall
night, seasons, days, years, sun and moon are good
Broadcast Message from god@universe
	(/dev/ttyp1) at 0:01 ...
# logout

universe login: god
Password: ********
Welcome to Universix 7.7.7
Jan 05 0000
# mknod water teem with living creatures, and let birds fly above the earth
across the expanse of the sky
mknod: too many arguments
# mknod living_creatures
# mknod birds
# wall
living_creatures and birds are good
Broadcast Message from god@universe
	(/dev/ttyp1) at 0:01 ...
# bless living_creatures birds
bless: command not found
# chmod 777 living_creatures birds
# write living_creatures

Message from god@universe on ttyp1 at 0:02 ...
Be fruitful and increase in number and fill the water in the seas, and let
the birds increase on the earth.
# write birds
Message from god@universe on ttyp1 at 0:02 ...
Be fruitful and increase in number and fill the water in the seas, and let
the birds increase on the earth.
# logout

universe login: god
Password: ********
Welcome to Universix 7.7.7
Jan 06 0000
mknod the land produce living creatures according to their kinds:
livestock, creatures that move along the ground, and wild animals, each
according to its kind
mknod: too many arguments
# touch livestock
# touch creatures
# touch wild_animals
# cat livestock creatures wild_animals > /dev/land
# wall
livestock, creatures, and wild_animals are good
Broadcast Message from god@universe
	(/dev/ttyp1) at 0:01 ...
# bless livestock creatures wild_animals
bless: command not found
# chmod 777 livestock creatures wild_animals
# wall
Be fruitful and increase in number and fill the water in the seas, and let
the birds increase on the earth
Broadcast Message from god@universe
	(/dev/ttyp1) at 0:01 ...
# adduser man in our image, in our likeness, and let them rule over the
fish of the sea and the birds of the air, over the livestock, over all the
earth, and over all the creatures that move along the ground
too many arguments
# adduser
Adding a new user. The username should not exceed 8 characters
in length, or you may run into problems later.

Enter login name for new account (^C to quit): man

Editing information for new user [man]

Full Name: Man
GID [100]:
Group 'users', GID 100
First unused uid is 100

UID [100]:

Home Directory [/earth/man]:

Shell [/bin/sh]:

Password [man]: ******

Information for new user [man]:
Home directory: [/earth/man] Shell: [/bin/sh]
uid: [100] gid: [100]

Is this correct? [y/N]: y

User [man] added
# chown fish man
# chown birds man
# chown livestock man
# chown earth man
# chown creatures man
# bless man
bless: command not found
# chmod 777 man
# write man

Message from god@universe on ttyp1 at 0:02 ...
Be fruitful and increase in number; fill the earth and subdue it. Rule over
the fish of the sea and the birds of the air and over every living creature
that moves on the ground
# write man
Message from god@universe on ttyp1 at 0:03 ...
I give you every seed-bearing plant on the face of the whole earth and
every tree that has fruit with seed in it. They will be yours for food. And
to all the beasts of the earth and all the birds of the air and all the
creatures that move on the ground--everything that has the breath of life
in it--I give every green plant for food.
# wall
man is good
Broadcast Message from god@universe
	(/dev/ttyp1) at 0:01 ...
# logout

universe login: god
Password: ********
Welcome to Universix 7.7.7
Jan 07 0000

# rest
rest: command not found
# logout

universe login: god
Password: ********
Welcome to Universix 7.7.7
Jan 08 0000
# mv /earth/man /earth/eden
# ls -l /earth/eden
total 0
# mv /earth/eden /earth/man
# mkdir /earth/eden
# mv /earth/man /earth/eden
# ls -l /earth/eden
drwxr-xr-x   3 man    users        1024 Jan  6 00:01 man
drwxr-xr-x   3 god    users        1024 Jan  6 00:01 garden
# write man
You are free to eat from any tree in the garden; but you must not eat from
the tree of the knowledge of good and evil, for when you eat of it you will
surely die.
# echo "It is not good for the man to be alone. I will make a helper
suitable for him"
It is not good for the man to be alone. I will make a helper suitable for him
# touch /etc/nologin
# mv /earth/eden/man/rib /earth/eden/woman
# rm /etc/nologin
Message from man@universe on ttyp2 at 8:00 ...
This is now bone of my bones and flesh of my flesh; she shall be called
`woman' for she was taken out of man.
# finger man
Login: man                              Name: man
Directory: /earth/eden/man                     Shell: /bin/sh
On since Sat Jan 06 14:16 (ET) on ttyp2 from
   1 second idle
No mail.
No Plan.
# write man
Where are you?
Message from man@universe (ttyp2):
I heard you in the garden, and I was afraid because I was naked; so I hid.
# write man
Who told you you were naked? Have you eaten from the tree that I commanded
you not to eat from?
Message from man@universe (ttyp2):
The woman you put here with me--she gave me some fruit from the tree, and I
ate it.
# write woman
What is this you have done?
Message from woman@universe (ttyp3):
The serpent deceived me, and I ate.
# write serpent
Because you have done this, cursed are you above all the livestock and all the
wild animals! You will crawl on your belly and you will eat dust all the
days of your life. And I will put enmity between you and the woman, and
between your offspring and hers; he will crush your head, and you will
strike his heel.
# write woman
I will greatly increase your pains in childbearing; with pain you will give
birth to children. Your desire will be for your husband, and he will rule
over you.
# write man
Because you listened to your wife and ate from the tree about which I
commanded you, `You must not eat of it,' "Cursed is the ground because of
you; through painful toil you will eat of it all the days of your life. It
will produce thorns and thistles for you, and you will eat the plants of
the field. By the sweat of your brow you will eat your food until you
return to the ground, since from it you were taken; for dust you are and to
dust you will return.
# touch skin
# mv skin clothes
# mv skin /earth/eden/man
# touch skin
# mv skin clothes
# mv skin /earth/eden/woman
# wall
The man has now become like one of us, knowing good and evil. He must not
be allowed to reach out his hand and take also from the tree of life and
eat, and live forever.
Broadcast Message from god@universe
	(/dev/ttyp1) at 0:01 ...
# mv /earth/eden/man /earth/
# mv /earth/eden/woman /earth/
# chmod 000 /earth/eden
# cherubimd --sword=flaming --direction=flashing_back_and_forth --dir /home/eden
Cherubimd started, protecting Eden.
# logout

universe login: god
Password: ********
Welcome to Universix 7.7.7
Jan 09 0000
You have new mail.
# mail
Message from:
Dear God: I have placed fat portions of some of the firstborn of my flock
on /dev/altar. Do as you please with them.

Your servant, Abel.
# chmod 777 /earth/abel
# logout

universe login: god
Password: ********
Welcome to Universix 7.7.7
Jan 10 0000
You have new mail.
# mail
Message from:
Why did you not bless me? You did not look with favor upon me and my offering?
Signed, Cain.
# finger cain
Login: cain                             Name: cain
Directory: /earth/cain                  Shell: /bin/sh
On since Sat Jan 06 08:16 on ttyp4 from
No mail.
No Plan.
# write cain
Why are you angry? Why is your face downcast? If you do what is right, will
you not be accepted? But if you do not do what is right, sin is crouching
at your door; it desires to have you, but you must master it.
# logout

universe login: god
Password: ********
Welcome to Universix 7.7.7
Jan 11 0000
# who
god     ttyp1    Jan 10 8:26 (
adam    ttyp2    Jan 10 8:42 (
eve     ttyp3    Jan 10 9:23 (
cain    ttyp4    Jan 10 13:24 (
# write cain
Where is your brother Abel?
Message from cain@earth (ttyp4):
I don't know, am I my brother's keeper?
# write cain
What have you done? Listen! Your brother's blood cries out to me from the
ground. Now you are under a curse and driven from the ground, which opened
its mouth to receive your brother's blood from your hand. When you work the
ground, it will no longer yield its crops for you. You will be a restless
wanderer on the earth.
Message from cain@earth (ttyp4):
My punishment is more than I can bear. Today you are driving me from the
land, and I will be hidden from your presence; I will be a restless
wanderer on the earth, and whoever finds me will kill me.
# write cain
Not so; if anyone kills Cain, he will suffer vengeance seven times over.
# chmod 666 /earth/cain
# logout

... some time passes ...

universe login: god
Password: ********
Welcome to Universix 7.7.7
# wall
My spirit shall not always strive with man, for that he also is flesh: yet
his days shall be an hundred and twenty years.
Broadcast Message from god@universe
	(/dev/ttyp1) at 0:01 ...
# wall
I will destroy man whom I have created from the face of the earth; both
man, and beast, and the creeping thing, and the fowls of the air; for it
repenteth me that I have made them.
Broadcast Message from god@universe
	(/dev/ttyp1) at 0:01 ...
# ls -l /home/earth/noah
drwxr-xr-x   3 noah    users        1024 Jan  6 00:01 noah
# ls -l /home/earth/
... violence, evil, corruption ...
# finger noah
Login: noah                             Name: noah
Directory: /earth/noah                  Shell: /bin/sh
On since 08:11 on ttyp11 from
No mail.
No Plan.
# write noah
The end of all flesh is come before me; for the earth is filled with
violence through them; and, behold, I will destroy them with the earth.
Make thee an ark of gopher wood; rooms shalt thou make in the ark, and
shalt pitch it within and without with pitch. And this is the fashion which
thou shalt make it of: The length of the ark shall be three hundred cubits,
the breadth of it fifty cubits, and the height of it thirty cubits. A
window shalt thou make to the ark, and in a cubit shalt thou finish it
above; and the door of the ark shalt thou set in the side thereof; with
lower, second, and third stories shalt thou make it.
And, behold, I, even I, do bring a flood of waters upon the earth, to
destroy all flesh, wherein is the breath of life, from under heaven; and
every thing that is in the earth shall die. But with thee will I establish
my covenant; and thou shalt come into the ark, thou, and thy sons, and thy
wife, and thy sons' wives with thee. And of every living thing of all
flesh, two of every sort shalt thou bring into the ark, to keep them alive
with thee; they shall be male and        female. Of fowls after their kind,
and of cattle after their kind, of every creeping thing of the earth after
his kind, two of every sort shall come unto
thee, to keep them alive. And take thou unto thee of all food that is
eaten, and thou shalt gather it to thee; and it shall be for food for thee,
and for them.
# write noah
Come thou and all thy house into the ark; for thee have I seen righteous
before me in this generation. Of every clean beast thou shalt take to thee
by sevens, the male and his female: and of beasts that are not clean by
two, the male and his female. Of fowls also of the air by sevens, the male
and the female; to keep seed alive upon the face of all the earth. For yet
seven days, and I will cause it to rain upon the earth forty days and forty
nights; and every living substance that I have made will I destroy from off
the face of the earth.
# logout

universe login: god
Password: ********
Welcome to Universix 7.7.7
# ls -l /earth
... violence, evil, corruption ...
# cat /dev/ark
... two of each unclean animal, seven of each clean animal, and seven of
birds and fowl, noah's family, etc...
# rm -rf /earth/*
# logout

universe login: god
Password: ********
Welcome to Universix 7.7.7
# write noah
Go forth of the ark, thou, and thy wife, and thy sons, and thy sons' wives
with thee. Bring forth with thee every living thing that is with thee, of
all flesh, both of fowl, and of cattle, and of every creeping thing that
creepeth        upon the earth; that they may breed abundantly in the
earth, and be fruitful, and multiply upon the earth.
# logout

universe login: god
Password: ********
Welcome to Universix 7.7.7
You have new mail.
# mail
Message from noah@earth:
Dear God:
I have done as you asked, and I have built an altar unto you, upon which I
have given thee burnt offerings, and I trust thou wilst find them to be of
sweet savour.
Yours truly,
# wall
I will not again curse the ground any more for man's sake; for the
imagination of man's heart is evil from his youth; neither will I again
smite any more every thing living, as I have done. While the earth
remaineth, seedtime and harvest, and cold and heat, and summer and winter,
and day and night shall not cease.
Broadcast Message from god@universe
	(/dev/ttyp1) at 0:01 ...
# bless noah and all his sons
bless: command not found
# chmod 777 /earth/noah
# chmod 777 /earth/shem
# chmod 777 /earth/ham
# chmod 777 /earth/japheth
# wall
Be fruitful, and multiply, and replenish the earth. And the fear of you and
the dread of you shall be upon every beast of the earth, and upon every
fowl of the air, upon all that moveth upon the earth, and upon all the
fishes of the sea; into your hand are they delivered. Every moving thing
that liveth shall be meat for you; even as the green herb have I given you
all things. But flesh with the life thereof, which is the blood thereof,
shall ye not eat. And surely your blood of your lives will I require; at
the hand of every beast will I require it, and at the hand of man; at the
hand of every man's brother will I require the life of man. Whoso sheddeth
man's blood, by man shall his blood be shed: for in the image of God made
he man. And you, be ye fruitful, and multiply; bring forth abundantly in
the earth, and multiply therein. And I, behold, I establish my covenant
with you, and with your seed after you; And with every living creature that
is with you, of the fowl, of the cattle, and of every beast of the earth
with you; from all that go out of the ark, to every beast of the earth.
And I will establish my covenant with you, neither shall all flesh be cut
off any more by the waters of a flood; neither shall there any more be a
flood to destroy the earth. This is the token of the covenant which I make
between me and you and every living creature that is with you, for
perpetual        generations: I do set my bow in the cloud, and it shall be
for a token of a covenant between me and the earth. And it shall come to
pass, when I bring a cloud over the earth, that the bow shall be seen in
the cloud: And I will remember my covenant, which is between me and you and
every living creature of all flesh; and the waters shall no more become a
flood to destroy all flesh.
And the bow shall be in the cloud; and I will look upon it, that I may
remember the everlasting covenant between God and every living creature of
all flesh that is upon the earth. This is the token of the covenant, which
I have established between me and all flesh that is upon the earth.
Broadcast Message from god@universe
	(/dev/ttyp1) at 0:01 ...
# logout

universe login: god
Password: ********
Welcome to Universix 7.7.7
Unable to allocate memory for stack
Out of disk space.
# df
Filesystem         1024-blocks  Used Available Capacity Mounted on
/dev/sda1            1921678  507612  1314738     28%   /
/dev/sdb1            4026924 4026924        0    100%   /earth
# du -s /earth/* | sort -n | tail -1
3920499      tower
# ls -l /earth/tower
-rw-r--r--   1 men    users           3094 Aug 28  0001 babel
# ls -l /earth/tower/babel
-rw-r--r--   1 men    users        3920499 Aug 28  0001 tower
# wall
Behold, the people is one, and they have all one language; and this they
begin to do: and now nothing will be restrained from them, which they have
imagined to do. Go to, let us go down, and there confound their language,
that they may not understand one another's speech.
Broadcast Message from god@universe
	(/dev/ttyp1) at 0:01 ...
# rm -rf /earth/tower
# mkdir /earth/a
# mv /earth/a* a
mv: cannot move a to a.
# mkdir /earth/b
mv: cannot move b to b.
... and so on ...
# logout

universe login: god
Password: ********
Welcome to Universix 7.7.7
# finger abraham
Login: abraham                               Name: cain
Directory: /earth/a/abraham                  Shell: /bin/sh
On since Wed Jan 01 11:12 on ttyp4 from
No mail.
No Plan.
# write abraham
Get thee out of thy country, and from thy kindred, and from thy father's
house, unto a land that I will show thee: And I will make of thee a great
nation, and I will bless thee, and make thy name great; and thou shalt be a
blessing: And I will bless them that bless thee, and curse him that curseth
thee: and in thee shall all families of the earth be blessed.
# write abraham
Unto thy seed will I give this land
# logout

universe login: god
Password: ********
Welcome to Universix 7.7.7
You have new mail.
# mail
Message from abraham@earth:
Dear God:
I have done as you asked. I have also built several temples unto thee. Also
I am going to Egypt with my most fine wife. Alas, since the Egyptians are
perverts and scoundrels they will kill me if they know that my wife is she.
Therefore I will introduce her as my sister, and thus I will spare being
killed by the Pharaoh and his men.
Yours truly,
# ps axwu | grep pharaoh
pharaoh     12300  0.0  1.6  1692  1036  p2 S     13:52   0:01 -bash
pharaoh     24909  0.0  0.4   908   312  p2 S     17:16   0:00 sex -partner=sarai
# plague pharaoh
plague: command not found
# echo "logout" > /earth/pharaoh/.login
# logout

Fri, 24 Apr 2009

This post brought to you by Coda

As faithful readers of my blog already know, I use Blosxom as my blogging software. Thanks to the gracious hosting offered by my friend Richard, my blog resides behind a firewall and my only access to it is via a VPN.

In some ways I'm kind of old-school when it comes to maintaining my personal web site (my favorite editor is vi), but I'm also fairly new-century too, what with my preference for "all things Mac". Sometimes I straddle an uneasy fence... I don't use "xv" to manage my photo library, and I don't use "mutt" to read my email (thanks, and!). But I also can't stand the clumsy FTP clients on the Mac like Transmit and what not.

It's simple enough for me to break out ftp (1):
% ftp
Connected to
220 XxFtpd FTP Server
331 Password required.
230 User logged in.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> |
Now I need to create the files locally, then transfer them over.

So, sometimes, I simply prefer to log into the server and edit the files locally.
% ssh
$ vi .blog/coda.txt
Coda might just change all that. True, it isn't vim-like, but what it does do fairly transparently is to make editing remote blog entries on the server painless. No local text files to write and publish, no shells to open to the remote host to edit with screwed up termcap entries (which apparently get bungled up by either or by my Unix shell on the remote box-- I don't care, mostly because I shouldn't have to).

If you haven't heard about it yet, check it out. If it's good enough to make me consider leaving vi behind because of its other conveniences, it might be worth looking at.

Name/Blog: Tim
Title: MacFUSE
Comment/Excerpt: I haven't installed this yet, but there's a lot of buzz around it, and I think my OpenSuSE installation uses it. The reason I mention it is that, in Nautilus (on OpenSuSE) I can give it an address of "ssh://" and it shows my files. Double-click, edit, run or whatever. It acts like net-mounted drive, but it's all done over SSH.

Name/Blog: Tim
Title: Blinking cursor...
Comment/Excerpt: ...nice touch. :)

Name/Blog: Khan
Comment/Excerpt: Glad you liked it. :)

Sun, 19 Apr 2009

Blog Housekeeping

One of the side effects of moving my blog to a new server is that some of my old URLs broke.

Specifically, some of my date-based URIs no longer map to any articles because the way that my blog software extrapolates the YYYY/MM/DD URIs was dependent on reading the timestamp of the files.

With the new server I run being in the Pacific timezone, and the previous ones in Mountain timezone, any blog posts I made near the end of the day ended up shifting back a day.

So I used this excuse to clean up my blog URIs. Blog title links should make it easier to permalink to a specific post (i.e. /blog/bloghousekeeping/), or to a specific year (/blog/2009/), month (/blog/2009/04/), or date's (/blog/2009/04/14/) posts.

I still have some work to do to implement Google's "canonical" tag (thanks to Vanessa Fox for pointing this out to me), but my URL structure is already quite a bit cleaner.

Mon, 13 Apr 2009

New Hosting Provider

Over the weekend I moved and a few other sites I maintain over to a new hosting provider.

While the old hosting provider (GoDaddy) was an "OK" web host, (my main beef with them was that all of the administrative emails to manage my domain were never getting to me because they insisted that they needed to point their MX to a CNAME to scale up their servers to send "billions of emails a day", which I can guarantee you is a gross overestimation of the amount of email they have to send, and begs the question about why it's "required").

They told me I needed to convince my email provider to accept email from domains who point their MX to a CNAME. I pointed them to RFC 2181, but apparently RFCs are just "a lot of simple tricks and nonsense", not anything that domain registrars are expected to know, not to mention follow.

So within a few days my domains were moved to, and my websites remained at GoDaddy where a friend was graciously hosting them.

The Web hosting, I don't think, wasn't too shabby, but we were likely on one of GoDaddy's entry level virtual server hosting plans that only had 256MB of dedicated RAM assigned.

Now, 256MB of RAM is probably plenty, except the denizens of the hosting platform were heavily depending on MySQL, Apache, and PHP-based blogs. Your classic LAMP stack, but on very limited RAM.

My new hosting provider is They use the Xen "paravirtualization" package to create their virtual instances, and each node has a minimum of 360MB of RAM, 12GB of storage, and 200GB of bandwidth each month. They're not the cheapest, but their website is one of the clearest, most straightforward I have seen. They have a great support/wiki section, and their admin console to start up your Linode is pretty straight forward.

Since I don't rely on any databases to serve my blog (the biggest "application" on my site), the principal consumer of resources will be apache, and 360MB is plenty sufficient for that, as is the disk space, and network bandwidth, but they have bigger instances you can buy if your needs exceed the basic plan.

Set up was a snap, moving the data was the most time consuming part of the affair. After verifying the site worked with nearly zero modifications (+XBitHack had to be turned off for the default Apache 2.0 install in one of my .htaccess files), I moved the IP address over and my sites were migrated after a quick manual regression. I monitored my log files, and before long I was convinced everything had gone quite smoothly.

So far, the administration console, dedicated virtual private server, Xen setup and administration, as well as the helpful staff on the Linode IRC channel, have all been to or exceeding my expectations.

So far, two thumbs up! If you are in the market for some virtual hosting, and use the link above to get there, I'll get a $20 credit on my bill.

Sun, 12 Apr 2009

An Idea For A Startup You're Welcome To Steal

Unless you've been living under a rock, you've heard of Twitter.

Here's an idea for a startup. Basically, clone Twitter. Down to every last detail... except, instead of limiting it to 140 character twits, reduce it down to 1 bit.

Now, everyone you're following will either be a "1" or a "0".

What to call this startup? "Bitter", of course.

P.S. I've been one of those people who "don't get it", but have decided it's time to trade in my bifocals and geriatric creams and sign up for an account. Follow me @khanklatt.

I'm (NOT) A PC

I've been watching the Microsoft "Laptop Buyers" ads with some interest.

They highlight all that is wrong with computer shopping on the other side of the aisle. When buying a Mac, it's sufficient to simply decide on your budget, then select the laptop that best fits your needs. You're not getting shafted by some marketing guy who decided to design the computer components to look better next to some other clone.

For example, you can't buy a computer screen larger than 15" from Apple that has a resolution less than 1440x900 pixels. Yet the computer than Giampaolo bought is a 16" (!) laptop with a resolution of 1366x768 pixels! The Mac has 30% more pixels (screen real estate) on a 1" smaller monitor.

Why is that? Because HP markets its laptops on screen size, because consumers like Giampaolo are sheep to whom 16" > 15", even though clearly 1.0M pixels < 1.3M pixels.

Need another example about how you get shafted as a PC buyer in the store? Well, take for example, the fact that Giampaolo bought a computer with 4GB of memory. Now for the trick question: Will Giampaolo be able to use all 4GB? I don't know, but here's Microsoft's website you can check to find out.

Microsoft admits this is the case:
"to avoid potential driver compatibility issues, the 32-bit versions of Windows Vista limit the total available memory to 3.12 GB"
So, when you're shopping for a PC with 4GB or more memory, how can you tell if it will actually be able to use all that memory? Microsoft is happy to tell you:
For Windows Vista to use all 4 GB of memory on a computer that has 4 GB of memory installed, the computer must meet the following requirements:
* The chipset must support at least 8 GB of address space. Chipsets that have this capability include the following:
o Intel 975X
o Intel P965
o Intel 955X on Socket 775
o Chipsets that support AMD processors that use socket F, socket 940, socket 939, or socket AM2. These chipsets include any AMD socket and CPU combination in which the memory controller resides in the CPU.
* The CPU must support the x64 instruction set. The AMD64 CPU and the Intel EM64T CPU support this instruction set.
* The BIOS must support the memory remapping feature. The memory remapping feature allows for the segment of system memory that was previously overwritten by the Peripheral Component Interconnect (PCI) configuration space to be remapped above the 4 GB address line. This feature must be enabled in the BIOS configuration utility on the computer. View your computer product documentation for instructions that explain how to enable this feature. Many consumer-oriented computers may not support the memory remapping feature. No standard terminology is used in documentation or in BIOS configuration utilities for this feature. Therefore, you may have to read the descriptions of the various BIOS configuration settings that are available to determine whether any of the settings enable the memory remapping feature.
* An x64 (64-bit) version of Windows Vista must be used.
Are we clear? So go on out there, and shop with confidence, PC users! Just make sure you ask your salesperson whether or not the BIOS supports memory remapping. After all, as Microsoft itself admits, "Many consumer-oriented computers may not support the memory remapping feature. No standard terminology is used in documentation or in BIOS configuration utilities for this feature. Therefore, you may have to read the descriptions of the various BIOS configuration settings that are available to determine whether any of the settings enable the memory remapping feature."

Of course, there is the alternative. The alternative where the hardware was designed for the software it's running. The alternative where the product is designed by people who use the products, instead of trying to fool the consumer into buying an HP instead of an Acer by buying the biggest, cheapest, lowest-possible resolution so that you can appear a little more attractive to the buyer who doesn't know that PC designers are trying to find ways of cutting costs (and thus features) to attract consumers.

True, the alternative might cost a little more, but when you compare apples to Apples, the cost dips significantly.

If you know a Intel 975X chipset from a Intel P965 chipset, if you know to reboot the PC at Fry's or Best Buy into the BIOS to find out if it supports memory remapping, if you know the difference that DDR3 memory makes over DDR2 (a cheaper, slower type of RAM found on many PCs designed to look attractive in the store), then go on out and get a PC.

Otherwise, declare yourself a Mac, and buy with confidence that you're getting what you paid for.

Tue, 24 Feb 2009

Dumbest Ad Ever

The "American Issues Project" is running one of the dumbest ads I've heard in a long time. It's a criticism of the stimulus package, and it tries to shock people into thinking that somehow $800 billion is a huge number to get our economy on track. Here's how they paint it:
"Congress just spent nearly $800 billion of your money. How much is that? Well, suppose you spent $1 million every single day from the day Jesus was born. $1 million a day for 2000 years. You wouldn't have spent more money than Congress just did."
Well let's see here. So their point seems to be:
2000 years * 365 days/year * $1M/day = a lot of money ($7.33B)
Let's massage this equation to make it a little more meaningful because I just don't see how Jesus fits into the picture here other than to get some kind of quaint association with "what would Jesus spend"...

Another way of spending $7.33B is to spend that money since the birth of the US. 233 is about 1/9th of the duration of 2000 years, so if you spend $9M/day for 233 years, you end up at the same amount:
233 years * 365 days/year * $9M/day = a lot of money ($7.65B)
And while $9M/day really looks like a big number, let's consider that the population of the United States is over 300 million... So lets gather the per-capita spending based on this "reasoning"...
233 years * 365 days/year * $9M/day / 300,000,000 citizens = $2,551.35
Interesting when you look at it within the scale. Now the amount of money doesn't seem so outrageous does it? So in one fell swoop, to extricate ourselves from the biggest financial crisis we may ever know in our lifetimes, Congress has spent the equivalent of $2,500 per day per citizen alive for every day since the US has existed.

Does that sound unwieldy? It should. Does $2,500/person sound a little less than "$1M/day since Jesus"?

As a concoted figure, it doesn't mean anything. It's like deciding how much to bet on a horse race based on a formula like "number of days in a year * the amount of change in your pocket / the number of cars you've owned * the mileage per gallon of a prius (highway) * your shoe size".

A much more meaningful look at a $800 billion stimulus package is the ratio of this cost to our GDP. Let's start with the intended outcome of the stimulus package. Obama has stated that this stimulus package will create or save 3.5 million jobs. That means our current unemployment rate at 7.6%, with 11.6 million unemployed, would drop to 8.1 million unemployed and a reasonable unemployed rate of 5.3%.

Our GDP is currently $13.8 trillion. On a per capita basis of employed workers (which hovers at around 50%) it is $92,000. In other words, on average, every employed person contributes about $92K to the GDP.

Now, what we are doing is spending roughly $800 billion over two years to get 3.5 million people re-employed or from losing their jobs. In other words, we're spending $228K per unemployed person to get them to contribute $184K to the economy.

At first, this sounds like a bad investment. Why spend $228K to get $184K per person? For one, it fills homes with working families. It raises market confidence and stock prices and personal investments. It keeps the fabric of society healthier by keeping people employed, and probably reduces suicide rates, depression rates, and makes for happier families. But beyond all these intangibles, remember that the combined federal, state, and local government tax rate for most workers is about 40% of income. In other words, $91K of that $228K is going to come back to the government in revenue anyway...

...Not to mention the other benefits, such as modernizing or health care records, saving billions in health care costs, doubling domestic renewable energy over 3 years, reducing our energy consumption by weatherizing and modernizing federal buildings and 1 million homes, investing in our young peoples' futures by funding Pell grants, and cutting taxes on 4 million students, and a huge investment in our infrastructure, which will compound the investment over the next decade (at a ratio of 1:1.6 or so), and cutting taxes and providing tax credits, which tends to have a 1:1 stimulative effect on the economy.

Now, this math isn't near perfect, but it is "order of magnitude" accurate. Much like an estimate that $100 of gas won't get you from Seattle to New York, and that $10,000 is probably too much, $1,000 seems like "on the order of" the right amount to spend.

And based on the logic above, $800 billion is "right sized" to fix the problem we're facing, arguments about $1M/day since the day Jesus was born, notwithstanding.

Sat, 31 Jan 2009

How the US Media Is Failing Us

I suspect that much of my awareness of geopolitical events derives from being exposed to numerous news sources when I was growing up in Turkey. I read the military's Stars & Stripes, my dad's subscription to US News & World Report, as well as Turkish daily newspapers like Hurriyet and Sabah.

In the US, however, your standard run-of-the-mill news sources are very limited and constrained to the most trivial aspects of the news day. Local news, particularly in the mornings, covers weather and traffic for nearly 80% of the news hour. The national networks aren't any better. I follow the news just about every day, but find myself having to actively seek out information about the world that the media simply doesn't cover.

To illustrate my point, here's a quick quiz to see if your news sources are doing a decent job of keeping you up to date with what's going on in the world.

  1. Who is Omar al-Bashir?
  2. Where is the Swat province?
  3. Who is Sheikh Sharif Ahmed?
  4. Who is the President of Zimbabwe?
  5. Where is Antananarivo?
  6. What kind of natural disaster is claiming lives in Australia?
  7. What country's Prime Minister stormed off in the middle of the World Economic Forum in Davos Switzerland?
  8. Which two countries have stationed troops at the Saichen glacier, making it the "fastest melting glacier"?
  9. After ousting the Tamil Tigers from a city they held for 10 years, what country's president urged the rebels to surrender?
  10. What terrorist attack conducted by the terrorist group Lashkar-e-Taiba is colloquially referred to as 26/11?
Deduct one letter grade for each question you don't know the answer to. If you get a C or better (7+ right), please share your news sources in the comment field. If you score less than a C, then watching CNN, ABC, NBC, MSNBC and the like just aren't going to cut it.

Name/Blog: Jason
Title: BBC News
Comment/Excerpt: I prefer to read BBC News and even watch the evening show if I want to see more news than the typical nights of - Breaking News: Obama uses a BlackBerry.

Name/Blog: Khan
Title: Another article about Western Pakistan
Comment/Excerpt: This time a UN employee was kidnapped, and his driver killed during the abduction. This time, south of SWAT province in Balochistan (south of Waziristan).,pakistani-investigators-seeking-clues-on-abducted-un-official.html Another good article for background reading is "Afghanistan, Graveyard of Empires".

Mon, 26 Jan 2009

In Other News, Steve Wozniak Switches To Firefox

a.k.a. "Linux fanboys are funny"

In an interview (that never happened) Steve Wozniak, co-founder of Apple, admitted to switching to Firefox (not really, I'm making this up) from the Apple-produced Safari Web browser.

I'm sure this opening paragraph is titillating Mac fans everywhere.

What? It's not? Are you sure? You are? Hmmm. How could that be?

On Slashdot, "Linus Switches From KDE to Gnome" made the front page, and elicited 770 comments (take my word for it, the article is so un-newsworthy, I'm not going to link to it). On Digg, the same article got 1119 "Diggs"...

So it appears that thousands of Linux users out there care passionately enough about what Linus uses?!

Now, I suppose it's all relative... If Steve Wozniak announced he was going to leave the Mac for Windows, I guess the Mac fanboys (myself included) would be in a tizzy too... But until that day comes, I get to sit back in the cool glow of my Macbook, point at the Linux fanboys who find this kind of news somehow relevant enough to post, to discuss and to debate about, and snicker at them.

Sun, 04 Jan 2009

Flash Photography Explained

I had an aha moment today about Flash photography, and for those budding photographers that want to raise their photo IQ by a few points, I'm going to share my insight.

One golden rule of flash photography is "shutter speed controls your ambient exposure, and aperture controls your flash exposure". I find it edifying to understand "why is that exactly", instead of just following the adage blindly. If you think about it, it actually makes a lot of sense, and I'll delve into this, but first it helps to have a basic understanding of photography.

There are three basic dimensions to gathering light from a camera. The first of these is ISO, or sensitivity of the film/sensor. The higher the ISO, the less light is necessary to capture the image, but film that is so sensitive, and electronic sensors that use higher voltages to detect the light, cause more noise or graininess to enter the fray. Most cameras do fairly well at ISO 400-800, so that's where I recommend most people start. Only when you have an abundance or lack of enough light should you resort to lower/higher ISO settings. The adage with ISO is "the higher you go, the greater the exposure, with more noise in the photograph".

The next is aperture. This setting controls the size of the opening of the lens during the exposure. The wider the opening, the more light you let in. In an extreme example, a pinhole camera has a tiny opening, and because light collected from all corners of the photograph come in from the same miniscule hole, nearly the entire photograph is "in focus". Meanwhile, with a wide aperture, your focusing element controls which part of the photo is in focus because the lens will cause (often a pleasant) blur of light that is not in the focused plane because it is commingled with light coming from other parts of the scene which are focused on the same point on the sensor. The adage with aperture is, "the wider you go, the greater the exposure, with more blur in the photograph".

Finally, is shutter speed. This setting controls how long the sensor is exposed to the light. The faster your shutter, the less likely that any movement in the photo will be blurry, but the less light that will be allowed in. With a slow shutter speed, you can let in a LOT of light (most common photographs use exposures that are fractions of a second) but the greater the chance that any movement will cause blur. The adage with shutter speed is, "the slower you go, the greater the exposure, with more motion blur in the photograph".

The photographer that stumbles into "Manual" mode will struggle with these basic principles, and the tradeoffs they represent.

The landscape (pardon the double entendre) changes, however, when you introduce flash photography into the mix, and to figure out why the adage works, we need to distinguish between the nature of ambient light and flash light.

Ambient light is light that is generally pervasive, and it is continuous. In other words, the light from a streetlamp at night, or the light from the sun at sunset doesn't, for all practical purposes, change in intensity or duration during your typical exposure.

Flash light, on the other hand is typically limited in time, not continuous. Even if you have a long shutter speed (say 3 seconds) a flash only lasts a fraction of a second. So a flash during a 1 second exposure isn't going to net you 1 second of flash-exposed light. You could modulate the amount of flash light you let in by setting your shutter speed to a really fast exposure to limit the duration of the flash that is captured by the camera, but this would have the effect of capturing so little ambient light, that only your subject would be visible-- a technique that is useful for blacking out the background and getting a sharp mask around your foreground subject. In general however, this is why your shutter speed will have little to do with the exposure of the flash. That's why the shutter speed should be set to capture the ambient light. Imagine your photo as just the background. How would you set the shutter speed to capture the scenery?

Once you've answered that question, your flash is going to be used to expose your subject in that scene. To set the relative exposure of your subject to the background, your principal choice (assuming a fixed ISO setting) at this point is your aperture. If you want your subject to be brighter relative to the background, choose a wider aperture, and narrow it if your subject already has enough light.

From the above, however, realize that the wider your aperture, the less depth of field (i.e. more blur outside the area of focus) you will get in your photo. If you're OK with giving up this element of control in your photo, you're set. If you want a brighter subject, and want to maintain a high depth of field (more stuff in focus), then you need to begin investigating advanced flash techniques, such as using off-camera flash, reflecting your flash off of umbrellas, walls, ceilings, or using multiple flashes to get the effect you want.

In general, an amateur photographer can capture interesting photos by giving up control over the depth of field, and simply modulating the relative exposure of foreground (by adjusting the aperture) and the background (by adjusting the shutter) using the built-in flash on their consumer-level SLR or point-and-shoot cameras.

One final note before I leave you to experiment with your cameras-- If you have some ISO headroom to explore and would rather make the sacrifice not in depth of field, but in graininess of the photo, you can bump your camera up from ISO 400, say, to ISO 800. Now, with your sensor twice as sensitive, you can get greater depth of field by halving your aperture... In other words, if you were shooting at 1/8th a second to capture ambient light, and had your aperture set to f/2.8 to capture your subject (with flash) at ISO 400 but found the photograph to be too "soft", you can accept greater noise by going to ISO 800, but now you can shoot at 1/8th a second with your aperture set to f/5.6 with the same flash to get a greater depth of field. Repeat again if you want greater depth-- ISO 1600 and 1/8th a second with aperture now at aperture f/11...

Check back later and I'll try to add some example photographs I've taken to demonstrate these principles. As you can see, photography is often the art of making the right tradeoffs and trying to avoid any significant sacrifices by adjusting your environment or your camera to get the desired effect.

Name/Blog: Tim
Title: Thanks!
Comment/Excerpt: I've been looking for a basic guide to what those three things were and why/when I'd change their settings manually. Nice! This should make playing with my Canon S5 IS a bit more productive. :)

Khan Klatt

Khan Klatt's photo