Programming is an important skill of computer scientists. Therefore, learning to develop programs for a given problem and implement them into a programming language is part of every undergraduate curriculum in computer science.
The typical structure of this course is a mixture of classical lectures combined with comprehensive coding exercises in the lab. The content comprises imperative programming, concepts of object orientation, recursion and backtracking and an introduction into graphical user interface programming.
In the recent past, GenAI (generative artificial intelligence) made a great stir. GenAI systems have the ability to generate text, images or other data using generative models [1]. Typically, users enter a prompt, an input in term of a question or a request [2].
These systems influence the way of writing computer programs. For software developers the way of working will change by using these systems [3]. Therefore, it is necessary to show students the use, possibilities and limitations of these techniques [4].
In this experience, we used the chatbot ChatGPT for lab exercises in the introductory programming course. The chatbot was used for generating, explaining and simplifying code. Beside predefined exercises the students also defined programming problems on their own. Based on these tasks the students generated prompts and sent them to ChatGPT. The results were critically checked, evaluated and annotated. Moreover, the students compared their own way of coding with the code generated by ChatGPT.
In summary, the quality of generated code was surprisingly good, especially for small problems. It is obviously, that developers will delegate simple and repeating coding tasks to chatbots or other GenAI systems in the future. For these reasons it is important to integrate working with GenAI systems into introductory programming courses. The advantages and drawbacks of this approach should be imparted to students and they should get an impression about future software development.
Keywords |
higher education, computer science, programming, generative artificial intelligence, chatbot |
References |
[1] David Leslie, Francesca Rossi: Generative Artificial Intelligence. Techbriefs, ACM Technology Policy Council. 2023. [2] T. Teubner, C. Flath, C. Weinhardt, W. van der Aalst, O. Hinz. Welcome to the Era of ChatGPT et. al. Business Information Systems Engineering. 65(2), p. 95-101, 2023. [3] C. Jimenez, J. Yang, A. Wettig, S. Yao, K. Pei, O. Press, K. Narasimhan. SWE-bench: Can Language Models Resolve Real-World GitHub Issues?. Computing Research Repository (CoRR) abs/2310.06770, 2023. [4] H. Gimpel, K. Hall, S. Decker et. al. Unlocking the Power of Generative AI Models and Systems such as GPT-4 and ChatGPT for Higher Education. White Paper, March 2023. |