Recently, I’ve been exploring Google’s web app development ecosystem. Here are a few thoughts for those trying to bootstrap a brand-new web app for a startup or in a small company and thinking about the Google vs Microsoft platforms.
- Google Web Toolkit is almost as good as JQuery and benefits from nice tight integration to the GoogWebStack compared to some other platforms like JQuery and MSFT.
- Google App Engine is awesome from a get-going standpoint but is still really a Beta overall. I’ve heard horror stories about downtime. GOOG is addressing with their focus on uptime for the “pro” version but it still feels early to build a large-scale business on it. I’m sure in 12 months they’ll have it under control. Right now it’s perfect for a mid-size or small business. Eclipse integration means a scalable back-end is measured in hours to go from keystroke to deployment. Right now it’s a straightforward path toward an eventual AWS or internal RMDBS back-end over time.
- UI Binder got the GoogWebStack basically up to speed with ASP.Net.
- RequestFactory now brings GWT up to speed with ASP.Net MVC almost. Documentation is still light and basic things like controller management aren’t as intuitive. GWT MVP is a bit all over the place right now with new ways of doing things coming out monthly.
- Activities and Places make a Web app a lot more practical. Things such as a useful back-button or the Undo feature you see in Gmail are fairly simple to put in place.
- Tight integration with Eclipse is almost as good as VS with regard to building a basic web app. Auto-build and auto-complete still aren’t as good as MSFT’s. Library management can be a rats nest of open source libraries so Maven is probably a good call.
- Open means GOOG benefits from open source that can fill the gaps. Of course as they build out their stack those efforts fall to the wayside. Sorry Gwt-platform, Restlet, etc. Spring may be a different story. Just like a lot of other Google vs Microsoft battles, Google doesn’t have the cloud of expensive lock-in hanging over it, yet.
- You can’t use C# or VB, but I think Python and Java captures most of the bell curve on non-corporate web dev right now. If you’re a MSFT shop internally and need synergy on apps and dev knowledge that’s probably the biggest reason for an enterprise to pass.
- Lastly, you can’t beat the price. While MSDN brings down upfront costs for MSFT dev tools for larger or very technical companies, for most brand-new or small companies, Microsoft takes its pound of flesh for having the best dev tool and overall ecosystem on the market. Yet another example of Google using free to compete. Good for us. While GAE and Azure are comparable on price, Azure is more expensive upfront and more expensive in general.
It’s clear that Google is using a slippery slope, openness, and hyper-development cycle to catch up on the development stack front. Unless you’re building the next Facebook or are tied to C# I think it’s the best platform out their right now, especially if you value speed-to-market and an open infrastructure.