RevSys Blog

July 12th, 2014

Python Dev Tip: DRY your shell with PYTHONSTARTUP

Do you find yourself re-doing the same Python shell stuff?

I know I do. I'm constantly doing it and replaying some of my IPython history isn't cutting it for me anymore. IPython has profiles but they're not terribly easy to get working with Django and your typical manage.py shell command.

Site wide is easy, but what about per project?

You can load things and execute code for ALL your Python shells ...

Read Full Entry

February 19th, 2014

Django Debugging Bookmarklet Trick

So this is one of those little things where you think, why the hell didn't I think of this years ago?

I'm sure many Django developers end up doing this on a fairly regular basis. You're working on a site, go to the production/staging version, navigate around and then want to view the same URL path but on your local development server.

If you're like me you cut-n-paste the current ...

Read Full Entry

February 15th, 2014

Setting up Mailgun with SaltStack

Here at RevSys we've been moving away from Chef and using SaltStack for all our new server setups. Salt is still pretty new and while I run into bugs every now and again, they're releasing new versions with fixes at an impressive rate.

Today I want to show you how to setup a new server with Postfix and Mailgun in a reusable way. This tutorial assumes that you already have a working Salt ...

Read Full Entry

January 14th, 2014

$90 million is that the best we can do?

Yesterday one of our team posted a link in our work chat channel to a post by Philip Greenspun on how Accenture recently landed a $90 million dollar per year contract to take care of healthcare.gov, joking that we should have bid on it.

I don't think anyone can dispute that the original contractors bungled the job severely. [1] However, before I rant on why this contract disgusts me let's get a ...

Read Full Entry

May 1st, 2012

Three things you should never put in your database

As I've said in a few talks, the best way to improve your systems is by first not doing "dumb things". I don't mean you or your development staff is "dumb", it's easy to overlook the implications of these types of decisions and not realize how bad they are for maintainability let alone scaling. As a consultant I see this stuff all of the time and I have yet to ever see ...

Read Full Entry