The hot new development framework

I’m hearing more and more about Django. Pownce uses it. Zooomr uses it. I keep hearing more about it at developer events and seeing more and more developers using it. The developers who’ve told me about it say they like it a lot more than Ruby on Rails — they like it’s based on Python and that they report it lets them develop high-performance apps faster than other frameworks. When Leah Culver, lead developer of Pownce, told me about it while waiting in line for the iPhone, she had high praises for it. If you’re a developer, what do you think?

Comments

  1. I began using Django about 6 months ago after Kris Tate recommended it to me. I have also developed with Ruby on Rails around 18 months ago, but I quickly understood Django much better than Ruby on Rails and all of its “magic”. I was able to develop and launch the Alpha version of ClassOwl.com in under 2 months, and I have nothing but praise for the framework. Also, the documentation and community are phenomenal.

    Thanks for bringing more mainstream attention to Django, people will love this framework.

    http://www.djangoproject.com

  2. I began using Django about 6 months ago after Kris Tate recommended it to me. I have also developed with Ruby on Rails around 18 months ago, but I quickly understood Django much better than Ruby on Rails and all of its “magic”. I was able to develop and launch the Alpha version of ClassOwl.com in under 2 months, and I have nothing but praise for the framework. Also, the documentation and community are phenomenal.

    Thanks for bringing more mainstream attention to Django, people will love this framework.

    http://www.djangoproject.com

  3. ATD I tell ya…PHP, then Rails, now Python, tomorrow Zend. What an attention span. Or is it just lack of confidence and follow the leader. ;-)

  4. ATD I tell ya…PHP, then Rails, now Python, tomorrow Zend. What an attention span. Or is it just lack of confidence and follow the leader. ;-)

  5. “Chris: how does Zend, Django, and Ruby on Rails compare? When would you use each?”

    Zend is for PHP, Django is for Python and Ruby on Rails is for ruby. I’d have to say, if I was doing a PHP project, and I would want to use a high level framework, I would use Zend Framework. If I was a Ruby dev, bla, bla, bla, I would use Rails. If I was a python dev bla, bla, …Django.

    And so on and so forth.

    I am a PHP dev, amongst other languages, like asssembly, C, C++, java, but I do not use frameworks, as my code is down to the metal. I am building a massive search engine, and on hold a new SQL datbase.

    The slightest overhead such as having a short for a boolean flag, be a long and adding 32 unnecessary bits, on a scale of 10 terabytes can add something like 2 more hours to the index time or more.

    It’s crazy. I program my PHP, like I do C and C++, so I really totally hate frameworks. PHP is so high level you really don’t need one unless you have a deadline coming up very quickly. Notice that Pownce, and the other sites you mentioned are not very original sites and have very little serious computing going on, on the server side.
    http://www.digg.com/programming/The_Technology_that_Powers_Digg
    As you can see digg.com itself is based on some very high level tech. But doesn’t reportedly use a framework.

    If you invest that much in a really good site, you probably want to do it from the ground up. When you use a framework, and you don’t audit the code, bad things can happen. Lots of people used http://smarty.php.net framework for PHP, and when vulnerabilities were found, some didn’t update quickly enough and their sites all got hackzored. It’s their fault, but still.

    If you’re just throwing something up and meeting a deadline though in python, ruby or php, all 3 frameworks are great!
    Very little code goes in and lots of nice looking html is pumped out!

  6. “Chris: how does Zend, Django, and Ruby on Rails compare? When would you use each?”

    Zend is for PHP, Django is for Python and Ruby on Rails is for ruby. I’d have to say, if I was doing a PHP project, and I would want to use a high level framework, I would use Zend Framework. If I was a Ruby dev, bla, bla, bla, I would use Rails. If I was a python dev bla, bla, …Django.

    And so on and so forth.

    I am a PHP dev, amongst other languages, like asssembly, C, C++, java, but I do not use frameworks, as my code is down to the metal. I am building a massive search engine, and on hold a new SQL datbase.

    The slightest overhead such as having a short for a boolean flag, be a long and adding 32 unnecessary bits, on a scale of 10 terabytes can add something like 2 more hours to the index time or more.

    It’s crazy. I program my PHP, like I do C and C++, so I really totally hate frameworks. PHP is so high level you really don’t need one unless you have a deadline coming up very quickly. Notice that Pownce, and the other sites you mentioned are not very original sites and have very little serious computing going on, on the server side.
    http://www.digg.com/programming/The_Technology_that_Powers_Digg
    As you can see digg.com itself is based on some very high level tech. But doesn’t reportedly use a framework.

    If you invest that much in a really good site, you probably want to do it from the ground up. When you use a framework, and you don’t audit the code, bad things can happen. Lots of people used http://smarty.php.net framework for PHP, and when vulnerabilities were found, some didn’t update quickly enough and their sites all got hackzored. It’s their fault, but still.

    If you’re just throwing something up and meeting a deadline though in python, ruby or php, all 3 frameworks are great!
    Very little code goes in and lots of nice looking html is pumped out!

  7. Tabblo (recently acquired by HP) uses it. It’s used by newspapers for web publishing (for which it was originally developed). Generic views, easy RSS/Atom feeds and the new unicode support are my three faves It’s currently at v0.96.

  8. Tabblo (recently acquired by HP) uses it. It’s used by newspapers for web publishing (for which it was originally developed). Generic views, easy RSS/Atom feeds and the new unicode support are my three faves It’s currently at v0.96.

  9. I agree that it’s primarily a language choice issue and that topic all too often leads to language wars. I love Python. I like Ruby. I tolerate PHP. But my current project is a PHP project and we’re looking at frameworks right now. We like CodeIgniter best of what we’ve looked at but we’re checking out the Zend framework before we make a call. There’s also a proprietary, unreleaed framework that we like a lot, too. Can’t talk about it yet.

    Django is amazing. I have never had the opportunity to build anything complex using it, but Python’s elegance combined with Django’s top-flight design make it a framework I’d love to get my hands on one day.

  10. I agree that it’s primarily a language choice issue and that topic all too often leads to language wars. I love Python. I like Ruby. I tolerate PHP. But my current project is a PHP project and we’re looking at frameworks right now. We like CodeIgniter best of what we’ve looked at but we’re checking out the Zend framework before we make a call. There’s also a proprietary, unreleaed framework that we like a lot, too. Can’t talk about it yet.

    Django is amazing. I have never had the opportunity to build anything complex using it, but Python’s elegance combined with Django’s top-flight design make it a framework I’d love to get my hands on one day.

  11. @Dan,

    The large problem with 3rd party frameworks is the auditing factor. Whether it’s open or proprietary, all bad people need to do is find a single hole then google a filename used by the framework such as frameworkname/includes/file.ext and google will spit out a listing of sites using that framework.

    If you can get over the constant patching and updating, then frameworks can be a great tool. The problem is a lot of people that use the “API” code it and forget it, not realizing that they have to update the libraries just as if it were any other framework like Java, Linux /usr/lib/*.so or Windows API.

  12. @Dan,

    The large problem with 3rd party frameworks is the auditing factor. Whether it’s open or proprietary, all bad people need to do is find a single hole then google a filename used by the framework such as frameworkname/includes/file.ext and google will spit out a listing of sites using that framework.

    If you can get over the constant patching and updating, then frameworks can be a great tool. The problem is a lot of people that use the “API” code it and forget it, not realizing that they have to update the libraries just as if it were any other framework like Java, Linux /usr/lib/*.so or Windows API.

  13. I haven’t seen anyone mention another python framework: Twisted Matrix (twisted.web). Is it not as cool as django or are there real reasons why you guys are choosing django over twisted instead of say, never hearding about twisted.web?

  14. I haven’t seen anyone mention another python framework: Twisted Matrix (twisted.web). Is it not as cool as django or are there real reasons why you guys are choosing django over twisted instead of say, never hearding about twisted.web?

  15. Chris,

    It’s odd that you use that as your argument against frameworks, when the same logic can be applied to the programming languages you use. PHP is infamous for its security vulnerabilities.

    Django is a great framework, and by and far the best one out there for Python. I introduced a co-worker to it a few weeks ago, and he’s dropped C#/asp.net as his primary dev platform and has converted over to python because of it.

    While an equally skilled programmer can probably get things done just as fast in Django as they could in RoR, Django has the benefit of Python, which runs just a bit faster then ruby.

    “Chris: how does Zend, Django, and Ruby on Rails compare? When would you use each?”

    It really is all a matter of personal preference. I could argue for or against any of them, all that matters is finding the language and framework that best clicks with you.

  16. Chris,

    It’s odd that you use that as your argument against frameworks, when the same logic can be applied to the programming languages you use. PHP is infamous for its security vulnerabilities.

    Django is a great framework, and by and far the best one out there for Python. I introduced a co-worker to it a few weeks ago, and he’s dropped C#/asp.net as his primary dev platform and has converted over to python because of it.

    While an equally skilled programmer can probably get things done just as fast in Django as they could in RoR, Django has the benefit of Python, which runs just a bit faster then ruby.

    “Chris: how does Zend, Django, and Ruby on Rails compare? When would you use each?”

    It really is all a matter of personal preference. I could argue for or against any of them, all that matters is finding the language and framework that best clicks with you.

  17. As a co-creator of Django I’m obviously pretty biased but the project is definitely going from strength to strength at the moment thanks to the hard work of a whole bunch of talented people. The status update posts on http://www.djangoproject.com/weblog/ are invaluable for keeping tabs with new developments in the framework and the community at large.

    I don’t know if I’d call Django “new” though – it’s two year birthday as an open source project is this month, but initial development as a closed-source framework began in late 2003.

  18. As a co-creator of Django I’m obviously pretty biased but the project is definitely going from strength to strength at the moment thanks to the hard work of a whole bunch of talented people. The status update posts on http://www.djangoproject.com/weblog/ are invaluable for keeping tabs with new developments in the framework and the community at large.

    I don’t know if I’d call Django “new” though – it’s two year birthday as an open source project is this month, but initial development as a closed-source framework began in late 2003.

  19. there’s nothing new about Django, it’s been around for a couple of years at least :)
    Seriously though, application development is about so much more than the flavor du jour. eg. maintainability, availability of skilled developers etc etc the list goes on. there’s a place for most depending on the task at hand, and the expertise you have available

  20. there’s nothing new about Django, it’s been around for a couple of years at least :)
    Seriously though, application development is about so much more than the flavor du jour. eg. maintainability, availability of skilled developers etc etc the list goes on. there’s a place for most depending on the task at hand, and the expertise you have available

  21. The Ruby zealots love Rails. The Python zealots love Django. Etc., etc., etc. Most of the people who say they love one over the other are already strongly biased for the language it uses. Try to find a Ruby lover who says Django is better than Rails (or vice versa). Something about Python and Ruby seem to make people religiously attached to the language and everything about it. I personally have programmed with both languages (and still do) and didn’t find the religion for either one. Of course, I’ve never found a programming language I like enough to feel religious about, so I may be out of the ordinary (when it comes to software developers at least)…

  22. The Ruby zealots love Rails. The Python zealots love Django. Etc., etc., etc. Most of the people who say they love one over the other are already strongly biased for the language it uses. Try to find a Ruby lover who says Django is better than Rails (or vice versa). Something about Python and Ruby seem to make people religiously attached to the language and everything about it. I personally have programmed with both languages (and still do) and didn’t find the religion for either one. Of course, I’ve never found a programming language I like enough to feel religious about, so I may be out of the ordinary (when it comes to software developers at least)…

  23. The best part about using django is that you get python for free.
    Python has tons of libraries that one can use in python and for the framework.
    As a framework, django carries very little flab and was built for “customize-ability”. It gives you enough freedom to use pre-built features or write your own… from scratch or extend teh existing features. What else can one ask for!

  24. The best part about using django is that you get python for free.
    Python has tons of libraries that one can use in python and for the framework.
    As a framework, django carries very little flab and was built for “customize-ability”. It gives you enough freedom to use pre-built features or write your own… from scratch or extend teh existing features. What else can one ask for!

  25. the docs for django are extremely thorough, and fun to go through. with ruby, you have to buy a book or else you’re stuck in the dark.

    personally, i’ve tried both in the last few months and prefer django as well.

  26. the docs for django are extremely thorough, and fun to go through. with ruby, you have to buy a book or else you’re stuck in the dark.

    personally, i’ve tried both in the last few months and prefer django as well.

  27. As a Ruby on Rails developer and the founder of a non-profit dedicated to promoting Ruby on Rails, I can say that django is a framework that I have heard many good things about. Personally I hold to the mantra, “the right tool for the right job.”

    In any case, review the pros/cons of each framework and language, examine how each would (or would not) work in your current environment (technological or political), find what works best for you, and dive in!

  28. As a Ruby on Rails developer and the founder of a non-profit dedicated to promoting Ruby on Rails, I can say that django is a framework that I have heard many good things about. Personally I hold to the mantra, “the right tool for the right job.”

    In any case, review the pros/cons of each framework and language, examine how each would (or would not) work in your current environment (technological or political), find what works best for you, and dive in!

  29. The hot new development framework

    I’m hearing more and more about Django. Pownce uses it. Zooomr uses it. I keep hearing more about it at developer events and seeing more and more developers using it.

  30. “It’s odd that you use that as your argument against frameworks, when the same logic can be applied to the programming languages you use. PHP is infamous for its security vulnerabilities.”

    The difference is this.

    yum update php

    and you’re done, and patched. Usually an automated system like /etc/init.d/yum-updatesd will do it automatically.

    Usually these frameworks have no RPM or .deb associated with them and are not maintained by major repositories.
    Most people will have PHP updated to recent builds without ever knowing it happened and stay safe.

    Not only does this not happen with frameworks, but a lot of the people that use the frameworks will never update them thinking their code is bound to a certain version of the API.

    That is a HUGE difference in my book.

  31. “It’s odd that you use that as your argument against frameworks, when the same logic can be applied to the programming languages you use. PHP is infamous for its security vulnerabilities.”

    The difference is this.

    yum update php

    and you’re done, and patched. Usually an automated system like /etc/init.d/yum-updatesd will do it automatically.

    Usually these frameworks have no RPM or .deb associated with them and are not maintained by major repositories.
    Most people will have PHP updated to recent builds without ever knowing it happened and stay safe.

    Not only does this not happen with frameworks, but a lot of the people that use the frameworks will never update them thinking their code is bound to a certain version of the API.

    That is a HUGE difference in my book.

  32. Nice conversation. Its good to see some programming related stuff happening here. I agree with Robert Dempsey in that its important to find what works for you.

    I’m whats called a language whore – moving from ruby to python to php and back again. Probably should pick one and stop writing Hello World so much.

  33. Nice conversation. Its good to see some programming related stuff happening here. I agree with Robert Dempsey in that its important to find what works for you.

    I’m whats called a language whore – moving from ruby to python to php and back again. Probably should pick one and stop writing Hello World so much.

  34. @Chris, just a couple of points:

    Because most of the popular new frameworks offer extremely flexible and — more importantly — clean URL configuration, it’s much harder to pin down a “signature” URL that identifies them. If there’s no equivalent of “FormMail.pl” or “mt-comments.cgi” or, well, anything with a “.php” on the end, then automated exploits — even when a vulnerability makes them possible — are much harder to run effectively.

    As for packaging, I’ll step up as the release manager for Django and point out there are Django packages in Debian, Ubuntu, Fedora and Gentoo that I know of, and I’m tracking down rumors that there’s one in SuSe now too. I keep on top of who the maintainers are and make sure they know when we release (and that they’ll get as much lead time as we can give them if there’s a security vulnerability). So, at least with Django, the latest release is never more than a “yum” or “apt-get” away.

    And I wonder where you’re seeing the “constant updates and patches”; most of the frameworks I’m familiar with average a couple releases a year, and security patches have been mercifully few; perhaps you’d like to share your experience of some framework releasing so quickly you had to stay on your toes (tracking someone’s development trunk doesn’t count)?

  35. @Chris, just a couple of points:

    Because most of the popular new frameworks offer extremely flexible and — more importantly — clean URL configuration, it’s much harder to pin down a “signature” URL that identifies them. If there’s no equivalent of “FormMail.pl” or “mt-comments.cgi” or, well, anything with a “.php” on the end, then automated exploits — even when a vulnerability makes them possible — are much harder to run effectively.

    As for packaging, I’ll step up as the release manager for Django and point out there are Django packages in Debian, Ubuntu, Fedora and Gentoo that I know of, and I’m tracking down rumors that there’s one in SuSe now too. I keep on top of who the maintainers are and make sure they know when we release (and that they’ll get as much lead time as we can give them if there’s a security vulnerability). So, at least with Django, the latest release is never more than a “yum” or “apt-get” away.

    And I wonder where you’re seeing the “constant updates and patches”; most of the frameworks I’m familiar with average a couple releases a year, and security patches have been mercifully few; perhaps you’d like to share your experience of some framework releasing so quickly you had to stay on your toes (tracking someone’s development trunk doesn’t count)?

  36. When picking a framework, you need to understand your needs, then figure out what the strengths of the different frameworks are, and choose. None of them are the end-all be-all.

    I’ve been fond of TurboGears.org because it’s so flexible (the v2.0 due soon is going to take it to a new level). TG also builds on several existing projects rather than reinvent everything (Python, SQLAlchemy, Genshi, MochiKit, etc.).

  37. When picking a framework, you need to understand your needs, then figure out what the strengths of the different frameworks are, and choose. None of them are the end-all be-all.

    I’ve been fond of TurboGears.org because it’s so flexible (the v2.0 due soon is going to take it to a new level). TG also builds on several existing projects rather than reinvent everything (Python, SQLAlchemy, Genshi, MochiKit, etc.).

  38. I won’t pile on, but the security argument, at least as it applies to Django, is complete FUD.

    Django’s been audited numerous times, both by individuals and corporations (including HP). Each time its passed with flying colors. We’ve learned from the mistakes of PHP; security in Django is anything but an afterthought.

  39. I won’t pile on, but the security argument, at least as it applies to Django, is complete FUD.

    Django’s been audited numerous times, both by individuals and corporations (including HP). Each time its passed with flying colors. We’ve learned from the mistakes of PHP; security in Django is anything but an afterthought.

  40. I tried Django quickly but it lacks in many areas, espeically file uploading. Their “newforms” doesn’t even support it, and it was a terrible mess trying to use their “admin” app to change the uploaded filename to a random md5-hashed string or change the directory to something that isn’t based off of dates (such as model ids). Both of these problems were fixed in six lines in Rails using Rick Olson’s attachment_fu and overriding two methods. Django is good for CMS but if you’re trying to build a web app, use Rails instead. Better helper methods for views, more plugins, and Ruby uses rubygems which allows you to easily manage any gems such as rails and actually delete them as well. Python has nothing like this except for “easy_install” which not every program supports and is flakey.

  41. I tried Django quickly but it lacks in many areas, espeically file uploading. Their “newforms” doesn’t even support it, and it was a terrible mess trying to use their “admin” app to change the uploaded filename to a random md5-hashed string or change the directory to something that isn’t based off of dates (such as model ids). Both of these problems were fixed in six lines in Rails using Rick Olson’s attachment_fu and overriding two methods. Django is good for CMS but if you’re trying to build a web app, use Rails instead. Better helper methods for views, more plugins, and Ruby uses rubygems which allows you to easily manage any gems such as rails and actually delete them as well. Python has nothing like this except for “easy_install” which not every program supports and is flakey.

  42. Chris,
    I’m not sure I quite follow your example in comment #9.

    Don’t most of the frameworks store their application code outside of the public directory? I know django does, and I was under the impression that RoR did. With that being the case, I’m not sure what googling for a vulnerable file would get you.

  43. Chris,
    I’m not sure I quite follow your example in comment #9.

    Don’t most of the frameworks store their application code outside of the public directory? I know django does, and I was under the impression that RoR did. With that being the case, I’m not sure what googling for a vulnerable file would get you.

  44. Of the myriad technology decisions we had to make for fluther.com, django has been our best. The community is extremely responsive, and the biggest positive is that to my coder’s mind, things just *make sense*. Every time I dig under the hood, I’m always impressed.

  45. Of the myriad technology decisions we had to make for fluther.com, django has been our best. The community is extremely responsive, and the biggest positive is that to my coder’s mind, things just *make sense*. Every time I dig under the hood, I’m always impressed.

  46. The Lazy Youth – Part 3

    Programming will never be the same (the Scobleizer). For those of you geeky scaffold folks here are links about call -151 and HP 16C. Btw.: Part 1 of Lazy Youth is here and part 2 is here.

  47. Oliver, I do realize that was humor (and fairly funny, to boot!), but just to clear up any misconceptions: Django has no “scaffolding.” Rails does the scaffolding thing (although I believe it’s purely optional), but Django does not.

  48. Oliver, I do realize that was humor (and fairly funny, to boot!), but just to clear up any misconceptions: Django has no “scaffolding.” Rails does the scaffolding thing (although I believe it’s purely optional), but Django does not.

  49. Somethings I dont like about Django:

    1.0 will most likely not happen until next year (it was supposed to happen last summer and then this summer). Sure a lot of the code is stable and guaranteed to be in 1.0 but some things are still changing and until 1.0 things wont be guaranteed to have backwards-compatibility.

    Their aren’t any useful tools (like radrails or instantrails) for it.

    The only Django book is the one online which is the one they are writing.

    There are no screencasts of anyone showing how they do things. There are blogs with some little snippets of code but thats it.

    No forums are available, you have to use Google Groups.

    Its been hell getting Django installed on Windows, however someone did figure it out ( http://thinkhole.org/wp/django-on-windows/ ), this shouldnt be so hard and should of been documented better earlier on. It’s probably a pain to install on Mac OS X as well.

    All Python books only have 1 small chapter dedicated to talking about Web Development and its so basic its unusable.

    The Django “community/bloggers/developers” seems to be more doing more of their own thing and not sharing info as much as other language “communities” seem to.

  50. Somethings I dont like about Django:

    1.0 will most likely not happen until next year (it was supposed to happen last summer and then this summer). Sure a lot of the code is stable and guaranteed to be in 1.0 but some things are still changing and until 1.0 things wont be guaranteed to have backwards-compatibility.

    Their aren’t any useful tools (like radrails or instantrails) for it.

    The only Django book is the one online which is the one they are writing.

    There are no screencasts of anyone showing how they do things. There are blogs with some little snippets of code but thats it.

    No forums are available, you have to use Google Groups.

    Its been hell getting Django installed on Windows, however someone did figure it out ( http://thinkhole.org/wp/django-on-windows/ ), this shouldnt be so hard and should of been documented better earlier on. It’s probably a pain to install on Mac OS X as well.

    All Python books only have 1 small chapter dedicated to talking about Web Development and its so basic its unusable.

    The Django “community/bloggers/developers” seems to be more doing more of their own thing and not sharing info as much as other language “communities” seem to.

  51. > It’s probably a pain to install on Mac OS X as well.

    Actually, it’d dead simple to install on Mac OS X, since OS X comes with Python, MySQL, and Apache. I’ve never tried it on Windows, though, so I’m sure you’re right about that.

  52. > It’s probably a pain to install on Mac OS X as well.

    Actually, it’d dead simple to install on Mac OS X, since OS X comes with Python, MySQL, and Apache. I’ve never tried it on Windows, though, so I’m sure you’re right about that.

  53. hi frank,

    1) the irc channel and the django-user+dev forums are high traffic, you should be able to get help there
    2) as for editors: there is Vim+plugins, Emacs, TextMate or PyDev(refactoring, code completion, snippets etc.) just to give you a couple of choices
    3) besides the official Django book, there is this in the making:
    “Professional Python Frameworks: Web 2.0 Programming with Django and Turbogears” due in October
    5) I can not comment on windows but on *nix it’s super easy to install
    6) there are some screencasts (not on rails level but still):
    http://www.throwingbeans.org/django_screencasts.html
    http://blog.webfaction.com/django-screencast
    http://www.djangoproject.com/screencasts/model_syntax_change/

  54. hi frank,

    1) the irc channel and the django-user+dev forums are high traffic, you should be able to get help there
    2) as for editors: there is Vim+plugins, Emacs, TextMate or PyDev(refactoring, code completion, snippets etc.) just to give you a couple of choices
    3) besides the official Django book, there is this in the making:
    “Professional Python Frameworks: Web 2.0 Programming with Django and Turbogears” due in October
    5) I can not comment on windows but on *nix it’s super easy to install
    6) there are some screencasts (not on rails level but still):
    http://www.throwingbeans.org/django_screencasts.html
    http://blog.webfaction.com/django-screencast
    http://www.djangoproject.com/screencasts/model_syntax_change/

  55. I work primarily in Ruby/Rails at work and on my own time. I’ve sought out, as a new years resolution, to learn a new language this year. That language is Python (which of course would entail django). I’ve also heard a lot of good things about it, and I can’t say (from experience) that I do or don’t think it’s better than Ruby/Rails. However, I’ve began sifting through a Python book, and I must say, as a beginner, I really, really like the Ruby language a lot more than Python.

    In theory, the open-ended block structures based on spacing/indentation is a great idea, but it’s almost too open-ended for me. I like the closure I get with blocks in Ruby. I absolutely love it’s readability, and it’s simply an amazing language altogether. Of course, it all boils down to an opinion, so I just thought I would share mine.

  56. I work primarily in Ruby/Rails at work and on my own time. I’ve sought out, as a new years resolution, to learn a new language this year. That language is Python (which of course would entail django). I’ve also heard a lot of good things about it, and I can’t say (from experience) that I do or don’t think it’s better than Ruby/Rails. However, I’ve began sifting through a Python book, and I must say, as a beginner, I really, really like the Ruby language a lot more than Python.

    In theory, the open-ended block structures based on spacing/indentation is a great idea, but it’s almost too open-ended for me. I like the closure I get with blocks in Ruby. I absolutely love it’s readability, and it’s simply an amazing language altogether. Of course, it all boils down to an opinion, so I just thought I would share mine.

  57. Frank -

    While “not ready for prime time” yet, I do have a http://www.instantdjango.com up and running, and will soon finish my first tutorial.

    You can download something I call “instant django”, which is a no-installation-required development environment for Django, which runs on Windows. It even runs from a USB thumb drive. It mostly works for the official tutorials on the django project site.

    Check it out, and let me know about any bugs that you find. Don’t forget to read the disclaimer on the my site: I am a total newbie to django.

    -cjlesh

  58. Frank -

    While “not ready for prime time” yet, I do have a http://www.instantdjango.com up and running, and will soon finish my first tutorial.

    You can download something I call “instant django”, which is a no-installation-required development environment for Django, which runs on Windows. It even runs from a USB thumb drive. It mostly works for the official tutorials on the django project site.

    Check it out, and let me know about any bugs that you find. Don’t forget to read the disclaimer on the my site: I am a total newbie to django.

    -cjlesh

  59. “Its been hell getting Django installed on Windows”

    I haven’t deployed on Windows, but getting it running with the dev webserver is really easy, and I’ve had no trouble turning around and running the stuff I’ve developed on Windows under mod_python on webfaction’s hosting.

    I don’t know about screencasts, because, I don’t find screencasts to be very useful, anyway. The pace is always off they are either too slow, or they breeze over something important, and I have to go back over it 10 times to try and make out what happened on the screen. Give me a well written tutorial any day.

  60. “Its been hell getting Django installed on Windows”

    I haven’t deployed on Windows, but getting it running with the dev webserver is really easy, and I’ve had no trouble turning around and running the stuff I’ve developed on Windows under mod_python on webfaction’s hosting.

    I don’t know about screencasts, because, I don’t find screencasts to be very useful, anyway. The pace is always off they are either too slow, or they breeze over something important, and I have to go back over it 10 times to try and make out what happened on the screen. Give me a well written tutorial any day.

  61. DJango was very easy to setup on Windows. Maybe you don’t understand Python at all? You should probably take some time to learn the language and how it works with your OS before attempting to build on a web application on top of it. Sadly the ruby on rails crowd got people started without “knowning” ruby. I am sure it will turn up some great maintainable web applications.

  62. DJango was very easy to setup on Windows. Maybe you don’t understand Python at all? You should probably take some time to learn the language and how it works with your OS before attempting to build on a web application on top of it. Sadly the ruby on rails crowd got people started without “knowning” ruby. I am sure it will turn up some great maintainable web applications.

  63. @Frank

    Django is super-easy to install on Windows: i’ve been using it for development on Windows 2003 Server and XP for over a year now and i never had a problem.

    Provided you have TortoiseSVN these are the steps:
    - checkout Django’s trunk
    - python setup.py install

    That’s it, really!

    If you need a nice IDE be sure to checkout PyDev (it’s an Eclipse plugin) but that’s really a pain to setup. Alternatively you might use Komodo Edit which is not mind-blowing but works fine… BTW wasn’t RadRails dead?

    L.

  64. @Frank

    Django is super-easy to install on Windows: i’ve been using it for development on Windows 2003 Server and XP for over a year now and i never had a problem.

    Provided you have TortoiseSVN these are the steps:
    - checkout Django’s trunk
    - python setup.py install

    That’s it, really!

    If you need a nice IDE be sure to checkout PyDev (it’s an Eclipse plugin) but that’s really a pain to setup. Alternatively you might use Komodo Edit which is not mind-blowing but works fine… BTW wasn’t RadRails dead?

    L.

  65. I think the most important question would be: how scalable a framework can be ? we are using Django but not sure if it can hold very high load … any experience ?

  66. I think the most important question would be: how scalable a framework can be ? we are using Django but not sure if it can hold very high load … any experience ?