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.
"Spicklemire, Jerry" wrote: <snip very good points about DTML's problems>
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.
-- absolutely priceless :-) Chris
participants (2)
-
Chris Withers -
Spicklemire, Jerry