What to do with labs?

Creating programs in Computer Science is an absolute must and the whole point of taking the class.  Why did you sign up for Computer Science is you have no desire to actually get your hands dirty and build something?

All students in every Computer Science class need to experience the joy of coming up with an idea and watching it dance around the screen.  Nothing quite like that.

The big issue today is that it is so easy to cheat either by borrowing code from another student or letting ChatGPT do your work. 

You hope that most students honestly do the work and enjoy making things themselves as that is the whole point, but that is not always the case.

What is a solution?

Do not count the labs / projects much in terms of the overall grade.  Grade the labs / projects however you feel comfortable ( spot check, look at uploaded code, use an auto-graded set of problems ), but weight the labs less than other parts of the overall grade.

Assess your students grasp of the labs concepts by having each student write code on paper on tests and quizzes.  Create Free Response Questions that assess the same concepts and algorithms as your labs / projects.  The test and quiz grades will be weighted more than the labs.

Spend your time grading the hand-written code and providing feedback there rather than spending time evaluating labs that could have been created by anyone.

Auto-graders are great and they save time, but students borrow code and throw it in the auto-grader all of the time. Solutions to many of the commonly used auto-graded problems can be found posted all over the internet.

Well-crafted Free Response Questions do a great job of creating accountability.  If students complete the labs / projects honestly, they will score really well on the FR tests and quizzes.

Need Labs and Free Response Questions? A+ Comp Sci has it all.

Tons of Amazing NEW Stuff!