I'd make them build some sort of a web-based adventure/RPG game, for several reasons:
First, writing games is fun. Even the most boring programming task can be enjoyed if it's in the context of writing a game.
Second, RPG / adventure games are inherently stateful which makes using REST / MVC non-trivial. Still, most real world applications are stateful one way or another so it's a good way to get familiarized with these concepts (as well as related ones such as continuations) and the underlying problems.
Third, if you allow interaction between players they can gain some familiarity with social software.
First, writing games is fun. Even the most boring programming task can be enjoyed if it's in the context of writing a game.
Second, RPG / adventure games are inherently stateful which makes using REST / MVC non-trivial. Still, most real world applications are stateful one way or another so it's a good way to get familiarized with these concepts (as well as related ones such as continuations) and the underlying problems.
Third, if you allow interaction between players they can gain some familiarity with social software.