Always know what’s #trending

39.9 F
New York

AI gives nonprogrammers a boost in writing computer code

What do you think there are more of: professional computer programmers or computer users who do a little programming?

It’s the second group. There are millions of so-called end-user programmers. They’re not going into a career as a professional programmer or computer scientist. They’re going into business, teaching, law, or any number of professions – and they just need a little programming to be more efficient. The days of programmers being confined to software development companies are long gone.

If you’ve written formulas in Excel, filtered your email based on rules, modded a game, written a script in Photoshop, used R to analyze some data, or automated a repetitive work process, you’re an end-user programmer.

As educators who teach programming, we want to help students in fields other than computer science achieve their goals. But learning how to program well enough to write finished programs can be hard to accomplish in a single course because there is so much to learn about the programming language itself. Artificial intelligence can help.

Learning the syntax of a programming language – for example, where to place colons and where indentation is required – takes a lot of time for many students. Spending time at the level of syntax is a waste for students who simply want to use coding to help solve problems rather than learn the skill of programming.

As a result, we feel our existing classes haven’t served these students well. Indeed, many students end up barely able to write small functions – short, discrete pieces of code – let alone write a full program that can help make their lives better.

Tools built on large language models such as GitHub Copilot may allow us to change these outcomes. These tools have already changed how professionals program, and we believe we can use them to help future end-user programmers write software that is meaningful to them.

These AIs almost always write syntactically correct code and can often write small functions based on prompts in plain English. Because students can use these tools to handle some of the lower-level details of programming, it frees them to focus on bigger-picture questions that are at the heart of writing software programs. Numerous universities now offer programming courses that use Copilot.

At the University of California, San Diego, we’ve created an introductory programming course primarily for those who are not computer science students that incorporates Copilot. In this course, students learn how to program with Copilot as their AI assistant, following the curriculum from our book. In our course, students learn high-level skills such as decomposing large tasks into smaller tasks, testing code to ensure its correctness, and reading and fixing buggy code.

In this course, we’ve been giving students large, open-ended projects and couldn’t be happier with what they have created.

For example, in a project where students had to find and analyze online datasets, we had a neuroscience major create a data visualization tool that illustrated how age and other factors affected stroke risk. Or, for example, in another project, students were able to integrate their personal art into a collage, after applying filters that they had created using the programming language Python. These projects were well beyond the scope of what we could ask students to do before the advent of large language model AIs.

Given the rhetoric about how AI is ruining education by writing papers for students and doing their homework, you might be surprised to hear educators like us talking about its benefits. AI, like any other tool people have created, can be helpful in some circumstances and unhelpful in others.

In our introductory programming course with a majority of students who are not computer science majors, we see firsthand how AI can empower students in specific ways – and promises to expand the ranks of end-user programmers.

This article is republished from The Conversation, a nonprofit, independent news organization bringing you facts and trustworthy analysis to help you make sense of our complex world. It was written by: Leo Porter, University of California, San Diego and Daniel Zingaro, University of Toronto

Read more: AI helps students skip right to the good stuff in this intro programming course Navigating deepfakes and synthetic media: This course helps students demystify artificial intelligence technologies AI can teach math teachers how to improve student skills

Leo Porter receives funding from the National Science Foundation and receives compensation for sales of the book "Learn AI-Assisted Python Programming."

Daniel Zingaro receives funding from the National Science Foundation and receives compensation for sales of the book "Learn AI-Assisted Python Programming."

Related Articles

Skip to content