December 2007 - Posts

Inheriting code (that smells)
14 December 07 02:23 PM | dotjosh | 1 comment(s)
Josh: I am excited to be furthering the development of your tremendously popular website.  How may I gain access to the source control repository?
Customer: Give me a second... *You've got mail! - sourcecode.zip*

Wow, this isn't my ideal way of getting my hands dirty in a project.  But, this will be easy to fix.

Opening this .NET 1.1 ASP.NET app, I find three projects and no solution file.  Confused, I open the projects individually and realize there is a huge circular reference issue that was circumvented by compiling the projects seperately and then referencing their output assemblies. Yuck. There are also heaps of bugs in the code causing all sorts of unneeded memory usage that's causing the application to freeze and recycle several times a day.  Finally, I'm told that all of the latest features created for the site have been causing problems everywhere else.  I think it's time for a change.

After several weeks of unit tests, refactoring, SVN, and CC.NET configuration.

  • The site no longer crashes.
  • Features can be implemented faster and more effectively.
  • Source control provides a source history with much safer storage.
  • A new version of the site can be deployed with the click of a button.
 There is still a lot of work to be done.  But, I think this goes to show the power and reason for being agile. 
Filed under: ,
More Posts