72 comments

[ 64.1 ms ] story [ 1782 ms ] thread
Old inside joke at Google, you know your project is "important" with two or three other groups are working on exactly the same thing. When I was there, it was debated whether or not this selected for the right attributes (it tends to reward groups that execute fast versus ones that execute well). It did not help that some times when they didn't do that (just let one group build it) they didn't always get the result they wanted either.
The worst offenders were probably workflow / pipelining systems; just about everyone needed to write sequences of mapreduces, and thought that the existing solutions weren't a perfect fit. IIRC there were at one point over a dozen different workflow systems in use and advertised to at least some degree to other groups, which made picking one even harder due to the paradox of choice. The solution was of course to write a new one.
When I studied library design, the situation you described was the basic indicator of "domain misunderstanding": no one understands the domain well enough to produce a suitable abstraction. If the problem persists for a couple of decades, it might imply that domains have been improperly mixed.
This explains the vast inconsistencies in quality of Google's products and also the feeling I get that none of them ever quite work together the way you would expect.
Article from 2014 - "Oct 17, 2014 5:00am PDT"
This isn't a google strategy. This is a generic Big Corp. strategy. The same thing happens at eBay, Microsoft, Oracle, IBM, etc. It's not a good thing. It is usually an indication that the higher ups don't trust each other or are trying to one up each other for the year end bonus round. It is just a wasteful strategy overall and only happens at places that can afford it.
It's usually encouraged by the even-higher-up, i.e. the CEO. It's actually fairly rational from his perspective: he has more options, he can cover more of the market, he insures against product failure, and his reports can't get complacent.

Yes, it's wasteful, and yes, it's demoralizing as hell when you're the ordinary employee whose product just got canceled. But then, you should understand (at least at some level) that your work is meaningless when you go join a big company: the reason they're big is because their product is already "good enough" for millions of people.

It's not different at a small company. At a small company you have "pivots" or "going out of business" or "competition from another company", instead of "competition from another team"
Almost makes you think that the part that's wrong is the narrative that we're sold as kids, y'know "Work hard and good things will happen to you." It's more like "Work hard and there is a ~2-3% chance good things will happen to you, but if you don't work hard there's a 0% chance good things will happen to you."
Be clever and good things will happen to you.
not really, for me its more like work on yourself, not necessarily hard, but continuously. in time, you will leave most people behind. and recognize moments when life is giving you a chance, and grab it like there is no tomorrow.
There is a way to see it as different. Ideally people like entrepreneurship because you succeed or fail because your idea and execution meet the market's needs. That's better than getting paid on the basis of your own effort or discomfort involved in doing the work necessary to complete it.

Certainly, the market is fickle, but that is different than something political that is going on where you have no influence. It is completely conceivable that you optimized such that your product generated revenue far in excess of its costs, but that it is canceled for a (good) strategic reason.

Sure the difference is probably only psycholgical, but finding out that work you cared about was only a waste of time somehow feels more just if there was no market for it than if it had traction and the was shuttered for a reason you don't know.

The very important difference is that at a job you get paid regardless. You can even shift your mental model such that "it's just a job" and start leaving the crap 'at work'.

In a startup (esp if it's your own), the psychological and emotional stakes are significantly higher. Also, there's no reason that politics can't find their way into a startup you're running. You just might not notice it because you've positioned yourself at the top of the tree of monkeys.

(comment deleted)
It is really an old strategy to handle risky projects. Typically goes by names such as set based development or parallel trials and was for example used in the Manhattan project.

I consider it wise strategy when the project is high risk and its outcome very important.

You forget it was the same strategy Steve Jobs followed with the development of the original iPhone, where one was the current realisation and the other was based on the iPod.
He didn't go and release both products to see which would win out; the better product was selected internally and Apple went with that. The article is about Google releasing two of everything, not making multiple prototypes of things.

I actually think making multiple prototypes is a good thing, it helps you understand things from more angles and see more possibilities about how a problem can be solved. But going and releasing both is confusing to customers and ultimately fragments your product line-up (canibalizing your sales) which is something Apple is desperate to avoid.

You are right, but he did have two teams develop in secret not knowing about each other, the same complaint that many Googlers have.
Do you have a reference for this development being in secret?

I think both Jobs' biographies detailed Forstall & Fadell's development, but I thought they knew about each other, working on Mac to Phone & iPod to Phone concepts respectively.

Hmmm actually I am not 100% sure, only from what I myself remember reading about it I interpreted it as they they didn't know about each other because the projects in general was conducted in such secrecy. I'll have a look if I can find anything.
During my time at Google, I definitely had the experience of "my" product being killed in preference to a competing product. In one case, I did not even know that the competing product existed until the public press release.

What was most frustrating is that the decisions did not seem to be motivated by product superiority. The "winner" was not a better product, or at least this was not demonstrated. Instead the decisions were driven by whichever product better aligned with the internal political winds this week, such as the tension between the Nexus partner model vs the Pixel in-house model. These "strategy shifts" were often preceded by senior leadership shakeups, which were themselves frequent.

It was hard to escape the conclusion that the quality of my work was irrelevant. It was demoralizing.

You're one of the most prolific and impressive programmers around. I'm sure you could have your choice of product manager...
Office politics unfortunately often wins over talent and results. And it's very hard for most people to recognise why certain things are happening within a company if you aren't immersed in the politics on a day to day basis.
Is it true that, at Google, product managers have to convince engineers to work on their product?

For context, this answer on Quora[1] suggests that the product team does not report to the product manager and don't have to do anything they say, so the product manager has to convince people if she wants to get things done.

1: https://www.quora.com/What-makes-someone-a-great-product-man...

Everyone is a volunteer. Not just at Google, but in many other situations as well.

At Google, pretty much any of the engineers can go and get a job at another company whenever they want. So they tend to have access to internal mobility; Google would rather let them fill a different job at the company than have them quit. Thus, managers (either engineering managers or product managers) don't have a lot of coercive capability.

The path to success is to not be a manager who forces people to do your bidding, it is to be a leader who persuades your colleagues of your vision. At times the tool of command can be used, but it's best used lightly.

My goal is to be service-oriented: my job as a manager is to help my engineers be super-successful, and one of the ways I try to do that is by finding paths for the organization to build great software and leading my team and other teams to cooperating to build it.

What you've said is all great and admirable but it's also a bit aspirational and idealistic, and I'm left wondering: How do decisions get made?

For example, let's say there's a list of ideas and suggestions for new functionality and fixes for a product - How does it get prioritised? By consensus?

I can't help thinking that there's a risk that the priorities end up being the stuff that the engineers are most interested in working on - i.e. interesting problems and challenges get picked up enthusiastically, while boring, tedious bugs or usability fixes languish unresolved because nobody's particularly interested or enthused in spending time on them, when there's far more interesting/fun stuff to do.

While that's sometimes an element at Google (we tend to be better at building things that engineers love to build and it's harder to do things that engineers don't care for), people are somewhat more enlightened than you fear and can see that the big picture of doing valuable work doesn't mean only doing the fun parts (and one element of managerial leadership is articulating this). Plus, a number of engineers really like fixing bugs, usability fixes, etc.

As to how decisions get made: it varies. Sometimes there's some consensus, and sometimes management / executives make decisions without seeking feedback or even going against the input of the team. But it's then incumbent upon them to persuade and lead the org; if they do this poorly, they don't tend to be as successful in the medium or long term.

Again, Google isn't remarkable in this fashion, even if it's possibly something of an outlier: in any field of endeavor, you'll be more successful if you can persuade people to want to contribute to your mission rather than forcing them to do it. [Cue up the Antoine de Saint-Exupery quote re: longing for the endless immensity of the sea.]

What about search?!
Shortly before I joined in 2009, Google had embarked on a project to rewrite Search from the ground up. It was canceled after a couple years, and in many cases the work of individual subteams was folded into the main search engine.

Search also periodically rewrites parts of the search stack. Caffeine [1] was a complete rewrite of the indexing system, Hummingbird [2] is a near-complete rewrite of the ranking algorithm, Panda [3] and Penguin [4] were partial rewrites of the ranking algorithm, the serving system continually gets rewritten, and we redid the visual design every year starting in 2010 [5][6][7][8]. You'll notice that there was no 2012 redesign; it was canceled. That's what happens when the "new" search isn't better than the "old" search.

[1] http://googleblog.blogspot.com/2010/06/our-new-search-index-...

[2] https://en.wikipedia.org/wiki/Google_Hummingbird

[3] https://en.wikipedia.org/wiki/Google_Panda

[4] https://en.wikipedia.org/wiki/Google_Penguin

[5] http://googleblog.blogspot.com/2010/05/spring-metamorphosis-...

[6] http://www.theverge.com/2013/1/24/3904134/google-redesign-ho...

[7] http://searchengineland.com/google-launches-new-unified-desi...

[8] https://www.google.com/design/spec/material-design/introduct...

Can you disclose how much "better" for such rewrites? And what metrics were measured? I guess there is a conflict between CTRs on organic results and ads, so one has to be picked (or maybe a combo of the two). And what the magnitudes of the improvements? a few percentage or a few bp?
I can't disclose which metrics are measured, sorry. Basically, they had to be at least metrics-neutral with strategic value (where "strategic value" means "some exec thinks this is a good idea and we really need to do it"), or pretty strongly metrics-positive without an exec's personal interest. Conflicts between CTRs on organic results vs. ads happen less often than you think, they're usually an issue only on full-page redesigns. I was an informed bystander for a few of them - I can't detail the precise process, but let's say that it's a complex balancing act that tries to balance the interests of all constituencies: users, webmasters, advertisers, and shareholders. (The one constituency that doesn't get a break are the poor engineers and PMs that have to implement it all..we often had some incredibly complex solutions to make the page marginally more user-friendly.)
Well, now we know what happened to all of the previously-good Google products. I hate to complain about free products, but will make an exception for Google, which constantly removes features and usability as if a PM's bonus depends on it.

Give me back my color-coded GMail threads, ability to edit the subject without multiple clicks, and view features not hidden by submenus.

And that's just GMail, and that's just off the top of my head.

LOL.. I switched to Hangouts (from Voice) for my SMS, voicemail and messaging... on my phone, it works pretty nicely... on the desktop actually sending an SMS from my GV number to a contact is nearly impossibly without entering the phone number by hand.
Not available for me in the UK.
>on the desktop actually sending an SMS from my GV number to a contact is nearly impossibly without entering the phone number by hand.

Yes, this is absolutely ridiculous. I have to look up the phone number using Google Voice plugin (which is nothing but a directory search now since Hangouts disables it), copy/paste the number into Hangouts, and SMS/call from there. It is completely unacceptable.

I keep seriously wanting to write a webmail client again... Inbox is great in many ways, but it's also taken so many wrong steps, such as making it harder to see timestamp etc. and obscuring subjects.
They forgot Picasa vs Google Photo!
and youtube vs google video
This is mentioned at the end. However, Youtube was acquired and at the time Google Video already existed. Given the traction that Youtube already had, it's no wonder that they purchased Youtube regardless having their own video service.
They put Eclipse vs Android Studio, but Eclipse is not a Google product.
At first glance I read that as "...but Eclipse is not a great product"

Android Studio is based on IntelliJ which is a far more polished IDE.

No this is Google simply replacing Eclipse with a superior product and was slowly transitioning people to it. Did you really expect Google to drop Android development support for Eclipse overnight?
There is no strategy. The thought of Google having a central product management strategy -- and successfully executing it across many teams -- is hilarious to people who work there. It's chaos that outsiders try to read into.

This is a consequence of bad internal economics and incentives. Google PMs and engineers are incentivized to create new products and ship them by quarterly deadlines (perf/promo cycles) rather than align their teams towards a cohesive user experience. Thinking this way would occasionally cause teams to, gasp, not build a product they wanted to build. Everyone needs to ship something, ideally something new. After all, you don't get promoted for deciding not to build something. I've seen awful products/implementations go out the door and get killed or reimplemented soon thereafter. And people still list these as "achievements" on promotion packets (and they get promoted despite the product failing!).

The company is kind of trying to address this by changing promotion criteria, but it's culturally ingrained and won't change for some time.

Informative, thanks.

Is this why Google announces sweeping changes every year at i/o and redesigns the Android UI every single year?

eg. use the dedicated search button on the phone, btw this button no longer exists, respond to the menu button, btw this button no longer exists, put menus at the top, put menus at the bottom, use hamburger menus, don't use them, use swipe navigation, use swipe navigation if it fits with your app, do things to ENCHANT and DELIGHT the user. According to the UI guidelines, clicking a button should cause the user to burst into tears of joy due to the delightful experience they have just had.

Is it because they need to appear to be producing new things all the time? If so, it'd also explain why some products get released to much fanfare (and applause from the BBC Technology news team it seems) and then get no updates, maintenance and get binned a few years later. (Many examples of this). The most annoying of these was the Talk replacement for Android (Hangouts) which got rid of features of Talk and still has an abysmal tablet interface and general bugginess ("Did you not get my call???" "No").

I am not meaning to be overly critical, but the constant change for the sake of change is wearying. I have been using Android since the G1 and every i/o they have redesigned the interface. The examples of "bad UI" and "bad text" are all from their own older versions of Android. It makes you wish they'd make their mind up.

That's exactly the thing that pushed me from Android after 5 years. If I'm a paying customer, I want to be treated as one, not a beta tester with $currenthypedthingwedemoedatIO. That's why I'm still convinced that Google doesn't make products, but tech demos.
That seems a good evaluation of it! It is particularly starting to grate on me how I rarely get updates for my phones despite the security holes found in the versions of Android I am running. Also, I look at reviews of Android M on Ars Technica etc. and realise that I will never ever be running that version of the OS on my devices, not in the foreseeable future. It saddens me.
Indeed, it's hard to be excited about the upcoming features, if you count in the actual availability of it because of the update model, which is usually release_date+couple months and where release_date is still 5-6 months from now. If we compare to a service: if x free, then I could live with that, but devices aren't free (and my time certainly ain't).
Reviews of M exist? Wasn't this just the development version released? I really question this. Get a Nexus device. updates are guaranteed for 2 years. Blame your phone's manufactures for not getting updates not Android or Google.

I would love to know how many years of support does qualcomm guaranteed for their chipset driver updates. I remember reading this was an issue for Google updating the Galaxy Nexus.

You're right - they were just overviews of the previews of M. I did notice that many things were changing in them too - I found it odd that the way pages were laid out was so fluid/changeable compared to the previous M preview given that UI guidelines should dictate how things are laid out.

The fact that things move around so much would be indicative of not being really sure how it should look (despite the UI guidelines), perhaps? If I was buying a car and the next version of the car the next year moved the dials to the other side of the dashboard or swapped whether the indicator stalk was on the right or the left of the steering wheel, you'd ask what the heck was going on. Yet this appears to be normal for Android.

I would love to blame my phone manufacturer for not getting updates, apart from Android was started with the Open Handset Alliance. It doesn't appear to be much of an alliance to me.

It's a daft situation. If you bought a laptop and could only install hotfixes and KB releases via Dell, yet Dell did not give them to you, would you be happy with Microsoft? Would you take their advice to just buy a Surface Pro from them? That would be unrealistic because it would ignore the massive market that is Wintel devices; rather you would expect Microsoft to only provide Windows to Dell if they agreed to provide hotfixes Microsoft gave them.

If you had a MacBook Pro and El Capitan would not run on it, yet you were aware of all the security holes in Mavericks and some in Yosemite, would you accept advice to just buy a new MacBook to get security fixes? Or would you expect Apple to backport fixes when they know that a sizeable percentage of customers are connecting to their App Store with older versions, given your purchase fee of the hardware?

The solution to not getting updates for a device is not to buy a new device.

Google boasts how many devices they have all over the world (see last year's io keynote) and how Android is everywhere, yet it failed to mention the important point about Android being everywhere: that it is insecure outdated Android that is everywhere.

Google know how many people are connecting with older versions (the Play dashboard tells you what percentage is running which version), so they should push out updates or mandate in their agreement with phone manufacturers that a timely update cycle should be followed, or the agreement would be terminated. There would be no other way to keep control or maintain a high standard.

I say this with a plethora of Android devices and with my dayjob of writing Android apps. It is a rubbish situation for security.

You assume they had/have the leverage to "force" manufacturers to let them centrally update their handsets which isn't very fair.
All devices have Google apps on them, and phones without these are considered "lesser" and won't sell. (When's the last time your Android phone from a "big name" seller came without Google Play market?).

If so, they have access to a central repository - Google. Google could just refuse to give them the OS with Google apps unless the manufacturer/carrier pushed out updates. It would be in both party's interests to agree to do this - Google because it would stem the tide of insecure phones and the stench of dodgy apps being prevalent even in the official market; and for the phone manufacturer, updates and apps, and happy customers.

At this rate I am not going to get another Sony, that's for sure.

That theoretical leverage only exists because of Android's ubiquity which it has because of the handset makers. We have no idea how long the contracts that stipulate that handset makers control updates is valid for but it's safe to assume that they are still valid today because the update/security fragmentation it creates is bad for everyone except handset makers. No doubt it's something that handset makers will hold onto for as long as possible because a lack of updates sells new phones.

Google is slowly breaking up the OS into applications that it can distribute in the app store which smells a lot like someone trying to get around a contractual obligation using a technicality. There are legal agreements between Google and handset makers that can't simply be dissolved by threatening to revoke access to the app store.

I owned only Nexii from 2011 on and I'm not even sure Google wants to update those thoroughly. They sacked 4.2 for Nexus S, 4.4 for Galaxy Nexus although they can run it (and they did with custom ROMs) just fine.

Last straw was the Lollipop update for the Nexus 5, where it turned out a perfectly working device into a nightmare with memory leaks, mobile radio drains and camera freezes, where a daily reboot was actually mandatory. Their bug report tracker is full of complaints, yet they didn't do anything and are casually talking about M. Sorry, I don't have to wait a year, then pray if my current device is going to be supported, or just cave in and get a new device the new Android revision will enter the market with.

So until customer experience becomes a priority, I'm not investing a single cent or a second of my time in Android.

2 years is insane. When Microsoft dropped support for XP a few months back, there was a huge clamour, and that OS was released 15 years ago. Phones seem to have reached a plateau, and there is no reason to drop expectations: my two year old phone reflashed with 5.0 GPE runs more smoothly than a galaxy s6 ffs, but is not going to get any future updates.
Sounds like British Telecom :-)

I know some one going for a promotion to a first level manager (PCG U) they used 10+ FTE's for a year and a million pounds to redevelop a system used by BT worldwide into the "approved" Oracle OWS platform.

Not the best use of a million pounds of shareholder money :-(

But they got the manage x people and have a budget of y pounds tick in the box.

It's just a waste of productivity. Not a strategy.
Back in the day people explained the USSR's superior economic performance (according to the public data at the time) as being due to the USSR not wasting resources on competition like capitalist countries did.

If you assume the planner knows the right thing to do is that's actually a perfectly valid argument. It's actually pretty heartening to see the people leading Google don't believe this about themselves, though, because people who think that usually aren't correct.

https://en.wikipedia.org/wiki/Overconfidence_effect

> It's just a waste of productivity. Not a strategy.

Whether or not its Google's actual strategy, multiple parallel development efforts with different profiles (e.g., risk, timeline, etc.) is certainly a strategy, and one recognized in many works on lean software development.

If something is important enough to your broader business strategy, not hedging by taking multiple approaches, while devoting resources that could be expended doing that on other, less critical, efforts, may be the real waste of productivity.

(comment deleted)
I must admit - this is kind of why I started moving AWAY from Google. You just don't have any guarantee that the product you're using won't be shelved in leu of a "better" (newer) solution.
Eric Schmidt used to say: "Our goal is to have more at-bats per unit of time and effort than anyone else in the world."
I recall Apple's norm is running a half-dozen competing designs at once, choosing the best and killing the rest come delivery date.
Yay, more wood behind fewer products!

And no wood behind things people actually want or use!

And the wood behind the ones we liked ended up all warped and weird!

One reason that small companies so often beat big ones is that if you have 10 startup teams competing agains one big company team, one of the 10 will probably make the winning product.

So a big company that is open to doing 2-3 similar things at once should be more likely to produce winners.

That said, as an ex Googler, I agree with others here that this is probably more an accident of internal dysfunction than a brilliant strategy. It might still work though.

> A report from The Economic Times of India says that Google is working on a fifth instant messaging program. This one reportedly won't require a Google account and will be aimed at Whatsapp.

And how will Google be able to get onto the Whatsapp network and use their proprietary protocols?

I think they mean the new app is "aimed at [surpassing] WhatsApp", not that they're building a clone that runs on the WhatsApp network.