Book Review

Working Effectively with Legacy Code – Book Review

Working Effectively with Legacy Code – by Michael Feathers – covers how to refactor and add features to legacy code without breaking it. Legacy code, in the book, is just code without proper tests.

Of course, refactoring code without tests is always dangerous because it might be much harder to find any new bugs you have introduced.

The book covers many techniques with steps you can follow to make it easier and safer to apply these changes. The steps are well explained, with many good examples. There is also plenty of coverage on how to introduce tests on code that wasn't made with unit testing in mind.

Use of techniques in practical problems is also covered in the chapters before these sections, with titles such as I Can't get this Class into a Test Harness or This Class is too big and I don't want it to get any bigger.

There is some cross over with the Refactoring classic, but even in those cases the different context makes this worth your time.

Strongly recommended to anyone that needs to work on codes without tests.

Site Reviews

Optimizely Review

Optimizely is a very cool A/B Test service. I've spent some time using it on my site for simple tests, and I really liked how the basics work. Unlike other services (in particular Google Website Optimizer), Optimizely only has one simple line to be added to every page you want to test. You don't have to go and add code for every single experiment. Making test pages is very easy too. As you can see in the image below, you can just load any page, and then click on any element to edit, add or change images or texts, or set any link as a goal.

After a test is started (which only takes a few clicks), data starts getting collected. After some time, you get a result page.

Result Page

I've used Optimizely for a few small tests. One was about changing the screenshot on my Print Folder product for a YouTube video tutorial. Results show that I get about 70% more downloads with the video version.


Since I saw the review of Optimizely on the Pro Web Design Course , I had to try. It just looked a whole lot better and easier than any of the other services. I really like Optimizely overall. It is incredibly easy to use, and require minimum effort for editing the page – which is a major plus if you are not used to editing HTML and CSS.

If you don't care about that, Google WebSite Optimizer can be a better option. You will save money every month – US$19 for Optimizely's basic plan, which does not include multivariate testing – and overall it seems to have more features. However, you are going to be paying a price on the time it takes to learn to use it, as well as time creating pages and coding for even minor changes.

I've tried Google WebSite Optimizer, and I've gone back to Optimizely.

Optimizely has a free 30-day trial, so I recommend you try them out.



A/B Testing Video and Slide

Alwin Hoogerdijk, president of, posted on his blog an interesting video and slides of his presentation on ESWC on how he does A/B Split Testing.