Well, I think things have pretty much settled down around these parts. I spent a good part of the weekend redoing portions of Opus’ database — you’d be amazed at how sloppy and inconsistent a database can become over the course of 4 or 5 years — and rather than leave the site up with a slew of MySQL and PHP errors plastered across its pages, I just took the whole thing down. However, I think the bulk of the work is done and so we’re back where we started. Well, almost…
If you squint your eyes and lean real close to the monitor, you can probably detect a few minute changes to the design. I’ve gone and redone portions of the new design — tweaking a bevel or drop shadow here and adding an interface widget or highlight there. Nothing drastic, but hopefully, the site looks a little cleaner. I’ve also redone a lot of the site’s CSS, as there was quite a bit of overlap left over from the redesign (and there’s probably even further room for improvement).
I do want to give some props to Roger Johansson over at 456 Berea Street for his “Custom Corners And Borders” technique. It’s quite an elegant solution for adding curved borders to your boxes without resorting to messy tables and spacer GIFs, and I’ve used it throughout Opus for this most recent revision.
It’s nice to be finished with the bulk of the database work (which included renaming the columns to a consistent scheme, redoing all of the date fields to use the same column type, etc.). I’ll admit it’s a bit hairy to be doing MySQL UPDATE and ALTER TABLE queries via a terminal connection. Just a quick word to the wise; make sure you never change a TEXT column to a TINYTEXT column unless A) you’re prepared to lose quite a bit of information or B) you’ve got a pretty recent backup, just in case.
I’ve made some boo-boos in the past, but this time, I was working on much more important areas of the site. Needless to say, I was triple-checking my queries and sweating bullets everytime I hit the “Return” key. On a sidenote, anyone know a nice MySQL interface for OS X?
Although the database would have just kept running fine without the updates, it should allow me to implement some oft-requested features (RSS feed, anyone?) much more easily.