Because the source for most generic programming assignments are already online?
Why not skew the grading more heavily towards in-class midterms and finals?
Or you could generate indivualized hws for each student, but that may not be feasible in a 500 student intro to cs class.