How to Teach Computer Programming in the Era of Generative AI: An Overview of the PRIMM Model
Generative AI (artificial intelligence) is changing how many jobs are performed. This is true in the area I work in — software development and teaching computer science. And it is especially true in the types of computer science courses I teach, which are introductory courses teaching students the fundamentals of computer programming.
I will give you an example using one popular generative AI application — ChatGPT. Here is a typical problem I assign to my beginning C++ programming students:
Write a program in C++ that asks for five test scores. The program should calculate the average test score and display it without using an array or a loop. Be sure to define a constant for the total number of test scores. The program should format the average score to one decimal point of precision.
Note — I had to be specific about not using an array and not using a loop and to use a constant for the number of test scores.
Here is the program I wrote immediately after I typed in the problem:
#include <iostream>
#include <iomanip>
using namespace std;
int main()
{
const int TEST_SCORES = 5;
int score1, score2, score3, score4, score5;
cout << "Enter score 1: ";
cin >> score1;
cout <<…