Refactorization 2.0

After a few weeks of long days, CDIS refactorization is nearing completion. That is, the website portion at least; in order to best serve the most used portion of the project I have pushed the PDA code to the side since it is much smaller and will (hopefully) be quick to complete using the new CDIS class library that the new website employs.

Visual Studio has been a great aid as well as a worthy adversary throughout this process. Apparently a source file can only be used for a single operation after it has been ???prepared for refactoring??? before it must again be ???prepared for refactoring???, which has led me to stare at this little dialog box quite a lot:

VSRefactoring1.PNG

I am happy with how things are turning out. Refactoring is certainly not a high-profile job; after all how can anyone praise you for working long hours to get back to where you started. But the site has gotten a significant cosmetic makeover, both in terms of the code and the user interface, and future modifications ???should??? be much easier than before. The process has also been a great learning experience, forcing me to learn a lot about web development including HTML, JavaScript, and ASP.NET. Yesterday, I realized that the logo could use a little work since I made the current one using MS Paint and Firestorm for transparency operations, so the pretty new one is now on the CDIS page.

Unfortunately my hard work comes at a price: I already have and will continue to tussle with Miami???s payroll department. Apparently there are a number of rules that I was unaware of and have ruthlessly broken. The first being a maximum of 12 hours in one day, which may seem reasonable except when I am on a coding binge as I have been for the last couple of weeks. The second rule is a maximum of a 40-hour work week; 2 weeks ago I did over 44 (I got an email notifying me of this rule today) and last week I did about 70 . . . nice.

Refactoring Begins

Today I started working on refactoring the CDIS codebase. The aim is to clean the system and separate the core functionality from the user interface (toward MVC architecture). The hope is that the resulting system could be quickly and easily used as the basis for the website, the PDA, and a standalone application.

So far the process is going smoothly. With 3 instances of Visual Studio 2005 open, I am moving code from the website VS instance and the PDA VS instance to the refactored instance, cleaning, and sending it back out to the website and PDA via a single DLL. For a significant portion of the system, this should be effective and relatively simple, but some of the deep website code will probably require more massaging.

Refactoring copy.png
Refactoring setup

(The pointless image above is a result of my new hobby of messing around in Photoshop.)