equal and opposite unnesting
Tuesday, July 31 2012
I knew I had a big day of writing code at my computer today, so when I woke up early this morning and could not get back to sleep, it seemed like a good idea to take a bath. Baths are unusual activities in that they function about equally well for getting me into the mood for either starting a day or ending it.
In the early phase of my work this morning, I found myself working on an associative array parser that could take the names of consecutive items, look for a common prefix, and then use that prefix to push those items down to a deeper level in a nested array hierarchy. It was a complicated job, and it kept doing the wrong thing and I kept having to debug every little piece of it by echoing out the states of variables. I might have given up, but I was under time pressure to produce a solid JSON string by noon. At one point I was so frustrated that I found myself rubbing the palms of my hands vigorously across the rough pattern of my swivel chair's upholstery. This helped to dissipate my frustration, and eventually I was able to fix what needed fixing.
At other times my frustration came from decidedly more organic sources, such as when the front end guys made unreasonable demands for the nesting of data whose format made such nesting programmatically impossible (unless, of course, lots of conditional logic was inserted). Part of the problem was that for all the nesting they wanted, there would have to be an equal and opposite unnesting on the other end of the data processing so as to return it to the form it actually takes in the underlying database.
I ended up working something like eleven hours today, although I sat at my computer for even longer than that.
This evening Gretchen and I had spaghetti for a second day in a row using leftover sauce from yesterday. Since this week Jeopardy is doing the inherently-lame "Kids' Tournament," Gretchen and I are instead using our dinner teevee time to continue our ongoing Mad Man marathon. Today we watched the last episode of season one and the first episode of season two.
For linking purposes this article's URL is:feedback
previous | next