[Zope3-dev] what is ZCML?
Martijn Faassen
faassen at infrae.com
Wed Mar 15 07:04:00 EST 2006
Shane Hathaway wrote:
> Jim Fulton wrote:
>
>> Shane Hathaway wrote:
>>
>>> +1. When I learn a skill, it is at first completely explicit, and as
>>> the skill becomes predictable and reliable, it gradually becomes
>>> implicit. If I kept everything explicit, I would hinder myself from
>>> building higher level skills.
>>>
>>> So explicit is better than implicit until a sufficiently tight
>>> abstraction comes about. Take memory management: yesterday it was
>>> explicit (malloc/free); today it's mostly implicit (garbage
>>> collection). Garbage collection is both an abstraction, since
>>> programmers no longer manage memory directly, and an indirection,
>>> since programmers now use APIs that call malloc and free. We all
>>> agree GC is good, so explicit is definitely not always better than
>>> implicit.
>>
>> Thanks for explaining "Explicit is better than implicit,
>> except when it's not."
>
> Admittedly, I should have posted that in my blog, not here. :-)
I appreciated you making it explicit, Shane, even though I already knew
and fully agree. :)
I sometimes express this principle as "magic is bad unless it's perfect
magic". Do post it on your blog.
Regards,
Martijn
More information about the Zope3-dev
mailing list