Hello,
I just joined the group and wanted to share an unplugged game that you
might find of interest :
http://www.softwareball.org/index.en.html
I presented this game in some software development conferences and
got feedback that it could be an interesting way to learn computer
programming.
When creating this game, my primary focus was not about computer
science but software development. When I say software development, I
mean the "social" process where users have needs and some
programmers help to fulfill these needs.
In SoftwareBall, a user wants a ball to go through a given path
across the playground and the programmers need to program themselves
(they become "human programmable components") to move the ball
around.
But the user needs are likely to evolve. The path of the ball then
need to be changed and this can only be achieved by the programmers
adapting their code.
The scoring system of the game is designed such that when the
programmers fulfill the user needs, they score points and the more
they need to change their code, the more they lose points.
As a consequence, the way to highest scores is to
-
create adaptable components that can be easily re-arranged when
the user needs change
-
not over-generalize when simple code does the job
-
keep a clean code base (for example, no code duplication) to avoid
costly code changes
So far, most of the people who played this game were working in the
software industry. Some were programmers, some were not. Those who
were not (business analysts, graphic designers, project managers,
etc.) found in this game an interesting way to be in the
programmer's shoes and to face coding challenges with no strong
technical background prerequisites.
If you want to see more about SoftwareBall, you can have a look at
All the materials are free to use and share for any purpose.
Please keep in mind that these files are mere translations from my
French native language.
As I have almost zero experience in this area, could you please let
me know if you think such a game, maybe with some adaptations, might
be of use in computer science teaching/learning?
Regards,
Olivier
http://agilitateur.azeau.com/