Grams was bragging all morning yesterday (again) about how she was going to win the pool tournament. She actually managed to get 2 games ahead at one point, but I rallied back and swept the last 3 games to prove once again that; while you often can offend the karmic balance enough for it to sway the outcome of an upcoming game of chance, it's seldom that you offend it enough to have it retroactively change the score... so brag after you win.
After my glorious and hard-won victory I spent the evening with OpenGL-ctypes. Found at least part of the problem with the tessellation routines (a moderately subtle bug in my use of indexing a ctypes pointer). Who knows, some day it may even work...
Today was mostly administrative interfaces and making the search/paging mechanism from Friday bend to support multiple search types (i.e. queries across different table types, queries where only a subset of records are requested, etceteras). I also took an hour or so to play with the system and look for areas that need work. Found one bug that would have been a PITA if it had hit customers; basically I hadn't realised there is a feature in the voice prompts where they can change their voicemail password via the phone, so I wasn't doing anything to check for that situation. Fixed now.
This (admin interface development) really is the point where a fully-fledged web framework shines; the dozens of trivial editing tasks which are seldom used, but have to be there. With most frameworks the bulk of the work is already done; Zope's managment interface, Django's admin interface. It falls directly out of the "object" model of the application, and you often just tweak the display of the objects to make sense to the user.
Anyway, that was the thought that made me sick of writing admin interfaces, so I stopped work there. Probably do a few more hours after I get back from coffee with Dan.
Pingbacks are closed.