Week 1, day 5

Yesterday we wrapped up on our Boris Bike challenges and today we had a review of how our week had progressed. Lots of good points raised at the stand-up and we broke off into our smaller bytes for a break-down of the issues people felt stood out for them, both in terms of coding and their experiences at Makers Academy so far. After that we were issued our weekend challenge, to design a system to manage an airport, using all the outside-in behaviour-driven design techniques we had learnt this week. I write this post as I'm sitting in the train on the way home after a 13-hour day, but time flies so quick. The only thing that keeps us going so far is the energy, passion and genius exhibited by everyone at Makers.
an image alt text
(A scrum that the seniors held for us juniors)

We had to tackle our challenges solo, in contrast to all the pair-programming of the week so far, to show that we have individually absorbed all that is necessary to turn this page and move on to everything else we need to learn.

The challenge started well for me, I could refer to my past work to guide my thinking. By mid afternoon all the easy stuff was out of the way and I was hitting my first obstacles, writing the application code to make sure planes can land, takeoff and for the system to track their change of state. I had to call in help from the alumni helpers who are fresh graduates that volunteer their time to help the juniors and seniors. Just like everyone else at Makers they are friendly, approachable and extremely talented.

After a lot of changing, checking and running tests in IRB my coach had a look at what I'd done and very quickly pointed out the solution to make my tests pass, to create an empty array before using it in a method. A slight and almost imperceptible error that had far-reaching consequences for my tests. I really enjoy troubleshooting, it teaches us so much for the future, we will know what to do if we see the same errors again.

Late in the evening I was beginning to fade, some seniors came and joined me and began to encourage me to carry on and gave me some amazing advice on how to look at my code and what I could do to present it a bit better. We don't only code to make it work, we code to make it work in the future.

I've done enough for today to be happy but will have to return to it tomorrow to finish off the rest, and in this current state it is not pretty, and not very well designed. Once I know I've passed the required tests I'll go back and refactor my code to conform to proper Object-Oriented Design principles, going to be a mind-expanding weekend.

Written on March 20, 2015