[Squeakland] looking for some advice on teaching Squeak to
advanced high school kids
Oscar Nierstrasz
oscar.nierstrasz at gmail.com
Thu Nov 29 11:25:41 PST 2007
Hi Alan,
Thanks for your comments.
I'm just back from a short trip and a nasty cold.
I agree with your identification of the dilemma. So many things one
*could* do. Too little time to do it all.
That's why I sent the question to this list -- what makes sense to
attempt given the short amount of time?
I would like to be able to wow them with the incredibly dynamic nature
of Smalltalk, but there is not enough time to show everything. In
particular the meta-reflective stuff is certainly undoable.
But it should be possible to show them how we can talk to objects in
the debugger and the object inspector while we are developing a simple
application.
Right now I see two possible paths:
- focus on showing how to extend Smalltalk easily with new kinds of
abstract data types that work seemlessly with exitsing ones
- focus on how to develop simple graphical applications
In either case put the emphasis on showing how to develop iteratively
and interactively an *executable model* of the problem domain.
One idea is to take some problems that they have tackled already and
show them how they can be done more neatly in Smalltalk.
http://www.soi.ch
But maybe that is aiming too low. Precisely the issue you point out.
Maybe we need a good sample problem that would be *impossible* to
solve with conventional approaches.
I would like to get these students excited about Squeak, but am not
sure what is the right approach.
Cheers,
- on
On Nov 26, 2007, at 16:41, Alan Kay wrote:
> Hi Oscar --
>
> Let's exchange a few emails about this.
>
> First, what would you do if the kids were University students with
> the same experience? You have a day and a half, and you want to get
> them to see what is interesting about a dynamic object environment
> with a metasystem.
>
> How much time (and how to use it) would you allocate to learning the
> language, debugger, stuff in class library, and metastuff? What
> kinds of dynamic changes would you get them to do? (E.g. how about
> changing the shape of objects that are dynamically in use? We once
> added a few instance variables to Morphic, etc., and it was
> interesting how well this worked ... .)
>
> A problem with the short time (i.e. let's learn to play piano in a
> day and a half) is that it will be difficult to come up with a
> convincing example that is not fairly easy to do in a static early
> bound language (dynamic languages excel when dealing with difficult
> complex systems that are hard to debug otherwise). (One of the
> reasons Simula was not appreciated as it should have been in the 60s
> was that the example in their ACM paper (that was small enough to
> put in a paper) was fairly easy to do in Algol -- most people missed
> that Simula really scaled for many important problems where Algol
> did not.)
>
> What are your thoughts so far?
>
> Cheers,
>
> Alan
>
> At 01:09 AM 11/26/2007, Oscar Nierstrasz wrote:
>
>> Hi Folks,
>>
>> I teach at University level, not high school, and have no previous
>> experience teaching high school kids.
>>
>> At the end of January we will have a day and a half with a bunch of
>> high school kids who are finalists in the Swiss Scientific
>> Olympiads ( http://www.olympiads.ch/ ) and have the opportunity to
>> get them excited about computer
>> science. We will have various sessions to show them different things.
>> (I will not be the only one to offer something. A colleague will be
>> introducing the ones who have no background in programming to
>> Scratch.)
>>
>> I wanted to take the ones who have done some programming (i.e., those
>> who have done the Swiss Olympiad in Informatics - http://
>> www.soi.ch/ )
>> and introduce them to Squeak. For the Olympiad they have been
>> working
>> with languages like Pascal, C and C++.
>>
>> I would like the session to be mainly hands-on, and get the kids to
>> actually build something in teams of two with help from some
>> monitors.
>>
>> Does anyone have any experience like this? Can you recommend some
>> specific exercises that would be fun and would produce a real result
>> in a few hours? My concrete goal is to show them how different a
>> dynamic language and environment like Squeak can be from the
>> languages
>> they are used to.
>>
>> Any hints would be welcome.
>>
>> - on
>> ---
>> Prof. Dr. O. Nierstrasz -- Oscar.Nierstrasz at iam.unibe.ch
>> Software Composition Group -- http://www.iam.unibe.ch/~scg
>> University of Berne -- Tel/Fax +41 31 631.4618/3355
>> vcard: http://www.iam.unibe.ch/~oscar/oscarNierstrasz.vcf
>>
>>
>>
>> _______________________________________________
>> Squeakland mailing list
>> Squeakland at squeakland.org
>> http://squeakland.org/mailman/listinfo/squeakland
>
More information about the Squeakland
mailing list