[Grok-dev] Teach me Grok
sebastian at urbantalk.se
Thu Apr 10 03:18:10 EDT 2008
I am no hard core developer, but I will give you my view anyway.
10 apr 2008 kl. 02.01 skrev Jonathan Ellis:
> Okay, that's a big subject. :) Let me narrow it down to something
> hopefully more manageable:
> * Grok offers a lot of building blocks for your web application.
> * Grok is informed by a lot of hard-earned wisdom.
> What are some specifics? What does Grok give me that, say, django
> does not?
Zodb is excellent for storing randomly and semi-structured data. The
value of this is easily underestimated if you are used to only working
The plugability of the component architecture is really solid. This
touches every corner of the framework.
All the components of the framework are well documented on a code
level. If you don't mind reading the doc tests, you'll be jocking
cutting edge stuff as well as those parts that are covered by higher
level documentation. (Even I manage to read that stuff at times...)
> My impression is that in the past couple years the rest of
> the world has rapidly caught up to zope3; is that incorrect?
I would say it is the other way around. Zope 3 has (through Grok and
other improvements) caught up with the rest of the world in terms of
I doubt any framework will catch up with Zope 3 by incremental
improvements. It requires a total rewrite (in the same way as Zope 3
is a rewrite of Zope 2). Zope 3 is a component based framework from
the origin, the others are not.
Where Grok/Zope3 might be lacking is in the get-your-admin-interface-
for-free department and out-of-the-box UI-goodies. The prior is not a
biggie for me, but the latter is a bit of a bummer. UI-elements will
tend to be unpolished = you have to polish them yourself.
Grok/Zope3 is also a different mindset. Once you nail it, the code is
compact and efficient, but it can be a mind twister.
> Question 2, to people who came to zope via grok instead of the other
> way around: how quickly did you find you had to learn about zope3 gory
> details? I.e., how leaky of an abstraction layer is Grok?
I learnt Grok first (coming from Zope 2 TTW-development...). My
impression is that the abstraction layer is very solid. If you look at
the Grok code it is often quite trivial but the effects in terms of
increased usability are great.
Another factor is that you could at any time refactor the application
to be a vanilla Zope 3 app, although the general consensus on this
list is that you really shouldn't have to.
More information about the Grok-dev