After days and days of hard working, including overtime this weekend, I finally managed to reproduce our lab’s project in the cloud! It was a painful process, especially migrating from a machine-specific codebase to a reproducible cloud environment.
Although it was painful, I managed to gain a full understanding of all the system dependencies. As an engineer, I love having this granular control over my system. I appreciate knowing every specific detail about the dependencies and being full aware of how it all fits together.
WarningActually, I am not sure if gaining this detailed understanding was worth the time invested. Was it valuable, or just a time sink?
I guess time will tell.
One great result should ideally follow another, right? That was my objective, at least. I managed to get the cloud setup working just before an important demo. There was a big man coming to our lab, and I needed to demo this setup in front of a group of people. Even a photographer showed up for the event.
Guess what? The system inevitably broke precisely when its was supposed to work perfectly. I’ll always remember how awkward I felt when the system didn’t work as expected. I have to admit, I panicked. At that moment, my fast, intuitive reaction( what Kahneman calls System 1 thinking ) took over from my slower, more analytical side(System 2). Because of that, I missed a very important piece of information in the terminal output.

Remember the photographer? Well, when he walked into my workspace, he accidentally stepped on the cable connecting to my Realsense camera. I didn’t even notice the cable had become disconnected. The terminal did show some red error messages, but in my panic, I was already thinking about what else might be wrong and rushed to re-run the process, completely missing the crucial information.
Oh lord! So much for one success leading to another. This was definitely a painful lesson learned this week.
Lesson learned: Always investigate the errors thoroughly first. Rushing to ‘re-run’ or reboot relies on unexplained luck, which is no substitute for understanding the actual problem.