Photo: Robert Sedgewick |
Photo: Istockphoto.com/Andrew Suslov |
Should we require all college students to take a computer science course? That is perhaps debatable. But, without question, we need to make such courses available to all students.
Colleges and universities offer the opportunity for any student to take as many courses as they desire in math, history, English, psychology and almost any other discipline, taught by faculty members in that discipline. Students should have the same opportunity with computer science. But at far too many institutions today -- including many of the most prestigious in the country -- students who are not computer science majors encounter severe enrollment caps, watered-down computer science for nonmajors courses or courses that just teach programming skills. They deserve better...
Does this put computer science majors at a disadvantage? No. They can learn their major in depth later, as do the doctors, chemical engineers, writers, historians and everyone else. Meanwhile, they can benefit from learning something about the big picture, along with everyone else.
By putting everyone in the same course, focusing on what is important, teaching programming in the context of interesting and diverse applications across many disciplines, avoiding esoteric language details that can easily be saved for later, and mixing in historical context, theory, simple abstract machines and other material that is new to everyone, we can get all students on more or less the same playing field in one or two courses -- pretty much in the same way as we do in other disciplines.
Read more...
Source: Inside Higher Ed