GitHub Copilot now available for teachers

After a year in technical preview, GitHub Copilot, an AI pair programmer, is now free for all teachers verified on GitHub Global Campus.

Education news and updates
| 4 minutes

GitHub is committed to responsible innovation, while also lowering the barriers to entry for anyone interested in learning how to code. Part of that commitment means making tools available free of charge to those educating the next generation of software developers. So far, we’ve been able to offer multiple benefits, including free cloud compute to teachers via GitHub Codespaces.

Today, we’re excited to announce the free availability of GitHub Copilot for all teachers verified on GitHub Global Campus. (Not sure if you’re verified? See below for more details).

What is GitHub Copilot?

GiHub Copilot is an AI pair programmer that uses OpenAI Codex to suggest code and entire functions in real time, right from your editor. Earlier this summer, following a successful year long technical preview with more than 1.2 million developers, we launched GitHub Copilot for individuals. The feedback received from the community has made it abundantly clear: AI is one of the best tools to empower the next generation of developers. With GitHub Copilot, developers have more time and space to focus on solving bigger problems and building even better software.

How does GitHub Copilot impact your classroom?

We recognize the challenge of integrating GitHub Copilot into your classroom, and are committed to partnering closely with our teacher community on how GitHub Copilot can support you and your students. As a first step, we’ve been working with partners to identify how GitHub Copilot might impact your curriculum, as well as the emerging opportunities. Here’s what we know:

GitHub Copilot gets good grades

GitHub Copilot is effective at solving many introductory programming assignments, which may impact how you assess your students. One study found that solutions generated by GitHub Copilot placed it amongst the top 25% of students in a cohort.

This technology should be of great interest to all computing educators. What we are dealing with is a freely-available program that can take casually defined English language problem specifications, much like typical exam questions, and return often-correct, well-structured code that could pass as human-written.

- Finnie-Ansley et. al, The Robots Are Coming: Exploring the Implications of OpenAI Codex on Introductory Programming, https://doi.org/10.1145/3511861.3511863

Paul Denny, associate professor at the University of Auckland, and coauthor of the study, says, “This technology has arrived quickly and will be a challenge for many existing teaching approaches, but it also presents unique opportunities for course and content design and new ways of teaching.”

For example, let’s take a look at GitHub Copilot attempting to solve a version of the classic ‘Rainfall problem’.

In this case, GitHub Copilot has produced a plausible solution but it’s not perfect. That’s to be expected. As GitHub Copilot keeps changing, your own results with the same prompts may differ. Try your own assignments with GitHub Copilot to see how well it performs.

GitHub Copilot generates useful explanations of source code

Paul and colleagues from Aalto University have also used the model to generate explanations of code examples for students. According to Paul, “We have subsequently found that many of the code explanations, from line-by-line descriptions to high-level summaries, are very accurate and often text-book-like and perceived by students to be helpful.”

Here’s an example of GitHub Copilot solving another problem, which we incrementally make harder. It finishes with an explanation of its solution.

And here’s an example of modular exponentiation. Github Copilot explains the code, principle and states the time complexity.

GitHub Copilot can generate coding assignments

Paul and his colleagues also showed that GitHub Copilot can generate new programming assignments. We tried their approach and this is what we got:

Not every example works this well. The benefits of generating your own learning resources are robust and well known. Tools like this could assist students in producing practice materials and learning from thinking critically about their merit.

Get involved

If you’re interested in sharing your experience, feedback, or ideas, please join the conversation with other verified teachers on GitHub Global Campus.

Not yet verified? Join GitHub Global Campus for teachers.

Thank you

We gratefully acknowledge the authors of the papers we cited in this blog, including: James Finnie-Ansley, Paul Denny, Brett Becker, Andrew Luxton-Reilly, James Prather, Sami Sarsa, Arto Hellas, and Juho Leinonen.

Written by

Andrew Rice

Andrew Rice

@acr31

I’m a Principal Researcher at GitHub. I am part of GitHub Next which investigates the future of software development. I enjoy building novel things, trying to understand them, and seeing people use the results. My current interests lie in machine learning and its application to software development.

I joined GitHub in January 2022, and before that I was Professor of Computer Science in the Department of Computer Science and Technology at the University of Cambridge.

Related posts