OT: PSP, XP, TDD and other methodologies for solitary programmers

holger krekel pyth at devel.trillke.net
Thu Jan 2 18:03:30 CET 2003


Peter Hansen wrote:
> Brad Clements wrote:
> > 
> > I'm looking for war stories, comments and insight regarding suitable
> > development methodologies for "lone wolf" programmers.
> > 
> > I'm intrigued by TDD and have started "test first, code second" on an
> > in-progress project (a large Zope/Python monster that is a wart-on-a-wart, a
> > bag-on-a-bag). Fortunately conversion to SAPDB is giving me an opportunity
> > to clean house.
> 
> I have been using all aspects of XP which are not obviously useless with
> solitary programmers (pair programming being the obvious one, and stand-up
> daily scrums being another :-) with great success.  By far the most useful
> on has been to adopt TDD.

thanks, peter.  you contributed quite a lot to my adoption of Test Driven
Development.  There were some other forces (e.g. i was taking
part in zope3 sprints) but you have a good share.  

Write-tests-first has changed my programming attitude forever
and for the better.  Of course, in the previous 20 years i have done
assembler, C, C++ and Java so it wasn't as obvious to try earlier
but with python.  After all, python is a perfect match for 
write-tests-first methods.  btw, i am still sad on a lost opportunity
(three years earlier) where i didn't pick up python although i saw the
elegance.  My mind was still clouded by doing UML/C++/Java in a big 
corporate environment.

Even when presenting code to questions on c.l.py i find myself writing
some tiny tests first.  it's often *faster* than to manually
check if your code does the right thing (and you are never sure). 
Plus you get a much better idea of what you really want to do.  And 
if your thoughts on API-usage make sense from the *using* perspective. 
In a way, writing tests implements 'eat your own dogfood' early on. 
If it gets difficult to write tests you know that you could do better. 

testing-the-new-year'ly yours, holger





More information about the Python-list mailing list