• Title/Summary/Keyword: GitHub classroom

Search Result 2, Processing Time 0.014 seconds

A Workflow for Practical Programming Class Management Using GitHub Pages and GitHub Classroom

  • Aaron Daniel Snowberger;Choong Ho Lee
    • Journal of Practical Engineering Education
    • /
    • v.15 no.2
    • /
    • pp.331-339
    • /
    • 2023
  • In programming classes, there is always a need to efficiently manage programming assignments. This is especially important as class sizes and assignment complexity grows. GitHub and GitHub Classroom makes the management of student assignments much simpler than uploading files and folders to a LMS or shared online drive. Additionally, git and GitHub are industry standard tools, so introducing students these tools in class provides them a good opportunity to start learning about how software is developed in the real-world. This study describes a workflow that uses both GitHub Pages and GitHub Classroom for more efficient classroom and assignment management. The workflow outlined in this study was used in two practical web programming classes in Spring 2023 with 46 third and fourth-year university students. GitHub Pages was used as a classroom website to distribute class announcements, assignments, lecture slides, study guides, and exams. GitHub Classroom was used as a class roster and assignment management platform. The workflow presented in this study is expected to assist other lecturers with the formidable tasks of distributing, collecting, grading, and leaving feedback on multiple students' multi-file programming assignments in practical programming classes.

Creating a Standardized Environment for Efficient Learning Management using GitHub Codespaces and GitHub Classroom

  • Aaron Daniel Snowberger;Kangsoo You
    • Journal of Practical Engineering Education
    • /
    • v.16 no.3_spc
    • /
    • pp.267-274
    • /
    • 2024
  • One challenge with teaching practical programming classes is the standardization of development tools on student computers. This is particularly true when a complicated setup process is required before beginning to code, or in remote classes, such as those necessitated by the COVID-19 pandemic, where the instructor cannot provide individual troubleshooting assistance. In such cases, students who encounter problems during the setup process may give up on the class altogether before even beginning to code. Therefore, this paper recommends using GitHub Codespaces as a tool for implementing standardized student development environments from day one. Codespaces provides Docker containers that an instructor can configure in such a way as to enable students to practice installing various coding tools within a controlled space, while also providing a language-specific, fully optimized development environment. In addition, Codespaces may be used more effectively in collaboration with GitHub Classroom, which helps instructors manage both the starter code and coding environment in which students work. In this paper, we compare two semesters of university Node.JS programming classes that utilized different development environments: one localized on student computers, the other containerized in Codespaces online. Then, we discuss how GitHub Codespaces and GitHub Classroom can be used to increase the effectiveness of practical programming classes while also increasing student engagement and programming confidence in class.