As some of you know, I recently started an apprenticeship as a Ruby on Rails software engineer. I came into this new job with very little experience in the backend, let alone Ruby, and absolutely no experience with testing. My manager has been incredible with providing me with opportunities and resources to learn (I’m now on a full time team at the company!)
One of the things that she was very adamant about was that we needed to be testing. Not only were we learning how to code an app in Ruby on Rails, but we also needed to be able to write tests for our code. When I first started out, I found that writing tests seemed even harder than actually building the app we were working on. I’d knock out the actual app code in a day or two, but then it’d take almost a week to figure out how to write the right test to make sure that code was right. At the time, it was a little frustrating and I often questioned what the point was. But now that I’m working in a larger company application, one with a codebase that’s touched every day by many other developers, I’ve gained a real appreciation for writing tests.
A little over a year ago, I wrote a short intro to Git. After starting my new job, I’ve found so many new uses for git and it’s become a part of my every day life. So here’s an update, with some more advanced use cases!
I’ve been doing the 100 Days of Code challenge, and it has been incredibly rewarding. The tl;dr of it is, you commit to coding for at least 1 hour every day for 100 days. You hold yourself accountable by keeping a log on GitHub and also tweeting about it every day. I originally started this challenge just to keep myself accountable and “force” myself to set aside time to code every day. It’s actually turning out to be a lot more than I expected. For one thing, you end up getting an amazing community on Twitter. I didn’t expect so many people to comment on the things I’ve tweeted, offering advice, suggestions, and just overall support.
The first thing I had to learn was how to use Git/GitHub. I’m not an expert at it in any way, shape, or form. But I feel that I have a working understanding of it now. Here’s some things that I’ve had to go through in order to figure out how to use Git/GitHub, and some resources that I’ve used.