Teaching software development ... Note
GitLab

Teaching software development the easy way using GitLab

Software development instructors face challenges in distributing assignments and providing effective feedback. The GitLab for Education program provides free access to GitLab Ultimate for institutions. Stephen Dame from the University of Washington, Bothell, utilizes GitLab to manage course materials and student feedback efficiently. He leverages GitLab’s Groups and Subgroups to create an organized hierarchy. This structure models the university, course, and roles with specific permissions applied. Instructors control access to materials with student and grader subgroups. Students use SSH keys to access and manage their code within private repositories. GitLab's REST API automates large-scale student management via subgroup creation and membership using a Python script example. Students submit assignments via merge requests, facilitating inline code comments and contextual feedback. This workflow mirrors professional software development environments, benefiting the students. GitLab for Education offers valuable features like unlimited reviewers and extra storage. Instructors are encouraged to start simple and gradually expand their usage.