Grading for equity

On the question of programming as art versus science.

Asao B. Inoue’s book on Labor-Based Grading Contracts provides an answer to the question, “What do we want students to take away from our courses?” Labor-based grading proposes that the value of a course is more in the time that students spend engaging with the concepts and less in how effectively students can reproduce dominant-discourse knowledge. Students are graded on the amount of labor and not on the quality of submitted work.

Granted, this is in the context of English composition where grading for the dominant discourse disenfranchises students. But there are similarities: research by Felienne (among others) compares learning programming languages to learning natural languages. Holding students to a universal standard for correctness can hurt those students whose reading, writing, and interests do not conform to the standards. If we grade students on coding style, which rewards conformity to dominant software engineering discourse, then the students we graduate will continue to champion those same standards. And if we narrowly define external correctness as passing all of the unit tests, then that too is how students will evaluate their own work in the future.

Holding students to standards, even ones that are designed to be equitable and accessible, necessarily means accepting a common discourse. In computer science, at least, the values embedded in this discourse are influenced by existing stakeholders even though we might prefer giving students agency to choose their own values in computing. It seems like we’ll be destined to struggle with the question of grading as accreditation so long as we hold students accountable to standards-based learning objectives.

What would an introductory programming course look like if it was less focused on having all students learn the same skills? What if the course instead focused on nurturing students’ interest in programming? We’d have to accept that there are diverse ways of knowing programming, that programming can be more of an art than a science, and that programming does not need to be like computer science. Research in the K-8 space often explores these questions in relation to how students form their sense of identity, but this is less popular in higher-ed.

However, grading as standardization is not necessarily a bad thing. Specifications-based mastery grading can serve as an extrinsic motivator, such as in gamification of learning. Video problem solutions could be a good alternative to traditional summative assessment. Rather than grade the result that students produce, grade the process students apply to get to the result. Authenticity is built in: “Even if the students are getting help from other sources, I see their ability to explain their work on video as a demonstration of their knowledge.” Programming is about more than coding, so video problem solutions might offer students more diverse opportunities to demonstrate their knowledge.