pixel
Connect with us

News

How students are taking advantage of AI to rein in their Python skills

The course prepares those students to use generative AI to boost their careers through programming.

person typing on a laptop
Image: Unsplash

Just a heads up, if you buy something through our links, we may get a small share of the sale. It’s one of the ways we keep the lights on here. Click here for more.

Uncommon Courses is an occasional series from The Conversation U.S. highlighting unconventional approaches to teaching.

Title of course:

“Learn AI-Assisted Python Programming”

What prompted the idea for the course? Generative AI is really good at computer programming – to the point where the way we teach and assess students who are learning to program must change.

We used to give students dozens or hundreds of small targeted programming tasks, drilling each aspect of the syntax – the words and symbols – of programming.

That worked well as a starting point, except now generative AI tools can solve all of these problems. Educators can try to ban these tools (good luck with that!), or embrace them.

We chose to embrace them in our new course, where students learn to program – supported by a generative AI assistant.

What does the course explore?

students on a computer course
Image: Unsplash

The course re-imagines what learning to program means now that generative AI is available to handle more of the low-level syntax issues that have historically slowed down and frustrated students.

The more students struggle with finicky syntax details, the less time and energy they have to accomplish their programming-related goals like starting a business, writing apps for social good, or contributing to projects that are meaningful to them.

Generative AI clears the decks for us to focus on more valuable, high-level skills that students need to become effective programmers.

For example, generative AI struggles to solve large problems; we still need humans to divide those problems into bite-sized chunks – a process known as problem decomposition – each of which AI can solve well.

People are still needed to test code to ensure it’s doing what was intended, and to ensure that the code is used to help, not harm, society and its vulnerable groups.

Why is this course relevant now?

Professional programmers in droves have already adopted generative AI tools and are using them to be more efficient in their daily work.

If the goal is to prepare students for these jobs, teachers need to train them in how to use these new tools.

Perhaps more importantly, what students can do in introductory courses changes. With a more powerful tool comes an ability to work at higher, more efficient levels. These tools save people time.

AI code assistants are changing what it means to do computer programming.

What’s a critical lesson from the course?

A critical lesson is that generative AI is impressive, but that it is fallible. You cannot simply ask it for code and assume that the code it gives you is perfect. It may not do the right thing.

It may produce errors, or bugs. It may cause security concerns. It may exclude underrepresented groups or discourses. You need to examine the code that you get from generative AI critically.

What materials does the course feature?

The course is built on our new book “Learn AI-Assisted Python Programming.” The book reconceptualizes an introductory programming course in the context of generative AI tools.

The main tool used in the book and in our course is called GitHub Copilot, which is like ChatGPT for programmers. Students use Copilot from day one.

They build complete apps: apps to automate tedious, error-prone tasks; computer games; even an app to guess who wrote a novel whose author may be unknown.

To ensure that students are still learning fundamentals, the book teaches them how to understand the code that the generative AI is creating.

What will the course prepare students to do?

people using a laptop
Image: Unsplash

Some students take an intro programming course to start their computer science major.

For those students, we continue to teach evergreen skills like code reading and code testing, but now also introduce the higher-level skill of problem decomposition so students can solve larger tasks than ever before.

The majority of students in the course, though, are studying other disciplines like sociology, psychology, business, engineering, and science.

The course prepares those students to use generative AI to boost their careers through programming.

Editors’ Recommendations:

Editor’s Note: This article was written by Leo Porter, Teaching Professor of Computer Science and Engineering, University of California, San Diego and Daniel Zingaro, Associate Professor of Mathematical and Computational Sciences, University of Toronto, and republished from The Conversation under a Creative Commons license. Read the original article.

The Conversation

Follow us on Flipboard, Google News, or Apple News

The Conversation is a nonprofit, independent news organization dedicated to unlocking the knowledge of experts for the public good.

Click to comment

Leave a Reply

Your email address will not be published. Required fields are marked *

More in News