Lacker Style

Tuesday, February 26, 2008

Two Reasons I Hate Django

"Top ten" lists are played out. Instead I propose the "Top two" format. Perhaps, like sonnets, restricting the medium will result in higher quality thought.

In the past year I have probably introduced a couple dozen different programmers to Django. But, I can't say it is awesome with a straight face. There's a lot of small stuff you can nitpick, but really I have two overriding complaints.

1. By the time you get started, you have lost your enthusiasm.

I have set up Django from scratch on Windows, OS X, and Linux. I don't think it has ever taken me less than ten minutes. Often much more. The experience should work like this:

a. someone searches for [install django]
b. they click on the first search result
c. that page has a link to something they download
d. they run the one command explained on that page
e. they go into their python interpreter and type

>>> import django

f. they paste in a short snippet of code
g. you have a server that does something

For Django, the first impression is really important. Non-corporate "cool" technologies, like Django, have to spread bottom-up, with enthusiasts converting their friends. But the success of these conversions depends heavily on what you can show a friend before they get bored.

2. It sucks to switch languages.

In the course of hunting down a single bug you might have to flip between looking at python, html, SQL, css, javascript, and the Django template language. This is not a very happy programming experience!

Add this to the typical nightmare that is cross-browser compatibility and you start to wonder - maybe we should have libraries that wrap the html, css, and javascript. Some team of honored maintainers somewhere can constantly test that Netscape version 0.3 doesn't crash.

Wouldn't hurt to include Comet support out of the box, either.

0 Comments:

Post a Comment



<< Home