Originally published at http://opensourceschools.org.uk/michael-k-lling-greenfoot.html
Greenfoot is one of the new wave of graphical programming environments written with learners in mind. Like Scratch, Alice and E-Toys, it’s open source software, and as with these other examples, it’s a toolkit which lets learners start writing code for themselves, taking control of the computer and learning through problem solving and experiment, providing a powerful way of looking at the world. However, where Scratch, Alice and E-Toys all nod in the direction of the historically significant (and still used) Logo programming language, Greenfoot supports Java, with its users learning standard object-oriented programming in Java, admittedly within a development environment that makes working with interaction and graphics very easy. As Michael puts it in his introduction, “While Greenfoot is an educational environment, Java is not a toy language”.
The book is great. Whilst suitable for introductory undergraduate courses, it’s accessible and interesting enough to be used with upper secondary pupils, who’d find plenty of motivation and challenge. It (and indeed Greenfoot) would also be within the grasp of bright, motivated students wanting to learn programming and happy to work independently – perhaps something for a G&T project? One of the book’s particular strengths is the way theory and practical work are very closely mixed: this is not a book to sit and read – it’s very much one which you work through, editing the code on screen in Greenfoot as you do. Michael manages to cover some fairly meety programming concepts through the projects he explores, which, for once, go beyond game development to model some complex real world situations (qv Tom Hoffman’s recent discussion of supermarket checkouts and Star Logo).
You can get a good flavour of the sort of thing students can accomplish in Greenfoot through the Gallery, with many of the uploaded scenarios making their source code available too, true to the spirit of computer science and open source software.Share