Chris Withers chrisw@nipltd.com
Fri, 28 Jul 2000 21:36:57 +0100

Shane Hathaway wrote:
> So PTKBase should be a toolkit while PTKDemo is a framework built from
> that toolkit.

Yes :-)

And SquishdotPTK would be a framework that maybe added some more 'bits'
to the toolkit. I can't actually think of any it would need to add.
Document, Discussable and Workflow would cover what's currently needed.
ZMailIn will be needed later on (but should be optional) and maybe some
more bits...

> As I look over PTKBase and PTKDemo, I see little evidence of
> separation.  I wanted to move the five basic content types from PTKBase
> to PTKDemo, but discovered that DiscussableItem inherits from Document,
> one of the content types.  This means either PTKBase would depend on
> PTKDemo or all the Discussable code gets moved to PTKDemo.
> "Discussable" should be a feature of PTKBase, not PTKDemo.  This is
> evidence of an architecture problem IMHO.

Yeah, I think it was Dan Pierson who explained these problems to me a
coupla weeks back...

> So I came up with an idea.  What we want to be able to do is have a set
> of "tools" at the base of the portal.  These tools would include:
>   - Membership database
>   - Workflow attribute access
>   - Discussion access

That covers everything I need, Squishdot might add Polls at some point,
but the could be a seperate block...

<snip how to do the above to start with>

Sounds cool.

> Basically, where PTKBase currently uses subclassing to achieve
> membership (as opposed to simple users), workflow, and discussability,
> we should instead use singleton objects that add capabilities without
> subclassing (although the initial implementation will make use of
> existing subclasses.)  I think this is exactly what Phillip's vision is
> for ZPatterns.

Sounds very cool... How big a part do you see ZPatterns
(Pluggins/DataSkins ;-) playing in all this?

I can't help but notice that the extrapolation of this is a set of Zope
products providing what is in PTKBase with PTKDemo becoming 'The PTK' 
So, from my point of view, there wouldn't be a 'SquishdotPTK', there
would be 'Squishdot' which required a set of Zope products that happened
to be previously called PTKBase.

Does anyone else agree?

I reckon this model would fit in really well with the proposed product
install system on dev.zope.org. So you would 'download and install' 'The
PTK' (probably needs a new name ;-) or 'Squishdot' which would require a
set of products, that might be the same, but use them in different ways
and layer a different UI over them...

What do people think?