My eternity time was in school, waiting for class to end. That little backwards motion of the clock hand, before going forward? I constructed entire novel scenes in my head during that time. Mostly I've enjoyed the work I did during my so-called career. Waiting for the first 5pm fax, which I didn't have to deal with, and I could leave after the 4:59pm fax was dealt with, often took the better part of forever.
I know lots of people talk about being bored in the time of COVID. They can't go out and play with their friends. They need to be around other people. Their routine of self-distraction is disrupted. The placebo of retail therapy to feel better is mostly gone. It will be good for them, in the long run.
Since we got back from New Zealand almost a year ago, I haven't been bored. On the contrary. I can't believe it's almost a year already. Well, I suppose, not quite almost a year. We left here mid Feb, and returned March 22 or so (crossing the Date Line can mess you up), so maybe I'm being premature.
I digress. Not bored. Zoom. Between working about 2/3 to 3/4 time for much of that, plus my own work on photos, and a daily walk, plus regular household routine stuff, and a bit of my novel, and some reading, my days disappear in a blur.
Even the photography has suffered. It's been almost 2 weeks since I picked up my camera. It's there, right by the door, gently crying to itself about being ignored. I meant to get out last weekend, really I did. And this weekend too, for sure. Here it is Friday, and I've got deadlines.
One of the things I've ended up doing a lot in my so-called career is dealing with obsolete databases. Custom reporting to extend their life or put off buying expensive new databases. Data integrity improvements. Migration. Dear Lord, the migration activities. Wha's making me nuts about this one is the inconsistent normalization.
I started with a set of Business Rules. These are high level statements about some particular data element. For example, one gives a table showing what the source status gets mapped to become in the target database. Source status A transforms to target status 1. Next level down is a technical design document that tells people where these data elements are to be found, giving the source database table and column, the UI field name, and the same for the target database. Plus comments about data relationships and anything else relevant. Our QA person is intensely interested in this document as it is foundational to building test procedures.
So far so good. The current task is mapping all that to a load template, and building the query that generates a spreadsheet that is as close to the load template as possible. In an ideal world, the query would exactly match the template. A simple select x,y, z, n from table 1 (plus maybe a join or two) where some condition(s) apply. Copy, paste, load, test, done. It's never that simple. Not ever. There are transformations to be done. I'm pleased I figured out how to bypass some of the controls in the source to be able to create a temporary table there that will manage some of the transformations. This will save doing it manually in Excel. That's almost too simple to mention.
But what I'm being paid to figure out, and my colleagues are glad it's me and not them, is resolving the structural differences in the data. Take a simple thing like planned start and finish dates, and actual start and finish dates. In the target they are attached to the work order. In the source, the planned dates are on the work order, and the actual dates are attached to the individual labor items that are attached to the tasks that make up the work order. There could be many tasks on a work order, and many labor items on each task, each with their own actual start and finish date. My professional data buddies already understand the problem and are pouring a sympathy glass of wine. There are complications even to these data elements, and there are other examples we need not get into.
Once I dive in I'm gone. I only have two medium sized computer screens. I am flicking between:
- The regular desktop with:
- My time and notes journal
- the Business Requirements document
- the Excel technical design
- the Excel load file construction
- plus a bunch of other helpful files
- a browser window with the target database user interface
- A Teams window with connections to work colleagues
- Outlook for email (which I mostly ignore) and calendar
- A Remote Desktop with SQL connections to several different versions of the target database
- A Citrix desktop with the source database user interface and (for my sins) an MS Access interface to the source database tables. It's been a long time since I had to work in Access.
Some of these time out and I have to log back in again. At one job I was one of a few people that had 3 monitors and I loved it. I could use 4 of them here. Even having one humongous screen and having separate windows for each desktop wouldn't work all that well, because I typically want my xl sheet to be as big as possible, and my SQL results to be as wide as possible. Let's just say my life these days involves a lot of logging in, and switching between screens, holding stuff in temporary memory. My old brain is usually very tired at the end of a day, and that's just working on one task. There is a similar migration task between two different versions of that same target database and an earlier version of it. This part is quite straightforward. It would be fun if only I could be left alone to do it. The other one is a higher priority.
That's why I'm not bored, and my blogging has taken a hit as well. If I don't blog first thing in the morning, it's probably not going to happen. Once I dive into work, all the creative energy that would go to writing, or blogging, or photography gets sucked up by work. So, my dear and faithful band of readers, I haven't forgotten you.
Of the Day
Serendipity from 2017 above Dawson City, plus Linda and Celina