(29 Feb at 23:28)
|It's leap day, which gives me an extra day in the short month to write this boring blog post! Alas, I spent most of the month traveling for work and vacation, and didn't finish my main-series project(s). Is the monthly shaming even motivational for me? Yes, of course, though I am skilled at filling my life up with whatever is currently catching my fancy.|
For example, earlier this month I finally got working this fairly straightforward raspberry pi project, which I built to try to diagnose wtf is going on with my overcomplicated 4-zone hot water (hydronic) home heating system. It has a problem whereby my bedroom gets annoyingly hot under certain conditions, even though the thermostat is not being triggered. Just the "boiler room" looks like this:
Of course I could pay someone money to tinker with it but the true satisfaction of problem solving is in suffering that problem for multiple years while you pick up the necessary skills and data to solve it yourself and work up the mental energy to apply the solution. In the above you can perhaps barely make out the diagnostic device hanging from the scary bundle of wires (not my fault) with some of its heat sensors zip-tied to pipes. The needlessly hand-built software can give me one of these:
(I was pretty happy with the cheap but fairly maintainable way I decided to do this, with a templated SVG file. Since they're text, I just left placeholders like [[alice]] (the name of temperature probe "A") and just string-replace it with the temperature string as I deliver the SVG over HTTP. Will use this trick again some day.) Here you can see Floor 2 source is hotter than the others even though its thermostat isn't even on. It also produces time-series graphs of course, which are decidedly more retro (but really is only visible at full size):
Click for full 1080p pixel glory
I have succeeded in catching it in the act and have some theories about what's happening (the heat appears to be convective but I don't yet understand why the boiler keeps putting out heat in this situation). But I haven't solved it yet, and certainly haven't fixed it.
SIGBOVIK 2020 is in about a month, and so the deadline is coming up imminently. Consider submitting if you have anything to share! I have a few ideas partly done but it looks like the writing will be coming at the last minute, of course.
Stay safe out there!
|Some words are mising around "some theories about what's happening"|
|Indeed there were! Fixed it!|
|When I saw SIGBOVIK, I felt excited, but only cause you will be there.
What do you do as a profession?
Have you given Docker a try? I say this because you hate getting things to compile (which I agree with)
If you said no to the above question, here are some reasons why you should try Docker (If you said yes, then please just skip reading the following wall of text).
Docker lets you perfectly document the steps and set-up for getting something to compile. It can be reproduced on any machine that has docker installed.
At the risk of explaining something that you already understand, but with the full confidence that you aren't reading this if you already know what Docker is because I totally asked you to skip this part if you knew of Docker, Docker is like a VM, but it shares kernel resources with its host machine. It has its own filesystem, network, dns, and environment (and maybe a couple other things) but relies on the host machine for all else. This lets you set up environments using a Dockerfile which can then be saved and shared as light-weight images with other people, or you can just keep the Dockerfile in your code repo, and they can build it themselves. Easypeasy.
So yeah. Try Docker if you haven't!
I love that you share your work. Thank you for what you've made!