My One True New Love : Google App Engine
I have read up and checked out the Google AppEngine in a cursory fashion a couple of times in the last few months, even to the point of signing up for an invite before it was publicly open and downloading the SDK. But life and work and play were too busy, so I didn't have time to really delve into GAE with any intent and real application.
Until today. Last Friday night, a much admired friend passed away in a car accident and on Sunday I was asked if I would develop a memorial web application for friends, family, and colleagues to post photos and stories up. I said yes and ran through my head quickly all the possible ways we could do it. Given the resources at hand it seemed that PHP, be it hand rolled or Cake PHP would be the only approach to take given the time & server constraints. Yikes.
I really struggle with PHP, I dislike all the verbage, punctuation, and braces. When I am able to make a whole app work in it, I am vastly relieved. But most of the time the butt kicking that PHP delivers is greater than my feelings of accomplishment.
One of the things that I do adore about Python and Ruby is that they both are lean and make sense. There is not butt kicking, only happy writing, testing and deploying. Except most host servers don't like one to run a good Python or Ruby framework such as Django or Ruby on Rails. So if a client or friend already has a server and a domain and wants to move forward fast, much of the time Django and Ruby on Rails gets ruled out. Thus, the evils of PHP reassert themselves.
After sending most of yesterday and this morning debating of how I should plan and construct the memorial site, a meteor of insight flashed through my head... Google App Engine.
GAE is free (for now), uses Python and Django (happy days!!!!), it has great tutorials on top of all the Google resources. No reinventing the wheels with PHP and/or Cake PHP.
So this afternoon I started experimenting with GAE and discovered very quickly that between its webapp extension and the images/Picasa API that I would be able to develop the whole memorial application with very little fuss and stress.
Here is a quote from an email that I sent to the folks organizing the memorial:
Google AppEngine is a dreamy love bug of a dev environment, I may have to marry it. PHP is formally now dead to me. Normally 6 hours into a dev project I am not happy but really really really really really frustrated and writing snarky twitters about how much I *hate* PHP. But no... Love love love love the Google.
Google, thank you for making my life easier today when I would rather be crying than developing.