Monthly Archives: October 2005

How the Heck do they do the NetFlix thing?

Technology in our Everyday Lives

Sometimes, I just want to know what the underlying technology is … when things touch me in my everyday life. Today, I’m thinking about NetFlix. Do they REALLY have huge warehouses all over the country with copies of obscure titles to send to people the same day? Really? Or do they have some agreement with the movie/DVD industry to burn CDs on the fly? Sheesh, only the latter seems reasonable to me.

I mean, come on. I put “The Thin Man” on my queue and it was shipped to me when my previous movie was returned. Now, I don’t really REMEMBER if I only had it there for a day … or a few hours … or whether it had been sitting in my queue for several days. If it had been sitting in my queue for a while, then I can understand … they could look ahead at queues and ship movies to “closer” locations to get them to us faster. But … but … but … it would make SO much more sense to have an agreement to burn the DVDs as needed and toss the movie when it’s returned (if no one else is demanding it).

Hmm, so I went on an internet search to see if there was anything describing how NetFlix is doing what they’re doing. I couldn’t find anything. I would GREATLY appreciate a heads-up if someone sees something somewhere … or if a NetFlix insider wants to blab. Newsweek had an article on NetFlix a week or so ago, and the article really did seem to imply that they warehoused the DVDs.

Why do I care so much? No idea. I’m just curious, and I hate it when I can’t get the answer to a question!

Burping Software and Babies

Reflections on parallels between parenting and software development

Burping Software and Babies …

I’ve been non-existent in the blogging community for awhile now, consumed by taking care of my second baby, now nearly 4 months old. But as I was sitting up with him the other night, it occurred to me that burps in babies are kind of like bugs in software. So that’s how I’m gonna connect my first blog in a long time with this very consuming activity called parenthood.

Babies need to burp after eating, most of the time. So we sit them up and burp them over and over again, for countless minutes. Sometimes I’m more persistent, bouncing him up and down a bit while burping, even tackling a couple of flights of stairs to break that burp free. Sometimes the burp finds me … sometimes it escapes me. Sometimes, there’s no burp there at all. But how do I know?

Usually, at some point, I declare the baby burp-free and put him back to bed … ah, but only to find that he’s up and screaming an hour later with a burp that I “missed” and if I’m particularly unlucky, he’s barfed all over himself and now I have to change him. This ensures that I’m totally awake and so is he. NOT good, especially in the middle of the night.

Sounds kinda like software, doesn’t it? We build code. We write tests to look for bugs. We jostle our code around, akin to bouncing the baby, looking for bugs. We’re SURE there are bugs there and continually “burp” the code. But at some point, we declare the code “burp-free” (at least for now), and go on to the next thing on the list. And when we’re particularly unlucky, it barfs all over us later. And “middle of the night” for babies equates to “just before release” in software development. Sigh.

Of course, I don’t have a solution other than using all of the tools that nature and technology have given us to get those darned burps (uh, bugs) out of our code. I don’t have a solution to figure out when the baby is done burping either. All I have to say is that after a few more months, the baby will be able to burp on his own. Unfortunately, even a nice suite of automated tests won’t achieve that independence.

Yeah, yeah, I’ll shoot for a more technical blog next time. Hopefully you were a tiny bit entertained by this one.