Ruby on Rails looks tempting too with its own nifty magic but I'm just afraid the step into "raw mode" is going to be too big. Like Plone, if you just do what you're told you can do you're getting brilliant results but anything more exceptional than that and you're back to more trouble than if you had done it without a framework.
Hello, I'm in the same dilemma
Actually I'm using Django for my pet projects and I'm happy with it, but with all my honesty, if just grok would lack a bit less in terms of documentation (Django is fully documented instead) I would be with grok today. If it's true that Zope Component Architecture is initially hard to grasp it's also true that once you got it you are enabled to write well structured code that is ready to be extended/reused/maintained (isn't this a dream in the topten of us programmers?).
OTOH Django has something that grok will probably have just in the long period (hopefully): a vibrant, large and responsive *user* community.
Finally, I think that they both are great frameworks that worth a try, but IMHO the best choice is to mediate between them and use the best of which each one has to offer. At this aim, I'm actually trying to understand better zca and if it's possible to use it with django. At least in theory it should be possible and there is something about it on the web I'm going to read (http://www.stereoplex.com/two-voices/adapters-in-django-and-the-revenge-of-zope).
We chose for Plone 2 years ago, versus RoR.. and I think we're regretting it now. Not only do we have a lot of ideas (such as collaborative, social elements, speficic url requirements etc) but I sometimes feel we need to hire "the world's leading Plone magician" to get things done. Django on the other hand gives us much more choice, if ever.. the magician and us do not get along, or we need more magicians or whatever.
So unless we stay in the Plone system, exactly as it was designed for, we also feel we're spending a hell of a lot more time tweeking/working around it.. than if we could do it from scratch.
Any ideas you have on comparing Plone/Zope with Django would be very much appreciated though !
I don't think it's fair do compare Plone with RoR or Django. Plone is a content management system whereas RoR and Django are application frameworks. Sure, you can twist Plone to make it do whatever you explicitely want to do but if you're going to build something that has nothing to do with editing content and workflow and stuff then why bother?
Plone is in my eyes one of the best looked after open source project in the world. The only project to have a stand at PyCON 2010 and it's still very actively supported and developed. But it spits out content management systems, not web apps.
how about a followup on this?
Looking at your plog, this was the very last post about Grok, while Django even has its own category by.
Could you elaborate on the decision (if there was any formal decision) between them?
It's really quite simple: I couldn't get productive in Grok. In Django I could.
With Grok there was just too many hoops to go through and it was too anal about getting things right before you could actually build something. One example, with Django it reloads automatically when I change the code; with Grok I could never get that to work. Restarting would take seconds which is not an option in development mode.
Also, there's the "business perspective" on it. With Django there's loads of ready made plugins that are super easy to integrate meaning you don't have to write everything from scratch (albeit tempting). There are fewer people doing Grok too meaning there's less eyes on the code and fewer people available to help you when you get stuck.
Django has flaws and it's not perfect. But when it comes to delivering results my mind is dead set: Django rocks!