Stranded on a Desert Island...
"Thus we never see the true State of our Condition, till it is illustrated to us by its Contarries; nor know how to value what we enjoy, but by the want of it."
--Daniel Defoe, Robinson Crusoe
"Just dropped in to see what condition my condition was in."
I just got back from Microsoft's MVP Summit 2011. I grouse a little (well, ok, a lot) about going because at 6'4 I hate cramped planes, pressurized cabins make me feel like they are trying to turn me into a prune, and the cabin pressure also seems to physical force everyone else's cooties into my body. (That's my theory, and with this pounding headache, hot and cold sweats, and dry skin I am sticking to it.) Aside from getting to run the bases at Safeco field (where the Mariner's play), doing a poor imitation of Lou Gehrig on stage and hacking our way into the broadcast booth-you know who you are Joe, Brad, and Yezmin -- I am reminded that Microsoft has a boat load of really smart people. Being on Microsoft's campus is a bit contagious. You see new and cool stuff, you talk to people that always have to bring their 'A' game and most are dedicated, intelligent Koolaid drinkers. True believers.
I was sitting in once session and the speaker was showing some cool new product features in a cartoon, almost hand-drawn-looking prototype, and I asked what did you render that in, remembering that I used to do hand drawn prototypes 20 years ago. The answer, Balsamiq -- see Figure 1.
Figure 1: My iPhone’s Timer application rendered in about ten seconds in Balsamiq.
What a great idea, and so far it is a pretty cool prototyping tool. What did all of this remind me of? That everyone needs tools, even very smart people capable of building their own tools.
Suppose for example you are standard on a desert island -- think Robinson Crusoe, Tom Hanks in Castaway, or the Professor on "Gilligan's Island." Well, if you want to survive you build tools: weapons for hunting, fishing, and self-defense, shelter, a means of starting a fire, and collecting water. If you don't build tools you probably perish. Now ask yourself would anyone build a clamshell radio ala the professor if there were a radio shack down the island. Heck no. If there were a Home Depot, maybe a Cabela's, and a Walmart you'd just go stock up on supplies, but you'd probably sure as heck get them.
Further, suppose that a tribe of indigenous cannibals were heading your way right now. Would you want to a Cabela's high-powered rifle and ammo or would you want a coconut to throw at them? Again, assuming your survival instinct is stronger than the average Michigan white tailed deer or possum, you'd pick the rifle.
Success depends on the right tools, quality tools. If it were a matter of survival you'd do whatever it took to make it right?! Then, are so many programmers forced to make decisions the equivalent of do I build a coconut radio or go to my local AT&T store and buy an iPhone. (Sorry Microsoft. By the way, try xPhone; it dovetails with Xbox nicely and sounds like a generational improvement of iPhone.) For more than twenty years now I have seen companies under value their intellectual capital and force developers to invent or roll their own subpar tools when first class tools are available for a relative pittance. Doing so is not penny wise and pound foolish, it is just plain dumb.
Buy professional tools from professionals and invest your intellectual capital in areas that differentiate you from your competitors. If you have programmers writing a grid and you aren't a component company then you are committing competitive suicide.