Using AI on the course

Table of contents

AI tools on the course

The course includes explicit, reasoned inclusion of AI tools, both in the form of utilising an AI tutor as well as testing AI-assisted programming.

Nowadays, AI tools are an evermore central part of programming. Ranging from intelligent autocompletion to generating/modifying complete workflows based on instruction, these tools greatly transform how programming is done. Most importantly, they shift the focus in programming from implementing the details of workflows to higher-level tasks of designing and verifying the logic of these workflows.

However, to do this, one still needs to be able to read and follow what a particular piece of program does. And the best way to do this is still to understand 1) the basic command and data structures used in programming and 2) how these are combined into workflows that solve a problem one step at a time.

Earlier, it was clear that the best way to convey these skills was through lots of practice, implementing small programs to solve given tasks. However, now that it is possible also to get AIs to generate implementations for these, it is unclear what the best balance between writing and reading code to understand it should be. On this course, we will explore this balance as follows:

  1. First, the four first weeks that teach the fundamental building blocks of programs will be done completely manually in an online environment. You will be allowed to use the AI tutor to help you with problems, but not to generate code for you.
  2. Then, when moving on to the latter part of the course which deals with both more advanced data structures as well as algorithmic thinking, you'll be allowed to use AI tools to actively generate code for one third of the assignments.

Now, I have no foolproof way of knowing whether you use AI tools also for the other assignments - but I do know that if you only let the AI complete your assignments, you'll not learn what you need to progress later down the line. I will also be doing spot checks on these to identify potential misuses.

To prepare for using the generative AI tools starting from part 5, you should already now sign up for GitHub Copilot, which as a student, you should be able to get for free through the GitHub Student Developer Pack.

Steps:

  1. Apply for the Pack: Go to the GitHub Student Developer Pack website and apply. You will need to verify your student status with a school-issued email and student ID or certification. image

  2. Wait for Approval: Verification may take a few days. You will receive an email once you are approved.

  3. Enable Copilot: Activate Copilot free license from Signup to GitHub Copilot. It may take several days for a free license to become available. image After enabling, go to your GitHub account settings. Under "Billing and licensing," ensure that GitHub Copilot appears as active in the "Licensing" section.

For detailed information, see the official documentation on GitHub Global Campus for students.

AI tutor

As a second AI tool, the course has access to a chat AI that has been configured to act as an AI tutor. For more details on it as well as usage examples, see here.