Three key forces are shaping the modern Computer Science (CS) curriculum: (1) new topics/courses are squeezing out existing ones; (2) a focus on "big picture" and interd...
As research in programming language design, implementation, and application advances, we must regularly revisit the undergraduate curriculum to ensure course content advances simi...
We discuss the technical skills that a software engineer should possess. We take the viewpoint of a school of engineering and put the software engineer's education in the wid...
Cooperative games provide an appropriate framework for fair and stable resource allocation in multiagent systems. This paper focusses on monotone cooperative games, a class which ...
The new design for the introductory programming course at ETH relies on object technology, Eiffel, extensive reuse, a graphics-rich library (TRAFFIC) built specifically for the c...