Smashing Boxes apprenticeship: Day 1

Yep, time to dust off this old blog once again. Writing a daily reflection is actually a requirement for this apprenticeship, so in theory I’ll actually stick to it this time!


Smashing Boxes gave me a whole bunch of books to help me learn the core concepts of programming!

Today was the first day of my 12-week long apprenticeship with Smashing Boxes, a web and mobile app development shop here in Durham. I’m extremely happy to be here, both because it’s a great opportunity with an interesting company, and because I’m really tired of being unemployed. What makes this so cool? It’s a learning apprenticeship! They’re paying me to spend 12 weeks honing the stuff I learned at the Iron Yard, with the expectation that (provided I don’t screw up) there will be a junior dev job waiting for me at the end. It’s also super cool because there are three of us, but it’s not a competition. Three apprentices, three jobs at the end. We can work cooperatively and help each other out with concepts and questions. Yay!

As part of the apprenticeship, my mentor Brandon has asked everyone to keep a blog, answering the same three questions each day:

  • What did you learn yesterday?
  • What are you going to do today?
  • What do you expect to learn?

I think this will be an interesting way to keep track of the concepts and skills I learn, and I think it will be rewarding to be able to look back when I’m feeling frustrated and have a concrete list of things I’ve already mastered.

So: Day 1!

Yesterday, since I hadn’t started the apprenticeship yet, I was working on learning the Dvorak keyboard layout. I discovered in code school that I type all wrong, and thought learning another style would be helpful. Mostly so far I’ve learned that one of the reasons I don’t type right is because I have freakishly small pinkies and it hurts. Ah well.

Today, I am going to do the on boarding paperwork for SB. I wasn’t sure if we would get to any coding today, but it turned out Brandon was eager to get started, and I worked on the Coin Changers kata. A code kata is an exercise in programming which helps a programmer hone their skills through practice and repetition. Brandon suggests that I write the same kata every day for a week, making changes both incremental and structural. For instance, today as I was writing, Brandon suggested that I write it without conditionals, a relatively small change; tomorrow, on the other hand, he wants me to start learning Rspec, a behavior-driven test development framework for Ruby, and write tests for the kata. Eek! Test-driven development has never been my favorite thing to do, but I recognize its utility, and SB puts a huge priority on it. So learn it I will!

Since today was my first day, I mostly expected to learn about Smashing Boxes, their policies and the people who make up the company. So far I really like what I see!

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s