Django woes
August 23rd, 2008 by admin | Filed under Uncategorized.I recently deployed a new instance server in order to run a production instance of one of my applications. I copied over my Django app folder from my development machine to the production environment, modified a few entries in urls.py and downloaded the Django trunk. After symlinking everything and getting nginx to proxy_pass to 8080, I execute `python manage.py runserver 8080` and query the webpage. I’m greeted with a yellow Django error page. How nice.
Turns out the trunk I pulled was 1.0-ALPHA, an upgrade the 0.97 trunk I was using on my dev machine. I spent 10 minutes trying to fix the app before giving up. At 6 A.M. everything becomes cumbersome. I just tarred up my old trunk and threw it on my new box.
For the record, Python/Django is my language/framework of choice. It does almost everything flawlessly and efficently. It handles url’s beautifully, slug integration is a godsend, the user/sessions management leaves nearly nothing to be desired, I love the ORM design, and it seems to scale well enough. It could use something like Migrations for Rails, and the Model-Template-View instead of standard MVC design is a bit counter-intuitive. Other than those two minor gripes, I’ll be contentious and say it’s the best environment available for 95 percent of the web.
One of the reasons why PHP3/4 was so successful, despite being a terribly constructed language, was an upgrade wouldn’t break backwards compatibility. Incidently, PHP5 is expected to break a quite few legacy apps. Oh well, I guess that’s good news for those developers who stuck with PHP; I expect they’ll be seeing a lot of work coming their way.
