2020-05-29
I didn’t pass the exam in the end. Ugh, it’s been rough.
I went for the exam in the morning and got a few things done in the afternoon:
- Went to Yiming’s to look into an anomaly, which turned out to be two bugs.
- After the town hall in the afternoon, synced up on the MDK Python binding stuff.
- Together with Shan Le and Wei Yu, went downstairs to resolve an issue with an upstream project and ultimately came up with both a short-term fix and a long-term solution.
I’ve noticed that when unexpected problems arise, the typical approach to solving them follows this pattern:
a short-term fix and a long-term solution. The value exposed by the problem is limited and time-sensitive, so the short-term fix aims to quickly and accurately address the immediate urgency. But is a long-term solution still needed? Generally speaking, yes — because the specific instance of a problem often reveals a blind spot in the original solution that wasn’t considered before. Analyzing the root cause and systematically solving it ensures that this type of problem can be handled well in the future, making the original solution more complete. There are cases where a long-term solution isn’t necessary — when after a thorough analysis we conclude that the cost of systematically fixing the problem outweighs the benefit. (Even then, most of us subjectively want to address it systematically — as engineers, who wouldn’t? But this also poses a trap: it can lead us to spend time on important-but-not-urgent or even neither-important-nor-urgent matters, wasting valuable time that could be used to solve other more valuable problems.)
- Came back in the evening to continue working on the CI pipeline.