A workshop and guide that summarizes my experience with Git and GitHub in the workplace.
Git is often not taught with introductory programming courses, yet it’s everywhere in the computer science industry. I learned Git through some self learning, but most of my knowledge and practice came from an internship.
I also noticed that a lot of hackathons claim to be beginner friendly. However, after I attended a few of them, I noticed that there was nothing done to address the lack of knowledge on topics like source code management, which are essential to organizing a codebase (especially in a short amount of time). So, when I was hosting a beginner-friendly hackathon myself, I designed a workshop and wrote a guide so people have all the resources they need to get a grasp on tools that are essential to creating a project in a group.
I believed that learning Git should be more accessible towards beginners, so I hosted the “GitHub 101” workshop at my hackathon and wrote guides for collaborating with Git. This would help participants learn how to store their code in the cloud in the same way as everyone in the workplace.
The first part of the curriculum was hosting a workshop for my hackathon. This workshop used basic HTML to create a website for the purpose of demonstration, and once I had a page to show, I introduced the idea of pushing changes to GitHub using GitHub Desktop. Following that, I wanted people to be able to see that their code was stored in the cloud, so I walked through getting a personal web URL using GitHub pages, making it easier to show how code on the remote is directly correlated with pushing changes.
I also talked about the idea of version control and its purpose: easily finding which change did what and when it was made. While commands like git log
show changes, I used GitHub desktop because it shows the commits visually, which is helpful for those new to the concept. At the end of the workshop, I also opened the floor for Q and A so that people could get answers to any questions they had about creating an app, hosting code on GitHub, using it, and anything else related to the topic.
The collaboration guide (dubbed “GitHub 201”) covers all the basics of collaborating with Git. I took many of my learnings from the internship I had with Hopscotch to write this guide, which covers topics like branches, pull requests, and code reviews. These are essential skills for those working in the industry or even in a small group project, making it an extremely valuable resource for those participating in hackathons.