Recently, Steve Yegge published two rants, each of which has gone viral and moved the Internet conversation needle a bit. I liked both of them, thought they were generally well-argued and useful. Unfortunately, there are a few assertions of fact there that are just wrong, and may be damaging. So I thought that, first of all, I should encourage people to go read these pieces and, second, point out the things that are counterfactual.

The posts · Now at Medium (sigh, it makes me sad when another indie blogger migrates off their own platform): why I left Google and Who will steal Android from Google? Go read ’em.

Wrong: Google’s customer focus · Steve asserts that “Google has become 100% competitor-focused rather than customer focused.” He’s making the all-too-common error of mistaking Google’s users with its customers. Customers are the people who pay you money for your services, which in Google’s case means advertisers. Bear in mind that something like 90% of Google’s revenue is still based on search advertising. Google takes really good care of search advertisers, and deeply understands their needs.

Google also does a pretty good job of reaching out to developers because it needs people building on its platforms. I spent four years in the Developer Relations group, and know whereof I speak.

But users? Nope, because that means basically everybody, and nobody can afford to provide high-quality support to everybody. The only way to deal with customer pain is to make expert help from a real human being, and that’s just not affordable for search or Gmail or Docs or YouTube. The number of people who’ve only had their hideous, life-blighting Google problem resolved because they happened to know someone who works there is substantial.

Wrong: Amazon’s customer focus · Steve alleges that Amazon staffers only interact with customers once a year. Nope. Part of the problem may be that he pre-dates AWS, where I work, and where we talk to customers obsessively all the time, and I mean all the time. I personally do, and I don’t know anyone who works anywhere near me that doesn’t.

Wrong: Language coolness · Steve: “At the top of Snoot Mountain sit the lofty Search engineers writing in C++, which is considered cooler than Java, which is cooler than Python, which is cooler than JavaScript. And Search is cooler than Ads, which is cooler than Apps, which is cooler than Tools, which is cooler than Frontends. And so on. Programmers love to look down on each other.” That’s just crazy. I think a whole lot of programmers would rather work in high-level languages like Ruby and Python; it’s just that if you want to build infrastructural services that can handle a million requests a second, you probably can’t use that stuff even if you want to.

And last time I looked, all the coolest, hippest, “thought-leader-ish” people I know are building radical JavaScript frameworks.

Steve correctly notes that front-end programming is hard, but leaves out maybe the single most important reason why: It’s super-hard to unit-test properly. He also correctly notes (here and in previous outings) two of Android’s most horrible mis-steps: The Fragments API, and Gradle.

Wrong: What Android is for · Steve says Android is Google’s most important channel. That’s only if you don’t measure by money. From a business point of view, AdWords is five times more important than anything else. My personal opinion is that Android originally existed to prevent Apple getting a monopoly lock on the hand-held market and lock Google entirely out of mobile ads. Mobile ads still completely suck as a business, BTW.

And it’s actually not obvious that in the big picture, Android has had a positive ROI for Google. (Yet another reason why Oracle’s litigation is so stupid.)

Oh, and did I say? · They’re excellent blogs. You should read them.