Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

I would agree with the article that django has lowered the entry barrier but thats it. Problem with django is, it is easy to do 70% of the work but rest 30% would make you cry... as long as you have clearly defined problem, like newspaper cms or todo list etc., django is a pain to work with and the django ORM is a toy...


At DjangoCon, Mark Ramm warned against Django's "Z shaped learning curve". And, he's exactly right. Getting Django installed, pointed at your database, and opening up the admin is a joy. After, that, you have to roll up your sleeves and start learning.

It really takes a while to get used to the work-flow: Design a URL, created your model, created a view to push the data through to the template, design the template. Then, there's the Generic views, which are a whole other language to learn. After you get up to speed, it makes development a whole lot easier, but from the bottom of the "Z" to the top of the "Z" it takes a lot of struggling.


On the contrary with other pythonic frmeworks, the curve is not that difficult. Currently we are using the combo of cherrypy and dejavu in python, and the learning curve was surprisingly small.

Anyone who tried hands with sqlachemy or storm ?


We're using sqlalchemy here and it's been nearly painless so far. It scores on maturity (despite the 0.5 version number), great documentation and a very active and friendly community. The learning curve is steep (as with any ORM) but very rewarding because the pieces constantly fall into place. Everyday tasks are idiomatic and syntactically sane, plus even complex joins and subqueries can be constructed using the standard building blocks. So far we have not run into any limitations, unlike with the django ORM which gave us constant headache at some point. The latter really feels like a toy when you have tasted the real thing.


That is why I still prefer web.py over django any day. With mini frameworks such as these, you have a sense of what is going with your application. You know what gears are moving and what you need to do to get them to do something.

Django's willingness to do 70% of the work for me has always left me a bit uneasy. Too much automation happening under the hood. However I do applaud the effort of the Django community in building a rather comprehensive framework + libraries to stuff done. But as a builder I'd rather work with a minimal but effective set of tools. I'm old school like that.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: