
In a message of Sun, 08 Jul 2007 00:04:14 EDT, "Andy Judkis" writes:
I've been out painting my house, so I have some catching up to do as well . I thank Andre for coming to my defense, but I think Michael's on the righ t track. The problem is that I haven't found something sufficiently motivat ing to get these kids to climb the hill. It's not that I haven't tried, but it hasn't worked out very well. I too try to get to graphics stuff as quickl y as possible, but I think it isn't very meaningful without some control structure around it. I use the livewires API because it's the simplest I 've found, requiring the least foundation, but it still takes a while to get to where you can do much.
<snip> It is easier if you let the kids find what they want to do, rather than having to read their minds, and find something that you think they ought to want to do. The kids I was teaching were a fair bit younger, but when I asked them 'what do you use the intenet for now' the answers clustered around 'finding out when some favourite web page changed' 'getting tickets for the Spice Girls concert' and 'playing computer games'. So we ended up doing a lot of screen scraping, and collaboratively writing a small text based game. Of course the kids that I were teaching were all volunteers. If your class is mandatory, you may get kids who don't use computers and don't want to use them for anything. They will be a much harder problem then I had. Laura

Has anyone ever explored the idea of using a collaborative virtual community for teaching programming? I'm thinking about something along the lines of Amy Bruckman's MOOSE Crossing: http://www.cc.gatech.edu/elc/moose-crossing/ http://www.cc.gatech.edu/~asb/thesis/ As Laura was saying, having the students create something that's meaningful to them and their peers can be enormously motivating. One of the advantages of any virtual community that supports third-party coding, from World of Warcraft to Second Life to text-based MOOs, is that they provide an excellent social context for computer programming. What if, for instance, rather than creating an isolated program that repeatedly asks questions about who the most attractive teacher is--a program that no one would ostensibly use--the goal was to create a simple robot in a text-based virtual world that anyone else could interact with? Or a virtual dog that would eat people's virtual homework, or a hot potato that exploded after 5 minutes and covered its holder in goo? Creating such things could potentially involve just as many CS concepts as standalone programs, but they'd have a social context that would make them more meaningful and interesting for everyone involved; rather than being throwaway exercises, even the simplest of projects could be something that is lasting, has a strong creative component, and could even be constructed collaboratively. And while I'm not sure how useful it would be in a CS course, another advantage of such an environment is that it's multidisciplinary--even if someone doesn't "get" computer programming or simply isn't interested in it at all, they can still contribute through writing, art, management/coordination, and at least learn something useful about teamwork and collaboration. If Second Life's interface weren't so mind-bogglingly complex [1], I'd actually like to see it used for introductory programming classes. But barring that, I'm curious as to whether any work has been done in teaching Python like this. - Atul [1] http://www.humanized.com/weblog/2007/05/01/mixed_thoughts_on_the_metaverse On 7/8/07, Laura Creighton <lac@openend.se> wrote:
In a message of Sun, 08 Jul 2007 00:04:14 EDT, "Andy Judkis" writes:
I've been out painting my house, so I have some catching up to do as well . I thank Andre for coming to my defense, but I think Michael's on the righ t track. The problem is that I haven't found something sufficiently motivat ing to get these kids to climb the hill. It's not that I haven't tried, but it hasn't worked out very well. I too try to get to graphics stuff as quickl y as possible, but I think it isn't very meaningful without some control structure around it. I use the livewires API because it's the simplest I 've found, requiring the least foundation, but it still takes a while to get to where you can do much.
<snip>
It is easier if you let the kids find what they want to do, rather than having to read their minds, and find something that you think they ought to want to do. The kids I was teaching were a fair bit younger, but when I asked them 'what do you use the intenet for now' the answers clustered around 'finding out when some favourite web page changed' 'getting tickets for the Spice Girls concert' and 'playing computer games'. So we ended up doing a lot of screen scraping, and collaboratively writing a small text based game. Of course the kids that I were teaching were all volunteers. If your class is mandatory, you may get kids who don't use computers and don't want to use them for anything. They will be a much harder problem then I had.
Laura
_______________________________________________ Edu-sig mailing list Edu-sig@python.org http://mail.python.org/mailman/listinfo/edu-sig

I have thought a lot about this. I teach kids (aged 10-14 mostly) to write video games using Scratch and Python. They love it, but I'd like to promote more community and make the classes a little more "game like". I've been thinking about old programming games like Core Wars and Robot Wars and would like to make some newer version like that. Networked game play is an obvious improvement. An easier learning curve is important too. I made a little prototype where students could write code to control a robot in a field of robots that would show up on the projector. But the paradigm shift of programming simple graphics to an event-based search and attach program was too confusing for them. I think a Scratch type programming interface though would help things along beautifully. Of course I'd like to have a lower level Python interface too. -Winston ------------------------------------------------------------------------ -- Stratolab - video game courses for kids in new york - http:// stratolab.com On Jul 8, 2007, at 11:29 AM, Atul Varma wrote:
Has anyone ever explored the idea of using a collaborative virtual community for teaching programming? I'm thinking about something along the lines of Amy Bruckman's MOOSE Crossing:
http://www.cc.gatech.edu/elc/moose-crossing/ http://www.cc.gatech.edu/~asb/thesis/
As Laura was saying, having the students create something that's meaningful to them and their peers can be enormously motivating. One of the advantages of any virtual community that supports third-party coding, from World of Warcraft to Second Life to text-based MOOs, is that they provide an excellent social context for computer programming.
What if, for instance, rather than creating an isolated program that repeatedly asks questions about who the most attractive teacher is--a program that no one would ostensibly use--the goal was to create a simple robot in a text-based virtual world that anyone else could interact with? Or a virtual dog that would eat people's virtual homework, or a hot potato that exploded after 5 minutes and covered its holder in goo?

On Jul 8, 2007, at 3:12 PM, Winston Wolff wrote:
I've been thinking about old programming games like Core Wars and Robot Wars and would like to make some newer version like that.
I've been encouraging this from the OLPC angle, since games like these would work very well in our mesh environment. I got my eight-graders some years ago hooked on Cybugs (now called AI Wars, http://www.tacticalneuronics.com/content/aiw3dnew.asp) before teaching "real" programming in BASIC. By the time we got to BASIC, many concepts were familiar because the kids had looked at dozens of Cybugs they could find online and that they made among themselves. They were quite competitive about the whole thing, which drove their curiosity, which in turn got them looking at hundreds and hundreds of lines of code printouts -- in their own time, and of their own volition. I have yet to find another approach to teaching programming that manages to do the same :) Cheers, -- Ivan Krstić <krstic@solarsail.hcs.harvard.edu> | http://radian.org
participants (4)
-
Atul Varma
-
Ivan Krstić
-
Laura Creighton
-
Winston Wolff