Dave Powers

I create things with words and/or code.

Branching Out

No, this post isn’t a reference to git. Rather, I’ve been making an effort to step slightly outside of my comfort zone. I’m making an effort to get more involved with the Ruby and software development communities, both locally and remotely/online. I’ve found that engaging with others is a great way to get a unique perspective on what it’s like to enter and work in the industry, especially from someone with more experience than you.

I attended both Project Night and the monthly Meeting held by the Boston Ruby Group this month, each for the second time. Boston has a great Ruby community, and there were a lot of familiar faces. The night began with a talk by Paul Dix on InfluxDB, a database for recording “metrics, events, and performing analytics.” I’m still fairly new to working with databases, so some of the topics were a little over my head. The project does seem to be coming along nicely, and I can definitely see the potential in it.

Next up was Wyatt Greene with his talk, “Babies vs. Zombies” (links to presentation slides). In case the title of the talk wasn’t clear, it covered how our brains work, and how abstracting code is an method to reduce “high cognitive load”. It was helpful as a beginner, since myself and others are trying to write clear, readable code. He gave a great example of two codebases that functioned identically, yet one was so unclear that nobody could determine it’s output by reading it.

After the talks, we were able to chat with Wyatt and get some good insight on his experience working both as a software developer and in education. He was very friendly and welcoming to those new to programming and interested in entering the industry.

The next night I attended a talk hosted by Automated Testing Boston called “Scaling Your Automated Tests Effectively”. Stephen Vance was the speaker. The group is fairly new, so the crowd was smaller, but we were able to chat with people from a variety of companies and backgrounds (they also had one of my favorite New England Beers, which was a nice bonus). This talk mentioned the importance of decoupling your applications, and warned of the dangers of the “big ball of mud”. Wyatt’s talk from the night before also brought up this concept, which really drove home the point.

Some weeks earlier, I had filled out a survey from GitHub about my background and usage of the site. I was contacted by email a week or so after, and asked to participate in an “Octostudy”, which is basically a chat with a couple people at GitHub. I spoke with user experience researcher and developer form the team.

This was a fun, relaxed conversation about when and why I started using GitHub. Thinking back, I signed up when I was thinking about trying to learn software development, and figured I’d have to sign up eventually, since just about every developer uses the site. Initially, I mainly used the site to star various repositories that I thought were cool or that I might want to refer back to later. I still use these feature often, but am now sharing more of my own code and collaborating with others.

I described my usage of secret gists for quick sharing of small programs or code snippets, as well as the feature to follow other developers to keep an eye on what they’re working on. They were also amused by a repo I had starred called “Cocktails for Programmers.”

Hopefully my feedback will be helpful to the team, as it will benefit me in the long run as a user of the site. I even learned they had checked out my blog (hosted on GitHub Pages, of course)!

All in all, it was great to put myself out there and interact with more people in the community. It helped to cement my descision that this is the right path for me, and gave me the confidence to continue working at it. I hope to continue to meet others working in the field, and eventually help others like myself to enter it.

For the moment though, it’s back to coding.