Monday, December 08, 2008

Version 4.0 --- then 5.0

You've likely noticed some happening with Citation Machine. If it has caused you any convenience or grief, please accept my apologies.

My main concern has been that efficient performance. With the end of the semester approaching and now here, the usage of CM nearly doubles, and I know that slow loads can be very frustrating.

So, a couple of months ago, I tried utilizing iframes in the code, something I hadn't done before -- and it worked quite nicely. When you click [MLA], and the list of content sources appears, that is the only information that is reloaded. Before, the entire page had to be reloaded. When you clicked a source to be sited, and the web form appeared asking for info on the source, then that form is the only thing that is loaded.

Version 4.0 was born.

The problem that emerged was that although my Windows computer (a Mac Intel machine) ran the new tool just fine, many people wrote in indicating that these new features were not loading at all -- rendering Citation Machine useless.

I write in some workarounds, that would recognize Windows machines, redirecting them to non-iframe versions of the Citation Machine, which meant that I was maintaining multiple versions of the tool. The workarounds thickened the programming and caused more problems, nececitating more workarounds and more coding. It finally got to tedious to work with.

So I got up early yesterday morning and started a complete re-write of Citation Machine, using Cascading Style Sheets, something I'm doing more of -- finally. Pulling in working modules from the earlier versions, I seem to have finished it after another early morning codathon (3:00am to 7:50am).

Version 5.0 seeks to solve both the problems of slow loading and complexity of the code. To address both of these problems, Citation Machine will now offer either the menu of citation styles and sources, or the web form or completed citation -- rather than loading both the menu and the forms with each mouse click. The significantly simplifies the code and page loads should be nearly as fast as with the iframes.

Please let me know if the new version causes any problems.