This is the course material for the course "Generative AI for writing (research) software".
Course content: Generative AI is emerging as a major creative force that supports humans in content creation. Specifically trained models can support software developers with their software projects and lead to time savings and a shift in what aspects of generating software are more important on a day-to-day basis. In this course, we will learn about GitHub Copilot, the differences to ChatGPT, and how to set up and use GitHub Copilot in coding projects. Best practices in using Copilot, as well as recommendations how to use it efficiently and safely will be introduced. The slides can be found here and we will use GitHub classroom assignments during the course.
Learning targets:
- Know what GitHub Copilot is and what is happening under the hood
- Use Copilot in an IDE
- Improve Copilot's suggestions through providing appropriate context
- Know when and when not to use Copilot
- Know about privacy and security when using GitHub copilot
Prerequisites: Basic Python knowledge is required. Participants need a laptop/PC with Visual Studio Code installed and a working Python environment. Participants need to have access to GitHub copilot (either through free trial, individual license such as GitHub student (free), or other form of license).
Before the course, you need to sign up for a GitHub Copilot license. There are several options:
- Sign up for a free trial: You can get a free 30-day trial license of GitHub Copilot
- Sign up as GitHub student: If you are currently a student/PhD student, you can get access through signing up for GitHub student developer pack
- Sign up as GitHub teacher: If you are currently a Postdoc or similar, you can get access through signing up for GitHub teacher
- Sign up for a paid individual license
- Access GitHub Copilot through your Copilot Business or Copilot Enterprise subscription
- assignment repo #1: example-pandas
- assignment repo #2a: example-numpy
- assignment repo #2b: example-transformers