Today, one of my personal goals was realized. I made a small contribution to a large open-source project.
The project is the Arduino core for the ESP8266. The ESP8266 is my workhorse microcontroller, but the Arduino core provides a framework to quickly develop software. It contains numerous features that are based on the Arduino platform but adapted for the ESP8266. It also has many features unique to this device.
While working on μDAQC, I was trying to store login credentials in a secure way, but the existing Arduino core didn’t have functions that allowed me to do it. Instead of writing my own implementation, I took the plunge, forked (made my own copy of) the repository, and modified the core itself. Once I’d tested the change, I submitted the change as a Pull Request – my very first one. The folks who maintain the project reviewed it. Once I responded to their feedback, it was approved. Today, my fork was merged into the current development branch, and my changes will be a part of the next release.
My little bit of code probably won’t be used for it’s intended purpose by too many people, and I seriously doubt it’ll ever actually protect anyone’s information from an intrusion. Still, once the next version is released, it’ll be sitting there on thousands of hard drives, ready if it’s needed.
Here is a link to the pull request on GitHub if you’d like to see the details.