Hi folks -- I had a conversation this morning with one of my clients. In the interests of being a good corporate citizen I'll refrain from mentioning who other than (a) they're big (Fortune 1000), (b) you've heard of them, and (c) they're using Django.
Before our chat, they'd invited any engineers internally to bitch about Django, and they shared some of the pain points they'd come across. I took some notes; the really good news is that it's a short list, and we already know about most of it. Before I share the list, I should mention that I'm not arguing we have to immediately devote resources to these problems, nor even that we have to solve them. I'm sharing this just as food for thought, and as a perspective from a class of developers who mostly don't participate in our process at all. So: The main issue they have is multiple database support. Music to my ears (and especially Alex's :) since it looks like 1.2 will solve most (all?) of their issues. My main takeaway from this point was that the best way to please companies like this one will be to ship 1.2 on time. Which will happen. So we rock. The next big one was the "startup signal" issue -- they've got lots of code that needs to run at startup time, and there's no great mechanism to do that currently. The core devs have talked about this one a *lot* over the years, and it's obviously a hard one -- for one, there's no clear definition of what "startup" means -- but a common theme seems to be that bigger, more complex applications need some way to cleanly run one-time, expensive startup tasks. Next, we discussed the difficulty of maintaining large installations with multiple sites, a plethora of apps, and unspeakable possible combinations thereof. Django's settings mechanism is simple and easy to use, but once you have hundreds of sites it starts getting really tricky to keep things in sync across hundreds of settings files. We talked at some length about different possibilities for dynamic settings infrastructure; this would especially come in handy for folks wanting to build application servers/services like App Engine or the nascent Toppcloud. <digress>If you've not yet checked out Toppcloud, do so now. I'll wait.</digress> Finally, we ruminated over the difficulties in building rich internet applications. Sure, writing HTML/CSS/JS/Python/SQL by hand works fine, but we doesn't really have a good answer for the people who want something IDE or GUI-ish. Meanwhile, Adobe and Microsoft are putting all sorts of marketing dollars into Flex/Silverlight, and although HTML5 can do some amazing things, the lack of tooling is a big danger. (I've written at more length about this in the past: http://jacobian.org/writing/snakes-on-the-web/#s-rich-web-applications). Of course, there may not be much us backend folks can do about this problem -- I'm certainly not enough of a GUI application guy to be able to even start to think about this problem -- but the lack of an end-to-end solution will nonetheless put some off from writing web applications with open source tools. So there we are. This is very much a brain dump, and I don't really expect any concrete action to result from it. However, I found some really interesting stuff there, and I thought I'd share. Jacob
-- You received this message because you are subscribed to the Google Groups "Django developers" group. To post to this group, send email to django-develop...@googlegroups.com. To unsubscribe from this group, send email to django-developers+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/django-developers?hl=en.