Refactoring Everything, Day 20

by chromatic

This 30-day project explores the refactoring of a legacy system. The Everything Engine is an aging software project that powers Perl Monks, Everything 2, and a few other websites. It suffers from poor design and maintainiability. Learn what it's like to look over the shoulder of an experienced developer as he refactors, redesigns, and updates the code.

Today I ported several test files to the new format... and discovered a nasty bug in my SUPER module. Oops.


2006-05-18 13:49:53
>> This 30-day project explores the refactoring of a legacy system

To date all it has done is explore some [very high level] refactoring of a test suite. I was really hoping to see more detail, and more involved information regarding what the code base looked like, what changes were made, how the code was tightened/cleaned etc.

Granted the test suite needs to be up to par before major changes can take place, but 2/3 of this project is now complete (time-wise) and all we've seen is endless "Converted $n tests. $something failed, but I fixed it easily. $n tests now run". There's been really nothing interesting, or at least not worth 20 blog entries about. There's been no real meat.

2006-05-18 14:04:24
I can understand your frustration. I didn't know at the start of this project that I'd spend two weeks porting test cases -- that's the risk of refactoring a big project instead of starting a new one.

Fortunately, the last week or so of the project looks like it will make much larger code changes -- not just test changes.