Teach non CS major introductory course using Squeak
Richard Staehli
rastaehli at mac.com
Mon Jun 6 17:46:54 UTC 2005
> Date: Sun, 5 Jun 2005 14:17:25 -0700 (PDT)
> From: Ralph Boland <ralphpboland at yahoo.com>
> Subject: Teach non CS major introductory course using Squeak
> To: squeak-dev at lists.squeakfoundation.org
> Message-ID: <20050605211725.91257.qmail at web50106.mail.yahoo.com>
> Content-Type: text/plain; charset=iso-8859-1
...stuff deleted
> I have always thought that for such students Smalltalk
> would be a MUCH better language to
> learn both in terms of learning what programming is
> all about
> and in terms of learning something that they might
> later find useful.
> I am fairly new to the Morphic part of Squeak but it
> suggests to me that because of Morphic,
> Squeak would be the preferred version of Smalltalk to
> use for such an introductory course.
>
> Thus I wonder what other think of these opinions?
>
> Can anyone suggest why these are particulary good/bad
> ideas?
I think it's a great idea because students can learn principles of
formal language, automation, and algorithms without spending so much
time on complex language syntax and multiple tools/interfaces for
design, editing, compilation, debugging, and visualization.
The danger is that because Squeak has so many tools and methods for
sharing code outside the image, browsing code in the image and just so
much code, that students can be easily distracted, frustrated and
overwhelmed. It is essential to design the lessons to provide clear
boundaries for exploration: e.g., use _this_ tool to find the answer
to _this_ problem and don't worry about all that other stuff now.
EToys is a good example of an envirionment that keep the focus on the
visual objects on the desktop so that students aren't confronted with
all the code in the system browser.
My (limited) experience with Smalltalk in undergraduate introductory
programming classes has been very positive. Students can learn the
important stuff easily and quickly produce working programs because the
development environment is so well integrated. With non-CS majors, I
don't expect you have the problem of then trying to explain why other
languages and environments are so different.
Rich
More information about the Squeak-dev
mailing list
|