This semester, I’m trying something different in my Online Journalism class: using Github as a platform for collaboration on a final project. As this is a complicated topic, I’m going to break it down into several posts.
Students in the class have always produced final projects. Initially, each student would work on his/her own final project. They would share this project with the class at the end of the semester (in lieu of a final). After a couple of years, I switched to team final projects. This caused much grumbling. But I reasoned that none of these students would be working as lone rangers in their careers. They should learn to work in groups while here in college.
This semester, as the class size was small, I decided the entire class would do one final project. Each student would have a part of the final project that he/she was responsible for. Also, they would all contribute suggestions, help and advice to other students.
About this time, I saw an article about using Github in the classroom, and decided to give it a try.
Github is a “Version Control” platform created by software developers. It allows groups of developers to write, update, comment, and “fork” code without losing track of where the “master” code is in the development process.
If they can use this for software code, why can’t I use it for collaboration on a multimedia project in class?
Also, I know several news outlets and journalistic coders who use Github in their organizations (see examples here). Familiarizing my students with the platform will make them more employable.
The Learning Curve Is The Hardest Part
Alas, I was only passing familiar with Github when I decided to embark on this little experiment. This meant that, before I could put the students to work on the platform, I needed some skillz myself.
I signed up for a Github account and walked through the relatively easy-to-use tutorial that explained the basics of how to use the system. Then, I went over to Github Education and registered for an account there (educators get free access to an organization account, which allows you to have private repositories).
The most challenging part to start out is learning the vocabulary, and the “flow” of how Github works. If you’ve never worked with “repositories,” “forks,” “branches,” “commits,” “pull requests” and “issues” before, it’s daunting.
Also, Github’s “flow” works for software development, but needs some tweaking to make it work for classroom assignments and group work (you don’t necessarily want to merge a student’s pull request with the master assignment in the repository, for example). It’s taken about a week of tinkering to come down to what I think will be a sensible workflow for our final project.
The Github Education Classroom Guide is a very handy example of how a class could be set up. I’m going in a bit different direction because of the nature of my students’ collaborative project.
Github isn’t for everyone. It requires rethinking some ways you do things if you’re used to a Learning Management System (LMS). I do think there are further uses for Github in the classroom beyond courses that require coding, though. Just be prepared to spend time in the beginning training students on how to use the platform, and learning how to do so yourself.
Next up: Setting up a class.