Global in multiple files

Alex Martelli aleaxit at yahoo.com
Mon Jun 11 15:00:40 EDT 2001


"Don Dwiggins" <dwig at advancedmp.net> writes:
    ...
> > There is a serious risk in over-designing systems "because
> > one day it might be handy".  Yeah, right, but meanwhile you're
> > paying the price of complexity *RIGHT NOW*!-)
>
> > "Do the simplest thing that could possibly work", because
> > "you ain't gonna need it" (where "it" is the rich, complex,
> > over-engineered, over-designed very general solution:-).
>
> > See http://c2.com/cgi/wiki?YouArentGonnaNeedIt ...
>
> I agree.  And while you're there, check out the other Extreme Programming
> principles.  To me, the thing that makes this principle "work" is its
> combination with the other principles (most directly "Refactor
> Mercilessly").

The synergy between the various XP principles and practices is
one of its most interesting aspects.  Pairwise programming feeds
into simplicity-seeking, exhaustive testing secures refactoring
isn't breaking things, etc.

But the risk of over-ambitious, over-general design is not one
that XP "invented" (or even "discovered":-) -- it's there all the
time.  Simplicity and refactoring are XP's recipes against this
risk, but the risk is there no matter what (indeed, it's surely
higher the heavier and more invasive your process... in any
sort of design-it-all-up-front "waterfall", it's _ruinous_:-).


> Also, remember that "simplest thing" doesn't mean "the first thing that
> comes to mind".  It can take some serious contemplation to come up with
the
> simplest thing.  Einstein's advice is also useful here: "make things as
> simple as possible, but no simpler".

No doubt.  Some are born to simplicity, some have simplicity
thrust upon them... and some *achieve* simplicity with much
toil.  But remember the specifics of what we're talking about:
taking a simple list and overgeneralizing it into an ambitious
"user-administration subsystem" (and this, *WITHOUT* solving
the issue that the original poster had asked about...!-).


Alex



_________________________________________________________
Do You Yahoo!?
Get your free @yahoo.com address at http://mail.yahoo.com





More information about the Python-list mailing list