Hits and Misses

[Today’s run: 3.2 miles]

I had a bit of a frustrating day at work today. For some reason my tools weren’t working well for me. I was trying to use this one software package to replay a log file and have my system-under-test respond to the log file.

But the replay didn’t produce what I wanted and what I’m pretty sure it should have. So maybe I wasn’t using the software correctly or something.

This software is going to run in a complex environment. And one of the puzzles to work out is how to make little simulators or other bits which will pretend to be the other parts, parts which will be on the vehicle in the final state but that I don’t have in my work environment. (It would be really handy if they just sent me a big loader and let me test on a real machine… but they don’t do that.) Today my software replay was intended to be a bunch of network traffic on the vehicle network and the change I’m working on needs to respond to things that happen in that flow. Another person back at HQ had gotten on a real loader vehicle and done a recording of the network stuff as he manipulated things to give me what I need. A lot of times these stubs and logs and things can be reused. So we get a toolkit of little programs and techniques.

My current task is missing some needed tools, I think.

My work kind of goes in spurts. I’ll get some task and usually there is a period of trying to figure out what we are aiming for. Then there is another period of figuring out how to test it, both before and after the change, so that I can show that what didn’t work before is now working correctly.

And then I might make some changes and see if they have any effect on the outcome we want.

As this is going along I also will be thinking about how to fit the change or the new bits in among the old bits. Usually I want to make things follow the patterns that are already in place. But sometimes that really won’t work and it could even be that the old patterns need to be reconsidered.

Then I make my changes, in some kind of incremental way if possible, testing as I go. I may get part way through and decide a different approach would be better.

Finally when I have things the way they ought to be I have to make what we call a pull request which includes some information about how to test the change. One of my co-workers will look at what I did and see if it makes sense and whether the test now passes.

As I say, things go in spurts. Often the first few hours or days of a new task seem to go slowly as I try to figure out the issues and the landscape.

And that’s kind of where I was today. I had made some forward progress on this Monday and Tuesday, but today was kind of bogged down. I’m not even sure I have all the pieces I need to complete the whole task. (Sometimes we have to set it aside until the general situation is ripe for fixing that particular thing.)

I found out early in the day that my strategy was not what the boss wanted. But also I proved today that what he wanted won’t work. So we will see how it all comes together.

We have a daily meeting, in the morning, to see if everyone has something to work on and whether anyone is stuck for one reason or another. We call it a “stand up” meeting. But since we are on zoom nobody stands up. Back before covid when I worked on-site we actually did stand in a strategic spot in the cubical farm or in a conference room and go around the room describing our current situation.

Some days move very quickly. Usually that seems to come together toward the end. So I have quick days and slow days.