[Bioperl-l] Refactor mercilessly

Jason Stajich jason@chg.mc.duke.edu
Tue, 16 Jan 2001 18:00:14 -0500 (EST)

On Tue, 16 Jan 2001, Hilmar Lapp wrote:

> I found some thoughts about code refactoring at
> http://www.extremeprogramming.org/rules/refactor.html. As we are
> experiencing something similar with Bio::Root::*, what do people think
> about the points made there with particular regard to Bioperl? I enclose
> some quotes from that page.
> 	Hilmar
I like XP for bioperl, but I ask who are our users as users are supposed
to drive the product?  It seems to be the users are also the system
developers.  So I think we have to stop occasionally and ask - what do I
want to be able to do with this system/api?  This is where some of the
list subscribers who don't want to develop code can really help out by
identifying areas that bioperl needs to focus on or where needs aren't
being met.

> <quote>
> We computer programmers hold onto our
> software designs long after they have become
> unwieldy. We continue to use and reuse code that is
> no longer maintainable because it still works in some
> way and we are afraid to modify it. 
> [...]
> Refactor mercilessly to keep the design
> simple as you go and to avoid needless clutter and
> complexity. Keep your code clean and concise so it
> is easier to understand, modify, and extend. Make
> sure everything is expressed once and only once.
> [...]
> There is a certain amount of Zen to
> refactoring. It is hard at first because you must be
> able to let go of that perfect design you have
> envisioned and accept the design that was
> serendipitously discovered for you by refactoring.
> You must realize that the design you envisioned was
> a good guide post, but is now obsolete.
> </quote>
> -- 
> -------------------------------------------------------------
> Hilmar Lapp                            email: lapp@gnf.org
> GNF, San Diego, Ca. 92121              phone: +1-858-812-1757
> -------------------------------------------------------------
> _______________________________________________
> Bioperl-l mailing list
> Bioperl-l@bioperl.org
> http://bioperl.org/mailman/listinfo/bioperl-l

Jason Stajich
Center for Human Genetics
Duke University Medical Center