[Zope-dev] Re: /, XML, DTML syntaxgeddon

Spicklemire, Jerry Jerry.Spicklemire@IFLYATA.COM
Fri, 18 Aug 2000 11:47:40 -0500


Hi Folks,

As for "re-doing" DTML, there's a cogent point made in Extreme Programming
circles that goes something like this:

"Names matter. For every time someone writes (types?) the name of an object,
it will be read 10 times. Pick Good Names."

Much of the DTML confusion arises from "names" that look like they were
chosen to save typing effort. That may be OK for a project that will never
be used by more than a small handful of folks who can answer questions for
each other, but Open Source Zope is going on it's second birthday now. Too
many newbies keep stumbling over things like "_", which should have been
named something meaningful quite some time ago. But that's just one example.
Instead of x vs. "x", how about render(x), or x.render(), and execute(x), or
x.execute(). 

Maybe expr="x" and name="y" are clear to someone, but what matters to me is
what process is going to be carried out on x and y, and I can't tell that
from reading DTML. I do understand that one of the points of OO is that I
shouldn't have to know the details of the actual process that happens when I
hand one object to another. 

Ironically, as things are, I have to "know" anyhow, in order to get things
working. But the worst part is, even after working through many examples of
complex DTML, this stuff is still not "obvious". The greatest mystery to me
is how something this obscure could have possibly been written in Python,
which is about as obvious as code gets.

Still Zopin',
Jerry S.