Saturday, December 26, 2009

Python - Google App Engine + Boggle Solver + Web2Py

Click here to go right to the solver

Lately I have been experimenting with a Python web development framework called Web2Py, and so far I have been very impressed. As with any language/platform/framework, there are those who love it and those who hate it. I happen to be in the group that loves Web2Py. I also happen to like Django, another framework from which Web2Py received a lot of inspiration.

One thing that I really like about Web2Py is that it is extremely easy to get running - no installation is needed whatsoever. Download, start up the built-in server and get to developing. No configuration is needed either (You can visit their Home Page to find out more).

More importantly though is that it runs on the Google App Engine without any modification whatsoever. That is one of the things that made me choose it over Django when deciding which framework to use to put up my latest side project. Django does run on the Google App Engine - lots of people have done it, but there are too many complicated steps to get things going. Not the case at all with Web2Py.

Several posts back I posted my Boggle-Board solving code. It runs from the command line, and is not too user friendly. I decided to wrap a nice GUI around it and put it online. The resulting Boggle Solver can be found here.

Things to note about the solver:

  • I wrote this app because I was unhappy with all the other online boggle solvers out there

  • For the random boards, I use actual Boggle dice configurations not just random letters

  • Written completey in Python using the Web2Py framework, running on the Google App Engine

  • Uses a dictionary of 170+ words (I am pretty sure it is the Enable2k dictionary)

  • Visit my blog to see how the words are found


PS: If you are a CS student somewhere and you have this same assignment: Do your own work.