[Newbies] Using Squeak to teach undergrads OOP
dcespin at fastmail.fm
Fri Jan 15 07:23:38 UTC 2010
On Thu, Jan 14, 2010 at 08:55:11PM -0500, David T. Lewis wrote:
> On Thu, Jan 14, 2010 at 07:57:53PM -0500, waufrepi III wrote:
> > Hi,
> > I was talking to one of my Professors about Squeak the other day and I got
> > an mail asking:
> > "I had lunch with several of the other CS faculty yesterday and I brought up
> > your enthusiasm for smalltalk, which I've never used. Some of the faculty
> > panned it because they claimed the I/O features were either poor or
> > nonexistent. [Java will never be displaced as the first language at
> > ............] What is your impression of the I/O abilities of smalltalk?
> > There is much discussion about the need to learn a language with OOP
> > features before Java.
> > I'm still a novice and I actually haven't been able to play with squeak much
> > lately do to other classwork..so rather than blow an opportunity for squeak
> > I thought I'd ask here and see what the pros say.
> > wfpi
Learning how to accomplish programming tasks in different ways is always
instructive. I think the theory of OO is far easier demonstrated with
Smalltalk, but "practical" OO (as in, real-world OO software) seems to
be predominately done in Java, C#, and C++. Indeed, I think the light
would go on quicker if the students were introduced to OO concepts via
Smalltalk (or even CLOS), rather than "public class Foo implements
Bar,Baz", most of which is syntactic noise at the introductory level. My
students consistently treated such (Java) code as mysterious incantations,
rather than anything comprehensible.
> If you want to get a job, study Java. If you want an education, study
At the university, are we training thinkers or plug-compatible software
engineers? Or, to put it another way, is an undergraduate CS program a
vocational school for future low-level industrial programmers, or is it
a broad introduction to topics in computer science?
> Long term, you will be happier, wealthier and wiser if you get
> a good education.
More information about the Beginners