Previously, I had written a script called Adorno (announcement here), which allows Python / Django beginners to quickly and (relatively) effortlessly set up a professional development environment, including:

VirtualBox

Vagrant

Git

Heroku (for Git-based online hosting)

PythonBrew (to maintain separate versions of Python)

VirtualEnv and VirtualEnv Wrapper (via VirtualEnv Burrito)

and finally, pip.

Setting up all that stuff can take a novice days, and can be enough to scare anyone away. At the very least, novices will “make do” with only part of the above, usually skipping VirtualBox, Vagrant, and Git, using PythonBrew only if absolutely necessary, and perhaps not even bothering to install VirtualEnv. That’s a pity, because their life could be so much easier with those tools! (I know… I’m guilty!)

Well, Adorno solved that for me. It was a nice script that I could use to easily set up those things, and was geared for people just starting their Tango with Django.

What does that have to do with Issue #24? Well, I reasoned, if Adorno could setup for Tango with Django, it shouldn’t be too difficult to expand it, so that developers could use it to easily install their Django projects in development environments. I needed to abstract the project-specific customization into a separate configuration file, which could be tailored for every project.

Very long story short, with some great help from IRC user Riviera (who introduced me to ShellCheck – a great error-checker and best-practice resource for your shell scripts) it’s done! (Well, it’s working. Riviera gave me a long list of homework, which will be done, I promise!)

If you have your own project, feel free to include a <project_name>_adorno.sh script file in the root of your repository. Check the Adorno repository for a guide (use tango_adorno.sh – it’s very simple).

I hope it’s useful, and that the development of the CrisisCommunicator increases!

Previous to Tango with Django, I followed all of the tutorials at Getting Started with Django. I really appreciate those tutorials, as the author (Mr. Kenneth Love) goes out of his way to show you the current “best practices” in Django development. I wish he had been able to finish his series! As it is, I’m addicted to his approach, using excellent programs like Vagrant to create a really great development environment.

In Tango with Django, a different development environment is used. I wanted to continue using Vagrant and Heroku, and I wanted a quick-reference script that I could use to create more development environments easily.

So Adorno was born. Adorno is a bash shell script to help set up a Vagrant box with the necessary tools for easily coding in Python. It is especially helpful for people following the Tango With Django series. The README also serves as a quick and simple command reference for beginners like myself. It works independent of your operating system, because it runs in the Vagrant virtual box.

Adorno makes it really simple to set up a development environment and get you ready for Django coding. Spend less time setting up, and more time coding!