Visual Studio Code in Introductory Computer Science Course: An Experience Report
Jialiang Tan, Yu Chen, Shuyin Jiao · 2024
Involving integrated development environments (IDEs) in introductory-level (CS1) programming courses is critical.However, it is difficult for instructors to find a suitable IDE that is beginner-friendly and offers robust functionality.In this paper, we share our experience of implementing Visual Studio Code (VS Code) in a CS1 programming course.We describe our motivation for selecting VS Code and our approach to introducing it to engineering students.To assist students with diverse programming backgrounds, we provide comprehensive guidance with hierarchical indexing.By seamlessly integrating VS Code, known as a rich text editor, with a selection of extensions, our aim is to streamline the learning process for students by enabling it to function as an IDE.We perform an experimental evaluation of students' programming experience of using VS Code and validate the VS Code together with guidance as a promising solution for CS1 programming courses.We have identified Microsoft Visual Studio Code (VS Code) as the preferred option.By integrating VS Code with a selection of extensions, it becomes an IDE that incorporates all four aforementioned features.Additionally, VS Code has been widely adopted in many advanced courses in our department, including operating systems, compiler constructions, computer networks, and others.However, it has not received significant attention to CS1 courses.Furthermore, based on our study of 20 computer science departments, none of them specify VS Code as the default IDE in introductory programming courses.Moreover, there is a lack of comprehensive guidance on VS Code for educators and students.Given that students come from diverse backgrounds, with varying majors, learning speeds, and familiarity with different operating systems, comprehensive guidance is essential to facilitate the efforts of both students and educators.This paper presents the first experience report on the use of VS Code in an introductory (CS1) Python course.We have created the first comprehensive guidance for VS Code, tailored for both students and educators by gathering plugins (i.e., VS Code extensions) for Python education and incorporating various user experiences.The guidance is highly modularized to cater to students