« USAToday.com Redesigned and AJAXed | Main | Upcoming AJAX Books by Manning »

Why Can Google Not Eat Its Dogfood, While Yahoo and Microsoft Do?

ajaxtech.png
Today Yahoo is developing their own YUI and using it extensively in new services such as: Pipes, Suggestion Board, Yahoo Food, ... etc. On the other side Microsoft has its AJAX ASP.NET which is used by many websites such PageFlakes, Shelfari, myPhanfare, TitleZ ... It is still too early to talk about Adobe's Apollo, since it is still before it's public release, but we'll be back on that. Suffice to say that Adobe does not use Flex, Apollo's online sibling, which is already in version 2, to create its own web site.

Joe Stagner, Program Manager - Dev Tools & Platforms at Microsoft told us "The ASP.NET Extensions for Ajax are used on www.ASP.net and the core components are used on Live.com, though the components in the live.com site are highly customized. He further added, "The AJAX extensions are also starting to appear on other MS Web properties".

What is missing here is GWT! What's surprising is that Google is not using GWT for its critical online service, which almost all of them are AJAX-based or have AJAX veneer: GMail, GMaps, GReader, GDocs, GSpreadsheet, GAJAX-Search, GFinance, GHomePage, ... none of them use GWT! The question is, why did Google develop GWT if it cannot use it? And by the way who is using GWT ?

A Google spokesperson told us "Google does use the Google Web Toolkit to help build certain products, including Google Checkout and Google Base".

Well those are two small usages compared to the core, revenue generating Google AJAX applications suite. It's clear that Google has PhD engineers galore who can solve algorithms. Every young engineer believes all problems are basically engineering problems; the difference is in their level of complexity. Some are trivial and some challenging, but all can be solved. So does Google have only young engineers or do they also have seasoned software architects? Do they have compiler writers and IDE designers? Have you noticed that they need Eclipse, GWT Designer (derived from WindowBuilder Pro), and even XML11, an interesting project very similar to GWT, to learn how to make GWT useful to build their own GWT created AJAX applications.

When asked about GWT and open source, Fuad Ta'eed, Morfik Pioneers' Program manager said "Google seems to have turned to the extremely capable and talented open source community in order to try to take GWT to a level where Google might be able to use it gainfully."

Gmail, for example, is one monolithic JavaScript spaghetti code, how could you bring it to GWT easily? Would Google have to rewrite it from scratch using GWT? What about everything else? There is that whole list of Google applications we mentioned before without considering the upcoming Google applications. It's like when you have a factory to builds cars. Even if the factory is streamlined for efficiency but the cars are built manually, it will be slow. One needs robots to be able to bring speed, consistency and efficiency. Without a genuinely working GWT robot, Google's problems are serious. Today Google has a hand-driven factory.

If all your products are based on running in the browser and the only tool at your disposal are hands - i.e. hand-coded JavaScript(s) that you have created - you will hit the glass ceiling of complexity very very fast for anything serious. For controls/components no problem at all, but for serious applications hand-coded JavaScript is a dead end. Everything you add just makes life more difficult. Not just because more moving parts introduce complexity but also because of the dead weight introduced every time you add yet one more JavaScript snippet to the ever accumulating pile of islands of JavaScript code. Today AJAX is starting to get an image of 'yet-another-component' as no real, pure AJAX application seems to have come from anyone - except maybe Morfik.

If Google does not get GWT (or something else) to work for it, it is in a production trap, it cannot respond to changes fast enough and the web is all about change. In conclusion, it's clear that GWT as it stands is not enough, so what should Google do to save the situation? Go open source and hope somebody comes to its rescue...

References :

GWT is Open-Sourced by Brady Forrest at O'Reilly Radar.
Google Web Toolkit goes 100% open source by Ed Burnette at ZDNet

Bookmark this article at these sites
Comments
1

But, what if they are not sure java is the way to go?

What about using c# (a layer on top of javascript for example)?

http://jsc.sourceforge.net/

2

Do you really think that GMail is really "one monolithic JavaScript spaghetti code"? It's obviously been run through a source compressor, in order to reduce bandwidth usage, parsing time, and ability to reverse engineer it.

3

What is the point of this post?

Isn't GWT a tool meant for Java developers? If Google hasn't adopted Java as a mainstream platform within their own product development organization, that doesn't mean that 1) they don't believe in GWT, 2) they're not using any solid platform whatsoever, or 3) that GWT is invalidated.

Why would Google *want* to bring GMail to GWT? Is there some point to doing that? Because they don't seem to be hitting any glass ceiling, and the GMail product just keeps getting better. So this post just seems to be a rant about how Google doesn't use GWT to build their mainstream products. My answer is, "so?" So what? Who cares? Do *you* use GWT? Are you productive with it? Then yay. If it isn't good for you, then don't use it. Okay. Well. Next.

4

Adobe does use Flex on its own site, and several other of the sites that it owns. See kuler.adobe.com. Remember, adobe inherited flex from macromedia, its going to take some time before you see it everywhere.

But they are already using Coldfusion, another inherited application.

5

The GWT folks have mentioned on the Java Posse podcast that they developed GWT as a result of working on Calendar and the other apps... So it's not that they don't believe in it, they just didn't get to put it together in time for those.

6

This is not about "eating own's dogfood". The way Google follows is the free market way. They build the products but they don't push it to their own developers. If it is a suitable product, the developers will themselves certainly choose to use it. I myself prefer to work in a company like Google rather than Yahoo where you have to eat company's own dogfood.

Post a comment





(Email will remain hidden)





Please enter the security code you see here




Related entries
Email to a friend
Email this article to:


Your email address:


Message (optional):