Don’t be Afraid to Make Some Mistakes
It’s important to stop every now and again and reflect on your personal situation and development. Frequently, we are surrounded by the hype and what everyone wants to be seen: “the Facebook you”. Everyone celebrates their success (often rightfully so), and from the outside it appears all the success everyone is having comes effortlessly. I hope we can start a genuine dialogue where we can concentrate on / celebrate our mistakes as much as our wins, because those are really the areas where the greatest growth and learning are achieved.
A couple of personal examples of this. When I was starting out and eventually finishing up my tour teaching industry IT courses, I had gotten pretty good at IP telephony. Routinely sought out the most difficult issues, and was able to solve every one that was thrown my way. What I did not write about, and most people would not know, is that installing CallManager the first time took me twelve(!) failed installations until I actually got the thing to work. Those twelve (or so) failed installations helped get me very familiar with the installation process, and EXACTLY how to break all of the different settings, and what the different failures looked like. I am certain it made me a better instructor. If it had worked the first time, there’s no way I would have known it that well.
Sometimes, your failures actually start you down a path of learning you might not have decided to take. Recently, I was working on installing the Elastic stack on a Raspberry Pi cluster. I even had a script from someone that automated the whole process. However, the script was written for a previous version, and I wanted to do some labbing on the latest release. After trying to direct install on the Linux OS, the fine folks over at stack overflow suggest I try to just use a docker container. I was able to, in pretty short order, learn (a bit more) docker, docker compose, and docker swarm PLUS get Elastic running on my Pi cluster. If that script had worked on the first attempt, I’m certain I would not be as familiar with Docker. Plus, Elastic and Docker Compose both use YAML files, which of course got me thinking of Ansible. So naturally, I ended up taking the whole process and writing some Ansible playbooks to automate everything I had learned. Turns out a little failure goes a long way.