[Zope3-dev] Re: Zope 3 web root

Shane Hathaway shane at hathawaymix.org
Sat Feb 18 00:10:41 EST 2006


Gary Poster wrote:
> To each his own, I suppose, but I'm surprised you included File in  the 
> rant-list.  Lots of non-web-design uses want that.  We've had our  
> problems with big blobs, but they should be addressed, and in the  core, 
> and files should be probably included either in the core or as  a 
> well-maintained, highly-used, shared addition.

Yes, that's a valid point.  I also stopped myself from listing folders, 
since a folder is a general organizational tool.  Let's just talk about 
templates and scripts.

> As to the rest, while I think I understand at least a good chunk of  the 
> genesis of your statement, I'm glad that the component system  *will* 
> allow others to explore ZODB-based TTW dev as an add-on, as  you 
> suggested in a later message.  You meant it in a derogatory  sense, but 

Actually, I didn't.  I only meant it in a separation-of-concerns sense.

Incidentally, I find it difficult to make any argument about anything 
because I fully appreciate many sides of the issue. :-)

> one could argue that ZODB-based TTW dev got to be so  problematic 
> *because* it was so successful.  There are strengths there.
> 
> That said, I'm eager to see what you might think up as an  alternative: 
> I think both paths might be fruitful.

The web root is my best idea for an alternative.

Although I've been talking about addressing the needs of new adopters, 
I'm really trying to address *my* needs.  I want to build a complex web 
site using Zope technologies, but I don't yet know enough about what I'm 
building to be able to do any model/view separation.  I intend to write 
dirty, filthy, unmaintainable code.  It's the right thing to do!  If it 
works, I'll clean it up.  If it doesn't, I'll throw it away and try 
something else.  If I write it with Zope technologies, I know I can 
succeed at cleaning it up because Zope has the most powerful tools out 
there.  If I write it with Apache, I'm certain I'll end up building my 
own framework to support whatever flavor of messiness the solution 
generates, it'll take twice as long, and it will be impossible to clean 
up, so I'll have to start over if I want it to last.  Gimme Zope!

While I'm writing messy code, I also invent messy processes along the 
way, and ZODB can't easily support my random new processes.  I often 
write automated tests for messy code.  I often think to myself, "what is 
the ugliest possible way I can write this?"  Then I really do it and 
laugh.  That gets me moving when I'm stalled.  Sometimes I rewrite 
something ten times, relying on version control to get me back.  It 
turns out that the CMF skins tool is much better at supporting this kind 
of work than Zope 3 currently is.

I want Zope to encourage clean code just like everyone else, but 
interesting things rarely start out clean!  If Zope wants to be a 
platform that people can use to invent crazy new things, it has to allow 
for messy code and processes.

Shane


More information about the Zope3-dev mailing list