Computer science for all: a case study in curriculum reform