Programming Is Hard -- Or at Least It Used to Be: Educational Opportunities And Challenges of AI Code Generation

Brett A. Becker,Paul Denny,James Finnie-Ansley,Andrew Luxton-Reilly,James Prather,Eddie Antonio Santos
2022-12-02
Abstract:The introductory programming sequence has been the focus of much research in computing education. The recent advent of several viable and freely-available AI-driven code generation tools present several immediate opportunities and challenges in this domain. In this position paper we argue that the community needs to act quickly in deciding what possible opportunities can and should be leveraged and how, while also working on how to overcome or otherwise mitigate the possible challenges. Assuming that the effectiveness and proliferation of these tools will continue to progress rapidly, without quick, deliberate, and concerted efforts, educators will lose advantage in helping shape what opportunities come to be, and what challenges will endure. With this paper we aim to seed this discussion within the computing education community.
Human-Computer Interaction,Artificial Intelligence,Computers and Society,Machine Learning,Software Engineering
What problem does this paper attempt to address?
### Problems the paper attempts to solve This paper attempts to explore the opportunities and challenges of AI - driven code - generation tools in computer education. Specifically, with the emergence of AI - driven code - generation tools (such as OpenAI's Codex, DeepMind's AlphaCode, and Amazon's CodeWhisperer), these tools have had a significant impact on the teaching and learning of beginner programming courses and related courses. The main objectives of the paper are: 1. **Identifying opportunities**: - **Generating learning resources**: AI - driven code - generation tools can automatically generate example solutions, programming exercises, and code explanations, providing students with more learning resources. - **Diversifying solutions**: These tools can help students understand multiple solutions to the same problem, enhancing their understanding of different programming methods. - **Code review**: Automatically generated code can be used to evaluate the quality and style of students' code, promoting higher - level learning. - **New teaching methods**: Through automatic code generation, teachers can focus more on algorithms and problem - solving rather than on syntactic details. 2. **Addressing challenges**: - **Academic integrity**: Code generated by AI may be used by students for cheating, which makes it more difficult to detect academic misconduct. - **Attribution issues**: How to properly handle the attribution of machine - generated code, especially in an academic environment. - **Code reuse and licensing**: Using AI - generated code may involve complex copyright and licensing issues. - **Sustainability**: The long - term impact of the widespread use of these tools on educational practices, including environmental and social impacts. ### Summary The paper aims to propose that educators need to take prompt action by discussing the application of AI - driven code - generation tools in computer education, in order to fully utilize the opportunities brought by these tools and effectively address the possible challenges. This is not only related to the innovation of teaching methods, but also involves ethical issues such as academic integrity, copyright, and licensing.