August 26, 2012
There is a missing middle in our approaches to sharing servers. On one end we have static web hosting where all users are doing the same thing so we can install and run one copy of Apache for all users, that works up to the point of cgi scripts and php. The other end of the spectrum is to buy a server and that extends down to virtualized servers. Between there is a gap where there is some commonality to the user’s needs, but little support. Engine Yard has their RailsEngine platform for Ruby and there are a few Python offerings of which PythonAnywhere is one.
PythonAnywhere starts from the assumption that you will be running Python. They also assume that you’ll want to use Python interactively at least sometimes, probably a lot. The operation of PythonAnywhere is to login and select a console. You can choose from your existing consoles or start a new one in your choice of:
* Python: 2.7 / 2.6 / 3.2
* IPython (0.12): 2.7 / 2.6 / 3.2
* PyPy (1.6): 2.7
For non-interactive hosting you can go simple with scheduled tasks or hook in a wsgi application. Because the servers are virtualized via Amazon’s ec2 you cannot run a server directly. Free users can have username.pythonanywhere.com addresses, and paying customers can point their own domains at the service. That’s pretty much the way of things when it comes to paying, PythonAnywhere is on a freemium model, most of what you need is in the free tier, unless you’re doing something that you’ll have to admit is on the heavy side. The only real hassle to the free tier is that they’ve had to restrict http access to a whitelist of sites to prevent misuse.
To get started with PythonAnywhere just sign up at https://www.pythonanywhere.com/ with the free account you can get two consoles, a database, and everything you need. Sign up is faster than installing python locally. Even from the basic account you can share a console, so this makes a great tool for learning and exploration. Give it a try next time you’re experimenting or collaborating, try it on a desktop or laptop before trying to use it on a mobile device where it can be a bit more finicky.
Disclaimer, I have been involved in the PythonAnywhere Beta test and they have thanked me with account upgrades and free gifts. No one from PythonAnywhere nor Resolver Systems was contacted to prepare this review.