Django, or, Why I upgraded my Linux server

February 25, 2007

I forgot to mention why I upgraded my Linux server...

I want to try out Django, a new Python-based web development framework. Unfortunately, getting its dependencies installed on Mac OS X is a massive pain... so much so I decided to install it on Ubuntu instead and forego the convenience of having it on my laptop. The software Django depends on is better in the latest version of Ubuntu. So, there's the Linux upgrade use case. :-)

Django's installed, and now I can move forward again.

"Why not use Rails then, it's easy to install?"

Yes, I tried Rails first, only because it was relatively easy to get running on my PowerBook. I bought two books to help me learn it faster. After reading hundreds of pages from them and coding a personal project with it, I no longer feel Rails is right for me.

I'm a perfectionist, with deadlines.

From what I can tell, with Rails, once you've got your (data) model set up, you might as well be doing PHP development. Rails' template/component systems are pure torture. Actually, just attributing the words "component" or "template system" to Rails makes me feel light-headed. PHP-style development is a non-starter for me, so until Rails stops mimicking PHP/JSP/ASP, it's a non-starter too.

I have it on good authority that Django should suit my tastes better, and I hope that's the case! Worst case, my Linux server is now up to date and I now know how to build deb packages from source. :-)

To my friends:

I realize some of you do, and even enjoy, Rails development. And yes, I realize you may be insulted by my comments, but I have to speak my mind on this, and I don't think sugar-coating helps any. Rails doesn't get a free pass from criticism just because it's "the in thing" right now.

My real friends are used to me being "blunt" (to a fault), so I shouldn't think this post will be a problem. If it is, let me know, preferably with a persuasive argument for accepting Rails' shortcomings that has nothing to do with popularity.