I'm writing projects in a test-driven-development way. I've collaborated with other programmers of various skill levels to accomplish something much greater than I could have alone. The veil of mystery around pseudo-classical and functional patters, lexical scope and recursion has finally been lifted, as hard as I tried to fight it. And the subterfuge of keywords like new and this has been exposed. Even Git is starting to make sense to me now - all in eight days.
Coding School: Learning to Learn
I feel like one of the most important skills I've learned so far is how to help myself solve a difficult problem. We're blessed with tools that make debugging easier than it has ever been. That stuff is huge, but sometimes you just need to talk it out with a friend. The first day I called for help during lab time, I couldn't even explain what our problem was when a teacher came by to assist. I realized that was part of my problem: not fully understanding what I was trying to do.
By the time I was able to articulate it to one of the teachers, solutions started jumping out at us and we almost fought for control of the keyboard, as if our ideas were going to disappear otherwise. I don't even remember what happened to the guy who came to help us, but I'm sure he rolled his eyes as he walked away.
Working in a pair seemed counter-intuitive to me at first, in terms of learning how to solve problems but I've realized that it's rare when my pair and I are both out of ideas and that means we almost never get totally stuck on a problem. Someone always has an idea and if it doesn't work, it leads to others, and on it goes. The reason this is important is because wrestling with problems like this leads to a discovery of the bigger picture. That kind of discovery has been one of my favorite things about Hack Reactor so far.
Coding School: Peer Review
Today we had senior students review some of our work and I was surprised at how relentless our upperclassman, Eric, was at helping us get to the bottom of a bug we found in our project. I'm surrounded by incredibly talented and friendly people in both the senior cohort as well as my own, not to mention the staff. I feel like everyone is supportive and encouraging and wants me to succeed.
It makes me feel comfortable being at the school and has given me a goal of being able to share something I've written that can impress them as much as they've impressed me.
I've made a ton of progress in my skills for being two weeks into this program. As awesome as that is, I've got another 10 weeks ahead of me. Even though I miss my family, friends and my dog, I'm stoked about it everyday. It was a scary decision to quit my job and start on such an intensive program, but this is a once in a lifetime opportunity for me and I intend to get everything I can out of it. I can't even imagine the kind of programmer I'll be by the time I'm done, but I can't wait to find out.
And now I have to get back to work!
This post was written by Mike Ramos, a member of our June 17, 2013 class.