My Experience In Bootcamp so far (Day 3)
I will like to begin by stating my high and low points for today. But before i do that, i will like to appreciate Andela for this awesome opportunity to participate in such a massive, strenuous and rigorous adventure. Truth be told, i did not expect it to be so intensive but the LFA’s and BFA’s have made it such a huge success and they have all cultivated a deep-rooted coding styles and conventions in me.
What are my high points for today?
Have always been a strong advocate for a non-TDD (test-driven development) which i also displayed on the first day of this exercise when i stood up to ask “why Andela’s coding conventions include TDD?”. I got enough responses but then, i wasn’t convinced. Later that day i was asked to make some changes to the application we submitted that day. Done and dusted, i decided to fulfill all righteousness by running the application and the written test (in Mocha & Chai) of which i was of no doubt that the application will execute without errors or bugs. To my amazement, about 5 tests failed out of 20 tests and i said to myself “but i did not make any core changes”. Few minutes later while trying to fix the test, i came to realise the true benefits of writing as many tests as possible; to prevent “breakage” so to speak and errors which may occur in subsequent code changes; to ensure application-functionality consistency; improve stability; purpose of documentation. The knowledge of TDD i acquired is not only enough to change my entire software development styles but to make me a better developer in the nearest future.
What are my low points for today?
My low points for today was an unavoidable home-chore blocker i encountered few hours to submitting my outputs. I thought i would be able to get back to complete them but then events took a different turn. This is why i would like to use this opportunity to reach out to Andela managements to probably look into the submission time and if possible, make it early in the morning of the day after the project start date. For instance, outputs for Monday will be submitted at 8am on Tuesday morning; outputs for Tuesday to be submitted at 8am on Wednesday morning. I think this method will provide a time-frame to make up for lost time during the day due to unforseen chores, blockers and unexpected events.