Refactoring

If you have been reading this blog, you will know that recently I coded a toy app that transformed binary into decimal values. If you haven’t been reading my blog, then you are missing out… not really, ok back at it.

Coding the project was very straight forward, but is not what this project was all about. This project’s intention was -besides creating a node app and getting familiar with modules and ES6- solving a problem with clean, tested, and maintainable code. Not all of that has completely been accomplished, but it’s not spaghetti code either.

There is an old saying that goes like ‘if it ain’t broke don’t fix it’, although I appreciate the popular wisdom in those words, I feel it goes against what good code is all about. It’s not enough for code to run and do the job, if we have to break what is unbroken (provided you have backup in case you do something real ~stupid~ audacious) to make it better, that is what we have to do.

This little project has been very interesting to me, and it’s not over (I’ve been keeping state in the HTML elements, I will do a new version where state is solely on JS). Besides the opportunity of rethinking my code, it gave me the opportunity to tinker with the testing suite I was using (that was made for browsers) and make it Node friendly. That was interesting as well, taking one existing app and adding code of my own to make it fit my purposes. My confidence is growing.

Special thanks to my mentors for your constant support, whether by helping me write better code, improve my tech savviness while keeping an eye on Functional Programming, or challenging me to dive deeper into the realm of JS.