Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!mnetor!uunet!seismo!mcvax!unido!infbs!neitzel From: neitzel@infbs.UUCP Newsgroups: comp.edu Subject: programming contest for beginners? - (nf) Message-ID: <18100004@infbs.UUCP> Date: Sat, 22-Aug-87 19:22:00 EDT Article-I.D.: infbs.18100004 Posted: Sat Aug 22 19:22:00 1987 Date-Received: Tue, 25-Aug-87 01:30:11 EDT Lines: 33 Nf-ID: #N:infbs:18100004:000:1450 Nf-From: infbs!neitzel Aug 23 00:22:00 1987 What about having a "programming contest" for students, who learn their first programming language? Has anybody done something like this before? I think of a contest, where the students program and/or "trade" small, re-usable functions/modules for a continous project. "Trading" functions means: Programming is not for free, but you have to invest some card-money per line, or something like that. You may "sell" your software to other participants, who then don't have to program these functions on their own, but still have to integrate your functions into their code... I hope you get the idea. Martin Neitzel ...!mcvax!unido!infbs!neitzel [Even if this looks like a project for an advanced course in software engineering, it could teach essential insights to the newcomers: - what makes programs hard to read and understand - the trade off between simplicity and generality - the worth of documentation - typical problems like "scopes" and "name conflicts" and all the other things you can't experience when programming on your own. Of course you must not be suprised, if such a programming project with newcomers is a total failure, when you look at the software coming out of it. The students will make one error after another. But they would learn from exactly these errors, because they would ask themselves "Why?". The traditional programming assignments usually don't let the student detect his own deficiencies.]