[Grok-dev] Re: Benefits of Grok -- please contribute

Martin Aspeli optilude at gmx.net
Wed May 16 14:52:12 EDT 2007


Kevin Teague wrote:

>> 9a Is there a silver bullet? (Something that if one gets it, just puts 
>> Grok in a class of itself with regards to competitors)
> 
> The Zope Component architecture. Grok provides a very strong story for 
> code reuse and maintainability. So often I see/hear the debate of Strong 
> Typing versus Dynamic Typing - Java proponents who find Python and Ruby 
> messy because you need to peek into the implementation to deduce the 
> intent of some code. Python and Ruby advocates who are horrified by the 
> reams of code generated by Java and it's IDEs. zope.interface addresses 
> many of the concerns of a typical Java developer, namely, "How do I use 
> this object, what does it's methods expect, what do they return and what 
> attributes does it have? Be specific.", while still staying within the 
> wonderful realm of the best dynamically typed language out there.

I really like that phrasing. It's quite similar to the improvement we've 
seen in terms of code re-use and manageability in Plone when adapting 
more Zope 3 stuff.

Of course, Grok is less interface-centric than most "plain Zope 3" stuff.

I do think this is a story we should articulate with some well-placed 
examples. For example, when is it worth defining interfaces and 
components explicitly? How are they factored out into separate packages? 
How are these used? Where is the benefit of re-use and pluggability 
being applied?

>> 9b Is the silver bullet easy to explain?
> 
> No. And trying to explain interfaces and adapters to a web dev newbie 
> just makes them feel like the silver bullet is pointed at them :(


Excellent. :-)

Martin



More information about the Grok-dev mailing list