[development] Proposed Apocrypha
Greg Knaddison
greg.knaddison at gmail.com
Thu May 7 15:25:53 UTC 2009
On Thu, May 7, 2009 at 9:12 AM, Ivan Sergio Borgonovo
<mail at webthatworks.it> wrote:
> On Thu, 7 May 2009 09:23:48 -0500
> Jeff Eaton <jeff at viapositiva.net> wrote:
>
>> Crell's Law: If an API must be use-case-optimized, make it
>> swappable & tailor the default for cheap shared hosting. High-end
>> sites can swap.
>
>> Eaton's Corollary: If an API is swappable, write two
>> implementations. APIs with one test case are rarely flexible
>> enough for the second.
>
> If you want to make stuff swappable start at least with 3
> implementations otherwise 2 will just be a special case of 1.
We have to temper the ideal with reality. We have several swappable
systems in Drupal (database, mail sending, caching, others?) and as
far as I know only one of them has multiple backends in core
(databases). We are able to have multiple backend for databases, but
it takes a lot of effort. I doubt we have the capacity to create not
just 2, but 3 implementations for all of the other swappable items in
core. There's also the question of baggage. Do we really want to
merge SMTP [1] and Fastpath FSCache[2] into core? Would that be a
total improvement? Would the additional complexity (usability
decrease) be worth it just so we can satisfy a desire to properly test
that APIs?
And three cheers for Crell's Law and Eaton's Corollary.
Cheers,
Greg
--
Greg Knaddison | 303-800-5623 | http://growingventuresolutions.com
Cracking Drupal - Learn to protect your Drupal site from hackers
Now available from Wiley http://crackingdrupal.com
More information about the development
mailing list