Like many of you nerds, a nerd like me when I was a little kid, I enjoyed tearing down stuff, putting it back together, and ensuring it worked. Somehow, I naturally desire to understand how things work and build stuff. One of my favorite books is The Way Things Work:
Just tearing down things and putting them back cannot contain my desire to build stuff at some point, so I became obsessed with programming. Over the decades, I felt very comfortable building things in the virtual world, but it’s becoming too comfortable. For now, I have the confidence to build almost any large-scale complex software system from the ground up by myself or with a team. Nevertheless, I still want to build something I can touch in the real world.
However, building things in the real world is challenging because the real world is messy, unlike the virtual world, which is usually binary. Although I don’t hate handcrafting stuff, there needs to be a significant improvement in the translation from idea to reality. Time consumption is also an essential factor. That all changed after 3D printers became more and more popular. You can print things as you designed. However, the problem with 3D printers is that I have heard that there are so many problems when you try to print something with it. I don’t want to spend most of my time troubleshooting printing problems; I want something that just works and focuses on design and iterations.
As you can see from my previous article, I built a mini-PC-based bare metal Kubernetes cluster with USB4 as the high-speed networking interface. Since then, the cluster has been sitting on the corner of the floor in my office, and it organically extended with different devices and got a bit messy over time. Cooling is also a concern because the three nodes stack together. There needs to be more room for good ventilation.