Paying for software, utility v. cost
I touched on this in my Wall-E review, but it bothered me enough that I decided to write something about it. I’m talking about the guy who posted about why he was moving back to Microsoft after a year at Google.
In general, I think it was a really interesting piece, some insight into the different cultures at these two behemoths. His description of Google just didn’t surprise me at all, from everything you hear and see it all kinda makes sense. Of course, the bit that got the internets all riled up was this one here:
I can’t write code for the sake of the technology alone - I need to know that the code is useful for others, and the only way to measure the usefulness is by the amount of money that the people are willing to part with to have access to my work.
He doesn’t write that the only way that makes sense to me or whatever, he writes that number of paying users is the only way to measure utility. Period.
What about software like, say, Apache? Running maybe 50% of the servers across all domains, I think the installed base is a reasonable metric for that software’s utility. What about sendmail? Powering no shortage of email around the web. Again, very useful.
On the flip side, even in paying for software how do you measure utility? That is, IIS? Microsoft’s webserver comes bundled with windows? How do you measure it’s utility for people? Limiting your work to software that is sold solely as a standalone product so that you can use that as a measure of utility, well, it seems kinda limiting. No?
In general, though, you can see how what appears to be a fast and loose culture seemed to rub him exactly the wrong way.
Google software business is divided between producing the “eye candy” - web properties that are designed to amuse and attract people - and the infrastructure required to support them.
[...]
This orientation towards cool, but not necessarilly useful or essential software really affects the way the software engineering is done. Everything is pretty much run by the engineering - PMs and testers are conspicuously absent from the process. While they do exist in theory, there are too few of them to matter.
Again, there seems to be a sort of if not snobbish, some sort of mildly elitist perception going on here. That is, that cool is not orthogonal to useful but sort of the opposite of it. That G’s web properties are nothing more than eye candy. That moving too quickly and creating new bugs in the process of creating new features is always wrong.
On the desktop, it’s easy (as well as critical) to maintain this attitude. Microsoft rolls out new software slowly and it needs to work because upgrades don’t happen reliably (look at how many folks are still running IE6 to the detriment of the entire web). On the web though, this is less of a factor. I’m not saying that bugs are ok, but that the impact of a bug is much less since you patch it once and 100% of your userbase is immediately up to date. Moving quickly is the lifeblood of the web, there’s too much competition there to for it to take years to roll out a fully formed new version.
There are tons of google properties that are essential to me, search obviously. But maps? Gmail? docs? These are all things I’ve been using increasingly. I’d pay some number of dollars for continued access to them for sure, I suspect lots of other people would too. But a significant number of people would not, possibly (probably) the majority of them - there’s too much competition out there. You know another piece of software that might suffer the same fate? Internet Explorer. I’m just saying.
All in all, I’m nitpicking the details that irked me about his piece. Overall, I think it was an interesting article on the differences between G and M. You could easily tell from the tone (not simply the content) that he was a better fit at Microsoft, probably like you could probably tell from the tone of this piece that I prefer Google (although, I have plenty of beef with them, too).







