OK. There is one hour left. After that hour Angela and I are driving to the airport to get on a plane. So the guys are feeling the pressure. What's more, the fatigue from the last episode is still evident.
And so this episode begins with the final cleanup of the EOF troubles they had in the last episode. Then, with only 50 minutes left, they opt to write an integration test to help them wire the system up.
This was the right thing to do. What's amazing to me is that, given the pressure they were under, they did not try to just guts things out at the end, and write a main function that ran everything. The temptation must have been enormous. And yet they stuck to their disciplines, and wrote that integration test.
And it's a good thing they did; because, as you'll see, they find some subtle errors that would have been hard to find without it.
Unfortunately they also make a clumsy error in one of their mocks and, for at least the third time in this series, rip up their code trying to debug something that wasn't actually broken. Fatigue and pressure were taking their toll!
OK, no spoilers. You'll have to watch the video to see if they have a happy ending. But, what a journey, eh? 8 hours. 24 Tomatoes. And they've written an entire application, beginning to end, using TDD, Refactoring, Pairing, Simple Design, Integration Testing, Collective Ownership, and... Well, if you watch the Clean Code videos, you know.
And what an interesting language. I'd never seen GO used before. I was quite impressed at the execution speed. Those tests just flew! I also thought the language itself was nicely constructed, approachable, and easy to get running.
I have to say I was deeply impressed by Jonathan, Mike, Cami, and the whole crew at SmartyStreets. Good programmers. Good people. Good company.