I'm speaking at PGCon 2017 (The PostgreSQL Conference)

Cracking passwords in Postgres with Python and Django password hashers


Later this week, I'll be heading to Ottawa, Ontario to attend PGCon 2017 where I'll be delivering a talk entitled Pgcrypto Avasat! A study in Django's password hashers.

If that doesn't get you excited... I don't know what will!

Read more

Migrating a Django app to Heroku

Heroku supports Python! What are we waiting for?

As a Python and Django kind of guy, I had always been jealous of the Ruby on Rails folks. This has nothing at all to do with the framework itself. No, no, no.... Django all the way. It was the Heroku cloud application platform that had me longing.

Yes, I could run my Django application on Google App Engine, but that requires all sorts of hackery and my app ended up an abomination of the original... too unnatural for my...

Read more

Custom Django management commands on Heroku

Quick solution to a common Django/Heroku problem.

Running Django management commands is easy on Heroku. For example, to syncdb you simply execute:

$ heroku run python your_app/manage.py syncdb

Easy enough. But you may find that running a custom management command to be a little trickier. You...

Read more

Why Django?

In 5 words or less… Why do you use Django?

I have been a heavy Django developer, architect, and evangelist since about 2006 when Nowell Strite and I first saw a presentation by Adrian and Jacob at OSCON. We brought Django back to PBS where it quickly became our standard development platform.

Read more

Concatenating strings in Django templates

Cheap ass hack to append a string within Django templates.

You might think that joining two strings in a Django template would have been simple and straightforward. In modern versions of Django, we can achieve it using the add filter.

{{ "Mary had a little"|add:" lamb." }}

However, in...

Read more

DCPython: Architecture at PBS

Slides from DCPython meetup on Jun 7, 2011

Edgar and I had the pleasure of presenting at the DCPython meetup last night about how PBS uses Python, Django, Celery, Solr and Amazon Web Services (autoscaling EC2, RDS) to power many of our sites and services. We focused primarily on the COVE (video) and Merlin (content) APIs since those probably have the most interesting...

Read more

New PBS.org launched!

New Django-based PBS.org site and APIs

Today is a big day. Just after midnight we pulled the trigger and launched the new re-envisioned PBS.org website. This is a huge step for PBS on a number of fronts; mostly having to do bringing PBS to the forefront of new media.

Read more

django-openlike v0.1

A Django template tag for easily implementing and extending OpenLike protocol.

Source code available at GitHub:


Release notes (v0.1):

# django-openlike
Django template tag for easily implementing and extending OpenLike protocol.

See http://www.openlike.org/ for more...

Read more

Talking points: Django v. Drupal

Why you should use Django instead of Drupal.

At PBS, I frequently find myself with a proposal to build a web application with Drupal. We're primarily a Django shop, so you can imagine my bias against Drupal. Yet these proposals continue and I routinely find myself pushing Django instead.

To date, we have attempted exactly four Drupal sites at PBS. Three of them eventually made it to production....

Read more

Implementing Gravatar in Django

A simple Django template tag to add Gravatar support to your site.

Update (January 31, 2011)
I just released django-simplegravatar, a pluggable Django template tag based heavily on this post.

This blog is written in Drew Engelson

Read more