I just got my butt kicked, and that’s fine with me

Martial artist figurine photo by Ryan McGuire / CC0

It makes sense, for me, to group the first 8 days of Makers Academy together: the first week, the weekend, and Monday of the second week. We did similar things over those days:

  • During the first week, we made a program that imitates the behaviour of city bike rental, working in pairs;
  • Over the weekend, a similar challenge but working solo, and programming an airport instead of city bikes;
  • On Monday, a full code review of the weekend work (in pairs), and extensive refactoring based on the code review.

It reminds me a little bit of when I used to do martial arts (budo taijutsu, for the curious). Sometimes I’d go to a day-long seminar, where I’d train all day, learning things I wouldn’t in regular classes. I’d walk out of one of those days having had my behind thoroughly kicked, and I’d be pretty happy about that. Bits of it might have hurt, but it wasn’t for nothing.

That’s what Monday was like for me. We’d focused on RSpec for the past 8 days — we’re expected to pretty much know ruby already by the time we get to Makers, so the focus in the early days of the full is learning how to do TDD.

I’d made progress on RSpec through the week, and a bit more so at the weekend, but things got real on Monday. With a (rather helpful) code review framework provided by Makers, my pair and I pulled my code apart and chalked up where it could be improved.

To cut a long story short, it was 99% RSpec. Specifically, mocks.

Mocks kicked my proverbial. I’m not done with them by a long shot, but I knew a lot more about them at the end of Monday than at the beginning. When I tapped the mat at around 17:45 on Monday evening I was pretty tired — and pretty happy. It wasn’t for nothing.