Track, organize and share your work: An introduction to Git for research

Cognitive Modelling & Decision Neuroscience Lab at University of Hamburg

Version Control
Git
Reproducibility
Open Science
Teaching
Course

6 hrs  Local  9 participants

Date

September 27, 2024

Website

https://lennartwittkuhn.com/version-control-course-uhh-2024/

Testimonials

Feedback

“[The course] gave an excellent overview and introduction to multiple things, like using the command line (which I particularly appreciate now), Git, as well as GitHub/GitLab.”

“I really liked the hands-on practice sessions in combination with the course book and the website. The course materials are great for revision when implementing Git in my work.”

Description

Content

In today’s digital age, the majority of scientific insights in research are gained from the analysis of data using programming code. Although data and code are integral parts of their work, scientists often handle digital objects on their computers in a somewhat chaotic, unreliable, and irreproducible manner. It’s not uncommon to hear researchers wondering, “Which version of my data and code did I use to get this result?” or “I found a bug in my code. Since when was it there?” and “This code used to work! What did I change?”. This not only affects the reproducibility and trustworthiness of science but also frequently leads to frustration, a waste of time, and, at worst, the loss of painstakingly accumulated work. The good news is that scientists can learn about practices and tools from other disciplines, particularly software engineering, that have significantly professionalized collaborative work on digital objects like programming code. At the core of this toolkit is the free and open-source software Git, a so-called version control system that allows tracking and organizing the evolution of digital objects on computers and sharing them via platforms like GitHub. In this hands-on course with practical exercises, participants will learn how to track, organize and share their work using Git.

Goals

The primary aim of this course is to empower course participants with the skills to efficiently organize projects on their computers using Git and GitHub. Participants will actively engage in hands-on experiences with these tools, exploring both the command-line and Graphical User Interfaces. Proficiency in Git and GitHub not only enhances participants’ effectiveness in conducting research projects by ensuring organized and reproducible workflows but also elevates their employability. The technical skills acquired in this course are increasingly sought after in various work settings, providing course participants with a competitive edge in today’s dynamic job market.

Mechanics

Guided by the seminar instructor, participants will engage in practical hands-on exercises with Git and GitHub while working through a dedicated Git Handbook (https://lennartwittkuhn.com/version-control-book/) that is tuned to the structure of the course and needs of the course participants.