Selling Django to the Eskimos

how do you sell a client on the idea of using Django?! The usual roadblocks I hear are “we don’t support python” or “we have no python resources to maintain the app after your done”. Basically I think my clients tend to think that I’m suggesting they build in Django not out of trying to use the best tool for the job but more as a job security language (jsl).

The answer is, you don’t. I’m one of those IT guys who asks you to deliver in PHP. If you deliver in Python, I’m the only one who can support it, and I try not to be the artificial hero of IT.

One of our prime concerns when contracting projects out is the long-term viability of the project. When you ask us to trade off the long-term viability—our ability to update the project—for your programming language preference, we’re likely to say no. If you persist, the smart IT department isn’t going to trust you. You’re asking them to believe two incompatible things:

this is the best programming language for the job, and

the programming language doesn’t matter;

I understand how those can mesh; for most people, they don’t make sense together. Most people aren’t wired that way. For them, learning a new programming language is a lot like learning a new language. Difficult and prone to mistakes.

So listen to it from our side: You tell us that we should use Python, but we don’t have anyone who can maintain the project after you’re gone, or we have only one person who can do so and that person is swamped. You recognize our concerns and tell us you’re not trying to force us to keep coming back to you. So now what we see is an orphaned project. We can’t support it and you aren’t interested in supporting it. We can’t trust you coming or going: either you’re trying to force us to keep hiring you for updates, or you’re not going to support us after launch.

So the short answer to “how do you sell Django to people who don’t have Python programmers” is, you don’t.

The long answer is to show them how much it saves. Whenever we hire a new or replacement developer, I convince them to put “Python, Rails, or Django skills a plus” on the hiring blurb. That’s always the first thing that gets dropped—those developers cost more than we’re currently willing to pay. Convince us that paying extra on developers saves money in the long run, and we’ll start asking you to deliver in Django.

Give us a breakdown that looks like this:

Phase

PHP

Django

Documentation

$1,000

$1,000

Database Foundation

$5,000

Included

Backend Code

$5,000

$5,000

Frontend Templating

$5,000

$3,000

HTML/CSS Design

$5,000

$2,000

Administrative Interface

$3,000

Included

Total

$24,000

$11,000

Assuming that your PHP side is reasonable for the current market, we might still ask you to deliver in PHP this time, because it doesn’t matter how much we save on a product we can’t maintain. But maybe we’ll start thinking that having some in-house Django or Python skills is worth a little bit more.

Hell, it’s entirely possible that the there’s already a skunkworks Django server in use at that bloated IT department.

“So right up front let me just say that I love Django. This should come as no surprise to anyone who has been to my site. I think its a great framework and I really enjoy working with it. That being said all too often my clients look like a deer in headlights when I suggest using it for their projects. Unfortunately that usually means that they want to use… PHP ::dies::”

Blogroll

Keep in touch

About Mimsy

Comments?

The undiscovered comment form, whose bourn no poster returns.

Your comment

Your name

Your email

Your web page

Your location

Your email, URL, and location are optional—but I won’t be able to contact you if you don’t leave a working email. Your email does not get displayed, your URL and location do. Your name is required but may vary as the needs of the day demand, or you can just use the anonymous Hark Thrice name. You can use the following tags: <em>, <a>, <blockquote>. Use them wisely and post intelligently. Comments may take some time to approve, especially if I’m stuck in a Mexican jail.