[Grok-dev] Re: What is Grok anyways... time for a name change? :)
optilude at gmx.net
Wed May 9 18:08:40 EDT 2007
Sebastian Ware wrote:
Disclaimer: All of this in my opinion, and I'm not a Grok core developer
or even a Grok user in any serious capacity.
> If I hadn't spent hours of research and a great deal of time with
> Zope 2, I would never have understood what relationship Grok has to
> Zope 3.
That's probably a marketing thing. Also, bear in mind that Grok is
really very new. :)
> Whereas this might be due to my personal limitations, I think
> it is mainly because of the choice of identity.
Sure. But identity != name, necessarily. I think the name "Grok" is very
cool. It has a semantic meaning ("to grok something", which at least
people I speak to would understand in colloquial terms), which is
related to its purpose (making it easier to understand and use Zope 3
technology). It has an identity - the caveman, which is already spawning
a sub-culture of its own (GrokStar, HerdOfMammoths...).
> What is Grok? A tool for cavemen who want to use Zope 3? Doesn't
> sound very comforting.
It doesn't? Comforts me plenty. :) If I can be productive without being
smarter than a caveman, that makes me very happy.
Why is it discomforting?
> I am still not entirely sure -- what is Grok?
Maybe that's because it's evolving? Maybe it's something the Grok
developers need to make more clear on the website. For now, think of
Grok as a project which is rapidly producing a (small) framework and set
of patterns for increasing your productivity and letting you take
advantage of the incredible power of Zope 3. At least, that's how I
think of it.
> As Zope 3 evolves, does Grok evolve too?
Of course. You can use any Zope 3 component from within a Grok-based
application. At least, that should be the aim.
> In an other direction?
There are some choices that differ from those building "pure" Zope 3
applications. Mostly, that's about configuration of components. In a
"pure" Zope 3 world, you do that with ZCML and interfaces. If you use
Grok, you'd probably start with some base classes and
convention-over-configuration concepts and evolve more generic things
only as necessary, and probably stay away from ZCML, at least to to
> stuff for Zope 3 work with Grok?
> From an identity point of view, the clear separation of the Grok
> (name) from Zope 3 results in neither effort helping the other. What
> would you rather evaluate:
> -Turbo Gears
> -Zope 3
None of those names leap out at me as being particularly good or bad.
They are also largely orthogonal things, not directly comparable.
> When in fact Grok and Zope 3 are based on the same mature code base
> and could be evaluated as two development styles -- whatever suits
> your shop. And the connection could be reflected right in the name
> such as "Grok-on-Zope3". Now THAT would make it a lot less like Yet
> Another Python Framework... and a lot more like... hmmm...
> intereseting... what's the twist?
Beh, that name sucks. An obvious throwback to Ruby-on-Rails, except not,
because Ruby is the language and Rails is about alliteration.
> Rounding off with a small Yet Another Python Framework warning...
> "YAPF is a web application framework for Python developers. It is
> aimed at both beginners and very experienced web developers. YAPF has
> an emphasis on agile development. YAPF is easy and powerful."
> ...only the original swaps GROK for YAPF... ;)
Sure. But that's open source. I'd contest that Grok is quite different
from TurboGears or Django or Pylons, though. It's about taking something
with a very long history (Zope 3, which itself is learning the lessons
from Zope 2), and making it more accessible and easier to get started with.
Grok is not "using" Zope 3. Grok *is* Zope 3, in that you have the full
Zope 3 stack behind you. However, Grok helps you decide how to use the
Zope 3 components, by promoting certain patterns and providing certain
tools to make your life easier, giving you a smaller initial learning
curve and a better starting point.
It's not about inventing radically new concepts, nor, I suspect, about
writing lots of code. The Grok developers are also Zope 3 core
developers. I suspect that's the way it stays.
More information about the Grok-dev