Agile Development : Better software through craft
Updated: 01/03/2003; 1:35:00 PM.

 

Subscribe to "Agile Development" in Radio UserLand.

Click to see the XML version of this web page.

Click here to send an email to the editor of this weblog.

 
 

Tuesday, December 31, 2002

Stefano Mazzochi (via Sam Ruby) states the case eloquently for small increments of code in an open source project.

"The hardest and best the code is, the more harm it creates to the
community; this is because people will rather use the software rather
than extend it. Normally, if more than one blackboxware submission is
donated, the community will ask for a complete refactoring. (see
Xerces2)"

This is a great insight.  Every time this has happened on a project that I am working, the incentive to stay away from that code has been high.  When a large chunk of code drops in (I would argue even if it is relatively easy to understand) it creates a large barrier to understanding and thus to extension.  Now this may be a virtue if you don't want extension:), but if the expectation is that things will be changing over time then incrementalism is a good friend.

"The good old Software Engineering practices they teach you in college
are bullshit: making architecture decisions without continous
reversibility is expensive because design constraints change too much.
Those who want to apply hardware engineering practices miserably fail.
Open source is here to prove that such a "messy" way to do code is
actually the only one that works and scales."

This is another key insight.  Architecture as an emergent property rather than a static set of constraints or characteristics.  This is particularly important where adaptation is more important than optimization (see Jim Highsmith  here). I like that! Architecture should follow design whenever possible to allow the system to evolve rapidly to where it wants to go.  Build it often, build it to run, make sure you can always go back to what ran previously. 

 


10:05:46 AM    

© Copyright 2003 Craig Johnson.



Click here to visit the Radio UserLand website.

 


December 2002
Sun Mon Tue Wed Thu Fri Sat
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31        
Nov   Jan