Nocturnal again…
Thursday, July 31st, 2003Was out with a cold over the weekend, and in the process of getting back in the swing of things I seem to have slipped into an inverted nay/night schedule. For those who know me, this should come as no real suprise…I’ve got a tendency to get very focused and task-oriented when I’m working on a big project (which makes me vaguely concerned about what’s going to happen to me when I start dissertating with gusto).
At the moment, the project that’s keeping me up nights is a complete overhaul of an online database system I’ve been designing for the journal Social Studies of Science. The system itself is actually pretty cool, walking the user through the manuscript review process step by step, and coordinating the efforts of an Editor in Chief, a handful of Collaborating Editors, and hundreds of referees.
When I initially designed it, I’d set up a sort of rule-based process. Every time an action was taken, the system would figure out what had to happen next, and store those tasks in a constantly-updating mySQL table – sort of a central “To-Do” list. Unfortunately, I started to find that the people using the system (myself included), kept coming up with ways of doing things that deviated from the neat and tidy flowchart just enough that I wound up with orphaned tasks, left behind when a user wanted to skip a step or used that back button one too many times.
So, the past few days were devoted to gutting the whole system, excising any and all references to that “tasks” database table, and shifting to a paradigm based on momentary context – when a user opens the file of a given manuscript, a series of scripts look to see what’s already been done, and then suggest what still remains. For example, if a query was sent to ask someone to review the manuscript, the script checks to see if a response has been logged, and if it’s been more than a few weeks, prompts the user to nudge the prospective referee.
The funny thing is that as I was rewriting the code I realized that I’d unconsciously implemented the same paradigmatic shift in the way that AI researchers have conceptualized their work, from the older rule-based/symbolic systems to more current systems that are essentially reactive to their environment. Hell, I studied this stuff in several classes, and even wrote a paper or two on it back before the VCR took over my academic life, yet I didn’t think consciously of the importance of designing a system that is contextual until I’d done it the wrong way first.
The lesson here, I guess, is that there actually is quite a bit that one learns while working on a PhD in the humanities/social sciences that is exportable and directly relevant to day-to-day projects. Unfortunately, I only seem to consciously apply said knowledge in hindsight, once I’ve made the very mistakes that I studied and critiqued in the classroom. Phoebe Sengers would find this damned funny.
In the end, though, the strangest thing about this whole project is that I’m essentially practicing user-centered design, while one of my users is the very person whose work first clued me in to the necessity of contextual, user-centered design. It’s so circular, it makes my head spin.
