Friday, August 29, 2008

Google App Engine.

Yesterday I had the pleasure of attending a Google Hackathon that focused on the App Engine API and hosting service.  At first my learning curves were very steep; I rarely ever use python, but I have a little experience with the language.  I was first thrown off because the app that we were using was built with Templates, and I haven't ever used them before.  So, I decided I wanted to talk about Google's App engine, and some other time I'm going to talk about Python Templates.


The first thing you need to do in order to use App Engine is Install Python.  This varies with different operating system, but basically it installs the same way any other program would be installed in your OS.  Then you need to download the SDK, and maybe even sign up for an App Engine account.  The best resource is the App Engine site on Google Code

After unpacking/installing the SDK, you are ready to start writing your program.  I created an RSS reader with a social twist.  In reality, if you took Google Reader, and added an automatically generated feed of articles both you and one or more of your friends read, then offered to initiate an email conversation based on the shared articles.

The App Engine API allows you to utilize Google Accounts, which is how I authenticated users for my app.  Another cool thing I learned about App engine, is that the SDK includes a development server environment that is great for troubleshooting your code before you deploy it to your app engine account.  That's why I said that making an app engine account is the last and optional step.  However, if you want to actually use your app, you should get an account.  It is free after all.

The one thing that kind of caught me off gaurd, but at the same time was perfectly reasonable is the quota system.  Apparently there are two quotas that are set for each app that you host with app engine: Number of users and allow processing power.  I don't know the exact numbers because they can vary according to your account, and what you can arrange with Google, but the idea is that you are given X number of page views, and X milliseconds of processing time.  If you exceed one of these quotas, then your app is disabled for the rest of the month.  However, there is a plan to allow users to pay to have more views and processing power.

Over all, I have to say that the app engine APIs simplify the process of making complex user-based server-side apps.  I plan to write up a documentation/tutorial on using app engine to create your own RSS reader, but first I need to finish some research to better explain why I did things the way I did.

until next time.

No comments:

Post a Comment