Thursday, September 29, 2011

A Nice AppEngine Starting Point

HTML5 Boilerplate, Appengine, MemCache, static file compression and optimization, JQuery, intelligent scaling to smaller device screens, and a clean highly-customizable architecture that looks something like this diagram.  Fork it on github: https://github.com/metachris/appengine-boilerplate
















Saturday, September 24, 2011

Web Frameworks

I've been poking at some different web frameworks over the last month.  After 3 or 4 days on variety of frameworks, here are my unsubstantiated thoughts:

1) ASP.NET MVC 3+  Syntactically clean Razor view engine, nice language options, the best IDE ever, templates, quality documentation, massive community and market.  If I'm a CTO of a 5 million + company, I'd say, "just use this, everyone - otherwise, bring me good business reasons for your alternative."  Microsoft makes developers productive, but some of the wrappers make developers Microsoft developers more than web developers.  There's a trade-off there.

2) Ruby on Rails 3.  All goodness.  I spent the least amount of time here, but the community is the best.  The framework is simple.   The no-sql movement has taken a bit out of the wind out of the sails, as much of the power was in the baked-in ORM, and generally, I prefer configuration over convention.

3) Java Spring Framework with Roo and Maven.  Although I feel really comfortable in Java, there were 62 jar files in Eclipse when my smallish project was loaded.  I'm really just doing GETs and POSTs, so this feels heavy.  I'm certain it doesn't have to be such, but that's what I had out of the box.  

4) Django non-relational / Python.  A little unintuitive in architecture, but easy to get productive, fast.  Python is beautiful.  Appengine is a great hosting platform.

5) Web2Py - the ultra-skinny Python framework.  I was doing configuration through a UI, though, which made me really uncomfortable.  I like the idea of being close to what I get in Fiddler/Firebug.  I need to spend more time here.  I'm not sure if I'd let my hospital IT staff go with this one, but I'd love to spend a few weeks of development in this one.