A few weeks ago I was invited to a briefing by MSFT on the MSN and their media-related initiatives. I think the overwhelming perspective in the room was that MSFT was playing catch-up to Google and not acting disruptively. A lot of the strategy was centered on how do we (MSFT) unify our existing businesses to strengthen them as a collection, rather than compete separately. This was apparent in the ad delivery strategy from on-line to mobile to Xbox,. And it was apparent in the (presumed) consumer desire for unified media consumption across Xbox, On-line, Zune, etc. Bundling and cross-selling. Pretty limited strategic thinking.
In contrast, Google is moving quickly to own the entire media buying experience across print, broadcast, and on-line, because they know that purchase decisions are made upstream from Internet media and they want to control more of the entire advertising budget.
I didn’t say much about my reaction at the time, because I didn’t want to criticize without suggesting an alternative. And my alternative is not to be more like a Google. It is be more like Microsoft.
Bundling is borrowing a play from the wrong playbook. This is the Microsoft strategy circa 1992 for Office against Lotus and WordPerfect. If I were Bill / Steve / Ray, I’d think long and hard about really going back to the Original Playbook against IBM from 1981.
Here’s what I mean.
Google is spending $3B this year building the largest mainframe in the world. Google is moving to host the Internet on the Googleplex. The core technical strategy of Google rests upon having the largest collection of content in the world. By “have” I mean residing on servers they manage. This is a great strategy – simple, clear, and succinct. Scale begets scale.
Google doesn’t really have all the content. They don’t own it or control its use. They are simply advantaged by having access to it and meta data about it.
The collective hardware investment in re-toolig for Vista this year will be 100X what Google is spending on their grid, and the year after, and the year after, etc. Google has amassing access to all the world’s information. An equally succinct strategy is to have access to all the world’s computing cycles. What is the one huge advantage MSFT has over Google? It is their channel’s ability to get MSFT software on computers they don’t own! Why not use the power of MSFT’s ability to get to the desktop to turn the world of desktops into the WWG – the World Wide Grid?
There also lots of questions about why would users share their computers, privacy, etc. I’m going to ignore these as objections. They are obstacles, for sure, but not fatal flaws in the logic. It’s not like this particularly far-fetched technically. Apple already ships Xgrid in MacOS. But there aren’t enough Macs out there to attract the development of applications for a WWG. This strategy could leverage MSFT’s development tools business as well, and offer their enterprise customers meaningful ways to reduce capex in IT operations, too. Rather than migrate them to a centralized SaaS grid, migrate them to the distributed enterprise grid.
It is fairly simple, perhaps too simple. Google’s advantage in scale is that the “answer” to any query or machine learning problem is out there, if your sea of data is large enough. (See the video of this presentation by Peter Norvig for a compelling elaboration of this POV). On the other had, the answer is also there if you have near infinite ability to compute and cache answers. Both roads lead to Rome, except one road is far easier to replicate than the other. Microsoft can duplicate the infinite content store more easily than Google can harness all the Core Duo 2 – based machines on desktops, for now.
This isn’t a one or two year strategy, but neither was the long march against the IBM mainframe. But the window is not open forever. Google has long been rumored to have Google OS somewhere in the back room, though Eric denies it. (Kind of like Sergey denied they’d become a portal.) Google and Apple are close and getting closer. They share complementary technical and marketing DNA, and a common adversary.
So how ‘bout it Bill / Steve / Ray? Now that Vista is just about in the can, isn’t it time to get serious about the World Wide Grid and stop chasing Google on its own turf? History rarely repeats, but this opportunity definitely rhymes with the original DOS vision in 1981 – “micro-computers will be everywhere and the key is controlling the software, not the hardware.” The WWG is already everywhere and the cost curves of CPU speed, interconnect speed, caching, and the energy and cooling costs of managing centralized farms are all moving in a direction that favors distributed computing. Seize the opportunity to outflank. Back to the Future.
Nice Post, Peter, however you didn't mention Amazon and their Elastic Compute Cloud (EC2). I think Amazon will become a bigger threat to Google over the long term, than Microsoft will (albeit, not in the search space).
Posted by: VinnyLingham | January 13, 2007 at 02:40 PM
Vinny --
Thanks for the note (hope you're doing well with your new business).
I have a lot of respect and admiration for the disruption that EC2 can provide in the near term. But it's not a Google disruption. It's just a further break in the cost of entry for SaaS applications. (Several of my companies will be using it.)
But the idea of true WWG distributed computing is a much bigger idea than allowing the world to tag along on your cost structure (Amazon's model).
Best,
PR
Posted by: Peter Rip | January 13, 2007 at 02:45 PM
Unfortunately I would never trust MS to tie my computers into a grid because the track record on security is horrendous (being a Mac user, its a moot point in any case).
The beauty of Google's approach, as you note, is that they represent the index, the codex if you will, and as the info store grows it won't be possible to navigate it without that index. They become a layer we must all pass through, a layer that did not exist a few years ago. I don't think we're crying for processing power, I think we want access to knowledge.
Posted by: MartinE | January 15, 2007 at 09:10 AM
I like the brainstorming direction for Microsoft, and the idea of leveraging some real strengths they have that Google would have trouble duplicating.
That said, I don't think grid computing is a valuable enough problem to make the difference. There have been some minor successes (SETI@Home, cryptography), but the economic impact (past, or even projected) of this kind of computation doesn't approach the scale of MS OS, MS Office, or Google.
I believe that for the vast bulk of economically-valuable problems, the latency and communication issues dominate the CPU use. It takes a special computational problem to be amenable to grid computing.
So: I doubt that you've identified a strategic direction that could really save Microsoft, in the sense you're suggesting. (Of course, Google isn't really directly competing against Windows Vista, for example, so MS isn't yet in much danger of going out of business.)
Posted by: Don Geddis | January 15, 2007 at 03:02 PM
>>What is the one huge advantage MSFT has over Google? It is their channel’s >>ability to get MSFT software on computers they don’t own! Why not use the power >>of MSFT’s ability to get to the desktop to turn the world of desktops into the >>WWG – the World Wide Grid?
You hit the nail on the head: divergence is accelerating at a pace far greater than convergence. Convergence of information will never happen without divergent nodes to polarize the flow and structure. Could it be googol desktop, could it be microsoft, I doubt it will be either.
One dynamic you need, 100 million + user base (social network, eg msn, yahoo, skype)... The ability to handle divegent and dis-similar information at both the desktop and the server. The ability to scale the information (which googol clearly has).
This will all play into enterprise 2.0 as the information polarizes. web 2.0 and enterprise 2.0 marry and become something else...who knows what...but you must have the social fabric as a foundation.
Posted by: jon | January 15, 2007 at 03:15 PM
Good post Peter. Where I as a consumer may not trust Microsoft, enterprise grids make a ton of sense and I could even make a case for cross-enterprise grids. One could further start buying into the idea of community grids. It's this evolution path that could eventually provide the necessary confidence for a full on WWG, but it starts w/enabling that feature into the O/S. I like this thinking a lot as it relates to competing w/Google as I agree that it's not worth going after them by trying to outplay them in their game. Change the rules...heck, it's that "change the rules" thinking that got Google to where they are today.
Posted by: P-Air | January 16, 2007 at 11:44 AM
Peter,
From the recent articles on botnets in the NY Times and Wired, it looks like the bad guys (I mean the REALLY bad guys, not MSFT) are already doing what you propose.
Len
http://www.nytimes.com/2007/01/07/technology/07net.html
Posted by: Len Kawell | January 16, 2007 at 01:24 PM
joltid already owns this space and kazaa, skype, and now joost are prime examples of what grid based computing and a supernode approach can acheive. Ebay has invested in joltid to protect their skype investment... and niklas and janus are part owners. if i were ms. i would be investing in this direction...googol has started with desktop, but they are fixated on the convergence tunnel vision wanting to be "the internet", and they have no penetration on the desktop, compared to skype, ms, yahoo...
Posted by: jon | January 16, 2007 at 03:52 PM
Peter,
Good thoughts, but what about latency? Returning search results fast, is a key differentiator and one of the primary reason why people do more searches (according to Google). If Microsoft did a worldwide grid, could they return search results in 0.02 seconds?
Posted by: baris | January 23, 2007 at 05:31 PM
Baris:
That's what I think caching is critical to the vision. Even GOOG caches the most frequent queries. Access to the WWG could lead to pre-calculation and caching for large classes of queries and inferences. A WWG with a WW Cache is the vision.
PR
Posted by: Peter Rip | January 23, 2007 at 07:59 PM
I hope you are right and there is an alternative to GOOG. But caching works best when you control the computers GOOG does. PC's could be off, used, or disconnected, so you need serious redundancy which could be a nightmare for cache coherency, and ultimately latency.
Posted by: baris | January 24, 2007 at 06:40 PM
Right. I was thinking the cache was at MSFT, not at the edge. Use the WWG to pre-compute, and cache "locally" at a central host. But I am not a systems architect. Not by a longshot.
Posted by: Peter Rip | January 24, 2007 at 06:46 PM
Peter,
That was a nice post, I think distributed systems have tremendous power. I believe a Google scale engine could be built with much smaller number of nodes (hundreds of thousands). It would also need to place more focus on communication than typical grid systems but there are many examples of such systems already.
Regarding cache coherency, note that current search engine file systems, esp Google GFS, are optimized for (streaming) reads and writes are assumed to be (very) infrequent. They basically write by replacing the entire index. Google itself uses triple redundancy in GFS and it would have a similar problem if it allowed arbitrary writes, i.e. whether some of the concurrent writes were lost or corrupted. They put triple copies out when they put in a new index and then serve reads. For consistency, triple buddies poll each other if they are alive, if not they start recovery by allocating a new machine dynamically. It would be expensive for Google even in such a relatively tightly coupled system to monitor consistency of every write. Triple buddies could also check data corruption when they poll each other, say by transmitting a hash. BitTorrent, of course, is probably the best example of a large scale distributed system maintaining consistency really well with very effective use of hashes (of chunks of data).
So the same applies to a WWCache or another large distributed cache, one can simply make writes (much) more infrequent and update index less often.
Regarding 0.02 s it makes no sense to talk about such a small latency because TCP round trip time on the Internet will be the dominating factor. Ping or traceroute Google from your machine, I get around 90 ms on mine, that should be the floor.
Posted by: Bora | January 25, 2007 at 10:29 AM
Pi already has a grid for WWG. check out http://www.pimesh.com/
Posted by: Himanshu Sahani | February 05, 2007 at 01:03 AM
I think you've got it wrong. Using the WWG , as you envision it , is not in MSFT's domain. Majority of the world's desktops are x86 (Intel and AMD) and these processors cannot be used as pseudo-servers by a network client at least not today. To do this , you need a network processor and a defined client-server model. Latter maybe in MSFT's hand given its ability to armtwist network controller software. But the former is not, by a long shot.
Also , as a business idea , it does not make sense for either MSFT or INTC. In the era of multicore processors , who would be the user who wants to use a remote computer for any computation? It makes sense for thin clients in a corporate environment but not for an individual user with dirt cheap quadcore processors. Intel wants to sell as many desktop processors as possible and MSFT wants to sell as many Windows(MSFT's biggest revenue generator, anyone?) as possible. Why would they hurt themselves by doing this?
Also , this would completely break MSFT's approach to security and encryption which allows access to a computer's peripheral devices ( notably the hard disk which in your vision could be used a cache) only to native OS and drivers at boot time. If history is a good indicator for the future, there is NO way for MSFT to separate malicious network traffic from non-malicious one.
Posted by: Bipin | March 18, 2007 at 07:50 AM