Don't be afraid to commit experiences using github classroom for teaching CS Cover Image

Don't be afraid to commit experiences using github classroom for teaching CS
Don't be afraid to commit experiences using github classroom for teaching CS

Author(s): Andrew Wolfe
Subject(s): Social Sciences, Economy, Education, Essay|Book Review |Scientific Life, Higher Education , Conference Report, ICT Information and Communications Technologies
Published by: Нов български университет
Keywords: Version Control; Pedagogy; Collaboration; Software Development

Summary/Abstract: Many of us teaching Computer Science are familiar with version control systems, whether from academic experience or from industry. In professional environments, such systems are often viewed as vehicles for delivering a product. However, in a very real sense these systems are also an individual vehicle for delivering their individual work for integration into a product. In this way, the conveyance of the CIS student’s work for grading bears a lot of resemblance to version control. And, of course, students going into a professional environment are likely to be required to use such tools on a daily basis. At the same time there are many drawbacks to teaching computer science or CIS using Blackboard or other learning management systems ("LMS"). The most serious problem is that realistic assignments involve files that depend on other files and on runtime context, like particular folder or initialization files. Such context is lost is the flattened submission format of the LMS. In addition, LMS assignment structures also obstruct the provision of 'sample' or 'starter' files, and of the directory/folder structures often needed to make toolsets work effectively. In order to meet these needs, I decided to use a service called GitHub Classroom in three courses from Fall 2017 to the present. GitHub is well known as a colossal version-control repository server using the git distributed version-control system. (In 2017 GitHub had 24 million users with 67 million version-control repositories.) GitHub Classroom is a service that adapts the usual professional Git workflow to distribute individually to students; it is free to those with certifiable faculty positions. The first course on which I used GitHub Classroom was CS 689, the newly-reworked course "Designing and Implementing a Data Warehouse." However, in the middle of the Spring semester, I also deployed GitHub Classroom on the Term Project for CS 669, "Database Design and Implementation for Business." I found GitHub Classroom to be extremely useful and, with adaptations, intend to use it for future courses. This paper will present my experience as a case study on the mechanics, advantages, and drawbacks of using this service for teaching courses relating to computer science and information systems.

  • Issue Year: 14/2018
  • Issue No: 1
  • Page Range: 347-366
  • Page Count: 19
  • Language: English