You're an IdiotIndeed, a hidden recorder could have picked up my voice saying "I'm an idiot" scant hours ago, as I realized I had just taken a load of dirty dishes out of the dishwasher and carefully put them all back in the cupboards. Of course, saying something others feel is idiotic does not really make me an idiot, but my book isn't out yet, so I can't fault programmers for not understanding the Fundamental Attribution Error and why it drives us relentlessly to such conclusions. But the interesting thing is the number of responses in the "you're an idiot" vein. Having been a magazine editor for a decade, I know that if you get no vociferous responses you probably haven't said anything worthwhile. But I think this particular piece touches the same hot wire that Nicholas Carr's "Does IT Matter" did: the implication that a bunch of programming going on in the world is a big waste of time. As a programmer, I can understand the "reject it first and think about it never" response. I am perfectly capable of sectioning off that portion of my brain that, were I to listen, would tell me I should be working on my book instead of writing yet another LL(1) parser generator that the world doesn't need. But on I code, happy as a meth-head discovering an empty building full of copper wiring.
But What About Product X?Moving up a level in thoughtfulness are responses that point out that, for example, GMail was a Google side project, and Android might make a lot of sense. The blithe response that comes to mind is: "Well, testicular cancer clearly played a role in making Lance Armstrong a champion -- do you advocate testicular cancer for aspiring athletes?" For example, if it were true that GMail was a "typical" Google 20% project, whatever that is, would that be evidence that this is a really good way of doing business when so many others are dead ends?
Now consider Google Go. Does the world need yet another programming language? Hey, I think it's got some cool ideas and some useful things in it. But is it a good investment of a number of high-powered and (I'm guessing) high-priced brains that the stockholders have paid for? I don't know. I do know that if Google were a startup that had to justify every dollar it spent, that faced real financial penalties for not translating programmer hours into customer benefit, then Google Go would, well, go.
To reach for a more subtle differentiation, I think that Google is clearly some years behind Microsoft in their cognitive decline, and since they haven't hit their peak growth yet, the damage done to stockholders is less obvious and more defensible. And I'm also sympathetic to the Black Swan idea that Google should deal with the unpredictability of the future by throwing lots of projects against the wall to see what sticks.
My point is, they aren't throwing these projects against the wall, they're throwing them inside a Nerf room where nobody can get hurt, and it's very hard to tell the difference between what could stick and what's just plain fun (at stockholder expense). Is Gmail actually a success for the stockholders? I bet it is, but I really can't tell because cash cow disease drives (public!) companies to obscure the numbers that might ferret out wastes of time (try to figure out what Amazon's profit really is on a book!).
But Apple...It's hard to quantify, but it sure seems to me that Apple is significantly more willing to cannibalize their existing product lines than either Google or Microsoft. For example, Microsoft could have split off some O/S team people to aggressively make a slimmer, cheaper Windows for Netbooks, giving them the mere commission to sell as many copies as they could. Instead, Microsoft cut a deal to sell (soon to be deprecated) Windows XP for the Eee PC, so long as the manufacturer agreed to not sell machines with more than 1GB. Here, of course, we've entered the main of Innovator's Dilemma as Microsoft's goal was clearly to defend the cash cow against a threat rather than view netbooks as an opportunity to explore a new product direction.
Apple does not seem to me to be so clearly a cash cow-dominated company. I suspect that if I asked 10 programmers what Apple's cash cow is, I would get at least 3 different answers. As another example, though iTunes clearly both sucks and blows on Windows, it's hard for me to tell whether that's really Apple defending their cash cow by making nothing look good on Windows, or merely incompetence at creating a Windows product, of which there is certainly no shortage among other software companies.
Miscellany I Found Interesting
com/) Gmail, Picasa, translation, using Google Maps on phones to gather
locations for Google Maps – they all get more data for Google to crunch.
Their business model is transforming the information of the world into a
source of targeted ads. Is it still cross-subsidy and
over-diversification when it’s a company strategy?
My point was: what can't Google justify as a business endeavor? That question should keep somebody awake at night at Google Corporate.
Anonymous: You pick one famous unpopular 20% project which failed, but discount the hundreds or thousands of 20% projects which contribute to Google's revenue stream.
Anonymous: Or consider that Wave matches the daily needs of a Google programmer almost perfectly. Even if it was never released, it could have been a huge time-saver. Should Costco not have forklifts to unload trucks, simply because the forklifts themselves aren't a cash cow?I'll have to agree with Nicholas Carr by replying that Costco should not spend stockholder money developing its own custom forklifts.
Tom Bolton: [...]how one can tell the difference between undisciplined forays into new territory and real innovation before (or after) the fact (success or failure) from an outside perspective.That seems hard to me, and made harder by the companies having no internal accountability and no motivation to publish whatever accountability they do have (how much was really spent on Google Wave? can't see how a stockholder could possibly make a good estimate). But this is just a cog in the great wheel of disfunction that the stock market has become. For many Google stockholders, it doesn't matter whether Google is investing in data mining or just hookers and cocaine -- the stock price is all that matters. This great disconnect is how you get a GM that just blunders on indefinitely, its own mass so great that any velocity results in enough momentum to give the appearance of life even after death.
Anonymous: Is the premise of this section that we should enact legislation to force the return of these individuals to the market? If not, it looks like a pretty simple bet with high chance of small downside in exchange for a low chance of large upside (and the reduction of a small chance of high downside—if the Next Big Thing comes from your side projects division, you won't be trying to compete with it in the market when it shows up).Two premises are relevant here: a) the actual cost is bigger than you think because you are (deliberately) kept from being able to measure it and b) you can place more bets on side projects better if you have the discipline that having a cash cow tends to erode. Why doesn't Y Combinator take the Google approach to placing these bets and just hire as many programmers as their budget allows and let them work (100% instead of 20% -- 5 times as effective, right?) as long as they want on whatever their little heart desires? Do you think Y Combinator would be more successful with that approach? Presumably they have concluded otherwise.
Jens Alfke People have a ridiculous misunderstanding of 20% projects. The vast majority are either contributions to other team's existing projects, internal tools, or very small-scale experiments.
For better or worse, the "20% project" provides a convenient moniker for hanging various hats on. I'm hanging it with the "Geez, Google has more projects than Molly Hatchet has guitars" hat.
Anonymous: "waste"? Seriously?? Have you any idea how much learning must have come from the effort put into Google Wave, or from other 20% projects that haven't make it as far? And that doesn't even count the increased morale from working on a pet project.
I love learning. I learned how to play the guitar. I learned a lot about the SAT this summer while tutoring my nephew. For various reasons, I learned a great deal about two particular hormones in humans, melatonin and cholecalciferol. The point is, would a financially disciplined software company want to pay me for all this learning? Or would they be more interested in paying for things that have a more measurable return? (And certainly, wouldn't they try to measure the return in at least some vague-but-better-than-nothing way?) And if you want to talk about increased morale, I think the opposite argument is good: they are actually destroying morale compared to someone who is working on their "pet project" because they are in a startup that has to get good or die. Compare, for example, the morale of the Danger team before and after Microsoft acquired them. Morale is not what you want to pin your argument on, I think.