As the end of every year approaches, we start to reflect back on it. As software developers, our questions can be many, What did I work on? What did I produce? What mistakes I have done, and what did we learn from them. Today, I'll seize this opportunity to ...