Over the last few weeks, we used Django to successfully create
prototype applications and it just worked great (well, large file
upload is broken, I had to patch our Django version with #2070 a
couple of times). What a relieve compared to Java web development! A
big "thank you" to all developers and this friendly user group.

However, to sell Django to my management for "real" applications, it
would be very helpful to have some kind of road map. We miss the
structure and guidance ;)

I'll try to explain my feelings:

There's no 0.97 version despites all that changes to SVN trunk for
months. The documentation clearly advertises the current trunk
version, but the book refers to 0.96. The django book project seems to
have died in Feb. The site does not explain why the missing chapters
where never written/published and what the current state is.
(Important) changes to the queryset API or admin UI are not applied in
favor to some branched development which seems to be ongoing for
months. No word on when it will hit the trunk. No word on when the
next Django version will be published. Or what it will contain. Bugs
like #2070 are open for more than a year. Of ~800 open tickets, 275
need a design decision, that is need the attention of the core team.
There are still 12 tickets from the last sprint (great effort, BTW)
left to check-in. The casual observer easily gets the impression that
work is sporadic, uncoordinated and not target-oriented, in one word:
chaotic.

While this is no problem in it self (and please do not feel offended,
that's not my intention), it makes it difficult to build products upon
that foundation. Is it useful to invest in the old admin UI? Or should
we go for the new one? When will the query API be improved (we need
aggregations, so I have to patch it)? Will there every be schema
evolution?

A lot of open source projects switched to a time boxed release scheme
because that builds the most trust with users. If the Eclipse
foundation (for example) publishes its mile stone road map you can be
sure they will meet the date and release on time. IMHO one of the (not
so secret) secrets of their enormous success.

The counter-example is the trac project which tells everybody that
they're now 3 months late with 0.11 and even have missed the next
milestone, too. This tells everybody "hey, we're not able to implement
a realistic schedule and are not even able to update our web page
after we learned that" ;)

So, I'd recommend to create a realistic road map. Release every two or
three months. 0.96 or 0.97 communicates that it's almost done. That's
obviously not the case. Just increment a single number. Tell your
users when they can expect larger refactorings. If the problem is lack
of time, try to find sponsors. The current "it's done when it's done"
state of mind makes it difficult to invest in something we do not know
whether, when and how it will evolve.

Should I manage to convince my management to continue using Django, I
should be able to dedicate one day per month to community work. That's
what I can offer in return to using the framework.

[As a side note: I actually have to defend Python/Django against Ruby
on Rails because that's the "nextgen agil" framework even the
management heard about and, frankly, it feels much more mature. This
is another reason I'd like to have something more concrete than
Django's ticket system. I originally picked Django because teaching
and learning Python was much easier than teaching Ruby and the magic
of Rails.]

One idea I was playing around in my mind was to create some kind of
"Django distribution", snapshotting the SVN version every month or so,
perhaps adding a few useful 3rd party libraries and creating a ready
to use and easily installable milestone version. That would be useful
for others too, I hope, but I do not want to fork or split the
development. However, I need some patches applied for our own work
faster than in the official version.

I'd like to know whether others feel the same and would like to see
(and discuss) a focused road map or whether it's just me who cannot
appreciate the creativity of chaos ;)

Thanks for reading my ramblings...

-- 
Stefan Matthias Aust

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Django users" group.
To post to this group, send email to django-users@googlegroups.com
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/django-users?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to