GitHub Open Sources a Tool That Teaches Students to Code

GitHub is a way for software engineers to shape and collaborate on code. But it's also a good way of teaching people to do the same thing.
95b26b9c58a711e599e9d65996d53687
GitHub

GitHub is a way for software engineers to share, shape, and collaborate on code. And it's also a good way of teaching people to do the same thing.

John Britton is GitHub's "education liaison." That means he helps bring GitHub to schools and college campuses. In recent years, the sweeping online service has remade the way coders build software across Silicon Valley and beyond, and now, according to Britton, it's changing the way that teachers teach coding. After all, GitHub is all about working on code together.

Hundreds of thousands of students are enrolled in GitHub's various education programs, Britton says, and more than 3,000 teachers are using GitHub as a teaching tool. "It's becoming more and more popular," he tells WIRED. "We're definitely headed towards using more real tools in the classroom."

Mark Tareshawty will tell you something similar. Now a senior in the computer science department at Ohio State University and a teaching assistant in the university's web apps course, he has seen firsthand the rise of GitHub in education. GitHub gives teachers a way of readily sharing code and coding assignments with students as they learn the craft of building software. Teachers can also use it to teach collaborative coding, an important skill in the modern world of pair programming. Nowadays, that's how software is built.

"When I started in computer science, there wasn't a whole lot of collaboration, there wasn't a whole lot of teamwork. You worked by yourself. You didn't talk to anybody," Tareshawty says, before pointing out that he started just three or four years ago. "But I'm now using GitHub as a teaching assistant, and it has really changed the way that people think....it feels more like what we would do when working out in the [professional world]."

The problem, he says, is that sharing assignments in this way isn't as easy as it could be. That's why he built Classroom for GitHub, a tool meant to significantly streamline the process. Basically, it lets teachers invite students onto GitHub and create and share coding assignments through the service. Teachers can send a single URL to students, Tareshawty says. Once they click on it, they're automatically set up to view, modify, and collaborate on code.

The tool dovetails with GitHub Education, a service that provides classrooms with free private code repositories where teachers and students can post code and collaborate. Naturally, Tareshawty's tool is open source, like so much on Github, meaning it's freely available to the world at large. Now GitHub plans to release it later today, after Tareshawty built the new tool as part of the GitHub Summer of Code program, which provides stipends for student open source projects.

Classroom for Github is part of a larger effort to improve computer science education through internet services. From Codecademy to Khan Academy and more, online courses for learning how to code are available not just to high school and university students, but, well, anyone. Want to learn how to tell a computer what to do? Just turn on your computer.