On to serious talk about work, I suppose. Originally, I was hired over two years ago to create a publicly searchable database of various records, which would in different modes turn up transactions, detailed records of transactions, or scanned copies of the original documents. The idea was to replace an ancient MS-DOS program which I saw demonstrated once with something that didn't require 1983-style ``select what you want to do from this number menu'' interfaces. Because the boss was injured in a motorcycle accident the week before I started work, I went four months without anything at all to do, and then another four months struggling to get the databases I needed and explanations of just what people wanted, and then the project was temporarily cancelled for eight months and I was laid off; and, finally, I got rehired and since the other project I was hired for got to doing nothing I rewrote this one from scratch in a better fashion. That's all backstory. Now ...
Around early April we finally got them to start sending us updates to the databases on a regular basis. Unfortunately the new-database creation is done manually for obscure reasons and it can't be guaranteed to be done at any time during the day. I set up a system where my code would daily check the earliest-dated entry in the new-information database, and put the new-database into the master-database if that date hadn't already been entered. And as I couldn't get any further information out of anyone I puttered along with that and making little tweaks to make the internal code more harmonious since, of course, I learned by doing it how I should have done it all along.
Early in June we had a little demonstration with a few people representing the client. I would rate it as basically successful in that everyone agreed the web page version worked like they wanted, which isn't bad considering I never used the program it was meant to replace. The one problem: many of the most recent documents expected to be in the database couldn't be found. It turns out that my assumption --- that each day's changes would be in a discrete new-database --- was wrong, and stuff could be processed over the course of a week or so. All right, so, I needed a complete rebuild of the original database and a better schedule for the updates. Also they needed to have some kind of schedule for regularly processing data and putting it into the databases they'd send me, but they admitted office political considerations are complicating that.
So we set a date for the end of June when we would present the system to all the people who'd be the primary users of it, and the company owner grumbled a bit about the embarrassment of entries missing from the database. But since we had the plan in place for a complete rebuild and for a proper schedule for updates I thought that wasn't any big problem. Of course, getting the rebuilt database took a day under two weeks to get them to send it, and after that my Slick New Code which was meant to update all databases while reading their structure from the database itself, reducing the amount of hard-coding I needed to do and thereby solving this problem for all time, was proving to take unbearably long a time to run. Also, it turned out there were two more databases that should be contributing information that nobody had ever mentioned, although copies of them had been sent regularly to the uploads folder. This probably contributed to the entries that couldn't be found.
Trivia: The written guidelines for the command module, service module, and lunar landing module developed at the NASA-Industry Apollo Technical Conference in Washington, DC, in July 1961 weighed in total more than 250 pounds. Source: The New Ocean: The Story Of The First Space Age, William E Burrows.
Currently Reading: Frek and the Elixir, Rudy Rucker.