160627 – 160703 — Total classroom hours 14.5
Things are really picking up! Not only am I on the cusp of finishing my second Bloc project, I have officially started a collaborative project with my friend (and unofficial mentor) Corey. Its not that I didn’t think school was enough of a challenge, but Corey approached me with an idea and offered to use it as a learning experience for me, which is something I couldn’t turn down. I’m always actively seeking out opportunities to work with other people in any way. Its a point that I keep coming back to, and its not something unique to Bloc, but I think an inherent dilemma with online schooling in that there isn’t a whole lot of collaboration outside of you and your mentor. Don’t get me wrong, working with my mentor has been an awesome experience, but theres also something to be said about collaborating with your peers on a project.
I’ve only been working on this project with Corey for a week and theres so many valuable nuggets that I’ve picked up. On the workflow end, I had never dealt with working on someone else’s Github repo. Theres a bit of pressure when setting up your local repo to communicate properly with another persons Gitub repo, the entire time I felt like I was one wrong keystroke from wiping it all off the map. After I got that all setup correctly Corey set me up with parameters for commit messages. Im a stickler for detail and continuity, so the idea of having a template for commit messages was something I was fully onboard with. It creates uniformity across commits, allowing anyone who looks at the commit history to easily see what was changed or added. Changing the default commit message template is relatively easy, and this article helped me a lot.
Arguably the most valuable aspect of this collaborative project (I keep calling it collaborative, but in actuality almost all projects involve more than one person, so I should probably just be calling this a ‘project’) is that I will have my code reviewed by another experienced programmer. Once again, I have nothing but great things to say about my mentor, but with just about any learning process its not a bad idea to get the views and opinions of more than one professional. I am definitely paying closer attention to the details of my code, making sure its as close to perfect as I can write. And testing, oh man, the testing. One goal of my current Bloc project was to keep my testing current with my code, and I admittedly fell behind pretty quickly. With this project I am being forced to write tests before my pull requests will be merged, so I have no choice but to write TDD code by the books.
Less than a week in Im already feeling a bit more pressured now that I have two irons in the fire, but I’m ok with that, its a good pressure, and to me it means I’m heading in the right direction. During my mentor meeting we decided to move me from the 72 week timeline to the 36 week to finish out the Ruby course more quickly. This means that I will finish this half of the schooling almost two months earlier, and in the meantime will have two mentor meetings per week instead of the one. I wasn’t as concerned with moving up the finish date, As I knew I was on track to finish early regardless. But I was finding myself getting hung up a few days after my mentor meeting and then basically grinding my wheels for three to four days until I could speak to him again. My school work schedule didn’t help this scenario, in that most of my work has been getting done between Friday PM and Monday AM, and (rightfully so) my mentor tends to take the weekends off. But now I have two opportunities to speak to him, so hopefully my multi-day grinding sessions have come to an end.