In computer science programing courses such as Java, C, Python, C++, the CS lab plays the most significant role in helping freshmen students to learn the coding for first time. The Cs labs are designed in different ways in different Universities and also depends on the instructor teaching the main lecture course. In general, the main instructor teaches the theory of the programming language in the lecture time and practical is done during the lab. Lab instructor designs the lab where normally students work on various programming questions and code the solutions in certain programing languages. These solutions are graded by the instructors and feedback is provided to the students online, similar to the assignment/quiz grading. The labs are designed to get student hands on coding and implement the programs in the computer. As such many times, students require one on one support to get help with their code. Lab assistants (graduate or undergraduate TAs) are used to assist instructors to conduct the lab successfully. They can provide feedback to the student's source code and help them learn quickly as well as to establish good coding habits. While the CS lab is the most effective place where the students learn to code, many students might not view it the same way. They think CS lab just another class which they need to attend, just like a lecture class. For them, lab assignments are just a task and they want to complete it, submit it and get done with the lab. They just want to get grades back and most students even read the feedback provided back to them. In this work, I want to look at how CS labs can be made effective and instructors can use it to not only teach coding to students but improve the coding habits as well. This work will mainly focus on providing effective feedback to students without much extra work to the instructors. In short, lab grading by the instructor should be done by reviewing the submission file with student. Instructor should ask the student to explain their source code by emphasizing on various checkpoints. This will allow instructor to understand the thought process of the students, and provide personalized, efficient feedback to the student based on their submission. This will also allow instructor to ask other related questions to encourage critical thinking to students. Since the instructor would not need to repeat the grading again, it will not take more time in grading. A quantitative study of the implementation of this grading process will be done where the efficiency of the method will be measured by various instructor/student surveys and feedback, student results and other data. A brief discussion on selection of effective questions to ask, managing the time and encouraging students will also be presented. In this work, the computer science lab will be based on Java for freshmen students.
No takes yet. Share an insight, caveat, or question.
Sanish Rai (2024) studied this question.
Synapse has enriched 5 closely related papers on similar clinical questions. Consider them for comparative context: