Bash Alias for Python/Virtualenv
If you are writing Python apps, you should definitely be using virtualenv. It creates an isolated virtual environment (hence the name), where you can install Python apps without affecting the rest of the apps on your machine. For example, if I have a website that relies on Django 1.2, and other sites that rely on Django 1.3, I can put them in virtualenvs and just install the correct package versions in each. This can also be applied to running different Python versions per project as well, such as 2.5 for one and 3.0 in another. Yet another great use of virtualenvs is testing your code in multiple version of Python.
Django New Project Checklist
Every time I start a new Django project, I also have to go back through other projects to find all the tweaks I make to customize Django to my liking. Here are some basics, and I'm sure I'll be tweaking this as I write more and more Django apps.
Launch Django Development Server Quickly
I hate repetitive anything, so you can understand my frustration typing the following to start the Django development server:
Mobile sites middleware
I love Django. I also love CSS3. Most of the sites that I'm developing right now use CSS3, and therefore look terrible on many mobile devices and Internet Explorer. In this case, my options are either to make sure every site gracefully falls back to IE-compatible HTML/CSS, or make a separate site for the browser-impaired. Well, call me malicious, but I'm going to take the fast route and treat Internet Explorer users just like mobile users and give them the less pretty (but still fully functional) mobile site. I don't have the time make sure everything looks good on standards compliant and non-compliant browsers, so non-compliant desktop browsers (Internet Explorer, I'm looking at you) and mobile phones are going to be treated the same way. Now the only question is how to make Django do this easily.