Read Thread: Unavailable
Now THAT'S the change I did that required AQ to go offline a bit. =)
I wrote a generic class that can turn almost any database query into a set of paginated results. You see it all over the place. The letterboxer directory, letterbox search results, the tributes page, logbook pages, etc, etc. Whenever a bunch of results might be excessive for a single page, it's broken into pages using this class.
The class works wonderfully and has for years. I haven't had to make any changes to it for a couple of years, at least, until I decided I wanted to display more helpful information than a generic "no results match your search" message. The class had to generate "smart" error messages and needed a lot more information than just a simple message to be displayed if no results were found.
Since so many different pages depended on that class, though, I couldn't update all the changes in all places all at once. I could update the class, but then all the pages that depended on it would be broken until those pages got updated. So I locked everyone out of AQ just long enough to upload all of the changed pages and thus avoid the 'broken page' syndrome. =)
Most of the pages that use the class still just display a simple error message, but now it's easy to extend it to display much more complex messages. Very cool stuff. *nodding* =)