[Grok-dev] Re: Benefits of Grok -- please contribute
Martijn Faassen
faassen at startifact.com
Tue May 15 14:51:54 EDT 2007
Hey,
And the second half:
Sebastian Ware wrote:
> 4 What are the benefits of choosing Grok (over "competing" frameworks)?
Flexibility, and evolvability. These are very strong points. If you
write code using the component architecture, it tends to stay more
flexible later on. An existing application can have its behavior
modified without modifying the application's code (a lot). The component
architecture also offers a general way to make your own applications and
frameworks pluggable.
The already discussed two-edged sword of the ZODB. Really simple object
persistence is really great to have. I think Grok, by using the ZODB,
can be fundamentally simpler than any framework which uses a relational
object mapping.
I've been looking at the internals of Django a tiny bit and I see much
metaclass code that scares me. I grokkers are much simpler to ensure
component registration - your objects are far less magic. Systems like
Django (or for instance, widgets in the ToscaWidget framework) use quite
a bit of automation that looks somewhat scary to me. Normally this kind
of abstraction makes you productive, but when it does, you're scratching
your head.
That I think Zope 3 and Grok are less magic is probably partially due to
perspective - I'm used to our way of doing things. That said, I do think
Zope 3's explicitness and clearcut component and configuration systems
help in reducing magic.
> 5 What might be considered drawbacks with Grok compared to "competing"
> frameworks?
Relational object mappings have advantages in advanced query
construction and also relational databases are more widely understood.
Grok doesn't support this yet.
Zope 3 has a complexity drawback compared to some of these other
frameworks, at least in getting started and rapid development. Grok aims
to do away with this drawback, however. :)
> 6 If someone explained Grok in an article or review in a single
> paragraph, what would we want it to say?
Uh, I will need to examine the about grok page again. :)
> 7 If I described a "beginner" Grok newbie, what features in Grok would
> interest him the most?
Ease of use while knowing there's great power available. Easy form
generation. Transparent persistence.
> 8 If I described an "advanced" Grok newbie, what features in Grok would
> interest him the most?
Flexibility and evolvability over time. Community's understanding that
things should be easy to get into *and* cleanly built *and* powerful.
Grok has the benefit that we have a central architecture in place
(component architecture and grokker infrastructure) that helps with
constructing such code.
> 9a Is there a silver bullet? (Something that if one gets it, just puts
> Grok in a class of itself with regards to competitors)
There is no silver bullet. :) Key benefit?
Grok should be just as easy as the competitors, but offer more reusable
components and more flexibility, allowing you to construct great
software now that will age well.
Regards,
Martijn
More information about the Grok-dev
mailing list