At GitHub, we're big fans of traditional computer science education, and we're also happy to see some alternative models emerging for training new programmers. There are the Massively Open Online Courses from traditional institutions, online content from organizations like Udemy and CodeSchool, in-person experiences like Girl Develop It, and full-time intensive programs like Dev Bootcamp and the Flatiron School.
In this vein, I recently had the pleasure of teaching a short class at gSchool near Downtown Denver. gSchool is a non-traditional web development training program that takes passionate, motivated people and promises to make them into programmers after six months and 60 hours per week of focused education. Classes are taught by professional web developers who focus on building real things using technologies and practices in actual use by real employers. Their go-to tech stack looks pretty familiar: Ruby, Rails, various JavaScript frameworks, platform-as-a-service cloud deployments, and of course GitHub. They hack relentlessly. They write tests. They are coding before 9am every day.
For a GitHubber, this is kind of an exciting place to hang out.
gSchool's Lead Instructor, Jeff Casimir, invited me to drive down to their facility and give a few hours of advanced Git instruction. This group of students was already several weeks into their program, so naturally they knew Git basics before I got there. I spent the morning teaching them some Git internals, clarifying how rebase works, sharing helpful tips and tricks, and generally answering whatever questions they had. This was a room full of a few dozen hungry students who were going to learn what they needed to know no matter what I did—and I don't mind saying what a rewarding environment that is for a professional teacher to engage.
One of the students, John Maddux, blogged about the class. He had fun with the lesson, but more importantly, he learned precisely the Git internals I had hoped he would learn. This is music to a teacher's ears.
Computer science education seems to be in an important transition, as the industry searches for more optimal solutions to the problem of training new programmers. Will the future remain dominated by the traditional CS degrees of the past? Will four-year institutions be replaced with programs like gSchool and its many alternatives? Will Massively Open Online Courses overtake all the rest? For now we can only watch and see, but we're delighted to be involved even in a small way, and look forward to more collaboration with others in this exciting space.
If you're interested in Git and GitHub training for your team, check out what we have to offer or email Jessica to talk about getting us onsite.