So I decided to start writing blog posts, mainly to try and make my own life easier and simpler. This is going to be something like a documentation about what I have done, and why I’ve done things the way I’ve done them. I’m also hoping that by writing all this down it will have a bigger impact in the world around me.
Mainly I’m going to be writing about topics around Home Automation (I use Home Assistant), but also about topics discerning Devops, and Architectural philosophies. Hhere are some keywords for the future: Home Assistant, Zigbee, ESPHome, ESP32, Docker, Devops, Networking.
But just so that I’m not just talking about myself, I’m going to talk about my favourite philosophy in IT!
Architectural Philosophy – Separation of Concerns:
I truly believe in separation of concerns, it’s my main philosophy, and why I’m advocating so much about micro services in general. Now don’t get me wrong, I don’t wish for people to spin up new containers just for the sake of it. But I believe that for a system to work efficiently, and to be manageable, each service that makes that system be, should be in their own container.
For instance my own Home Assistant is running in a docker container, and each additional service (node-red, mqtt, zigbee2mqtt, etc) are running in their own docker containers. This will allow me to keep a clean host machine. I don’t wish to contaminate my host machine with different software, I want it to be able to just run containers and then let those containers handle all that needs to happen.
I rarely see this happen, people might run their software in containers, but still have a ton of software installed in their host machine to do things with their software. I like to keep everything clean, and if you need to run something, install it inside the container and run it inside there. That’s why i use the word contaminate, because it’s software that should be inside the container.