In this multi-part series, I'll be exploring different aspects of learning computer science and software development that negatively affect the diversity of the industry as a whole. First, I'll spend some time describing the issue, followed by a discussion of different views of how we might go about solving the...

I mean only mild disrespect for astrology in this post. Just kidding. Astrology really just provides a nice framework for the ideas I want to explore. I'm sure there are nuances that I don't understand. tl;dr Don't worry too much about the mess problem solving necessitates. Trying to clean up...

JavaScript is in the process of getting a big fancy makeover, and while most of its new features aren't widely supported by browsers just yet, there is an easy way start using it in your projects. I'll walk through a few of the features that I think are neat as...

Exercism.io is a place to solve programming challenges in a social context. I was introduced to binary search trees through Exercism, and then promptly stumped by the problem of traversing them. Eventually, I gave in and used a method I had found but didn't understand to solve the problem. This...

If you are willing to dig around a bit, you'll find several methods to do this. However, most of these will require some sloppy hacking—that is—trying things you don't understand until something accidentally works. So here's to doing it on purpose. Next time. Probably. tl;dr Run shell commands in Ruby...