[Edu-sig] Now I went and did it.

Jason Cunliffe jasonic@nomadicsltd.com
Sun, 8 Oct 2000 16:15:41 -0400


From: Kirby Urner <pdx4d@teleport.com>

> Anyway, I spent some hours since Shriram's email refamiliarizing
> myself with Scheme (RScheme to be specific) and going further into
> it.  I see some commonalities with Python, in particular the
> abstraction of thinking of all names as pointers to objects,
> including names of functions, which may be passed as parameters
> to other functions.

I took a very  brief look at the TeachScheme! project and the book draft.
It is great to see such work being logically developed and articulated.
It can surely only have aa good influence..

But something bothers me. As creative person still struggling to attain
fluency in programming, I consider myself a useful guinea-pig testcase for
some aspects of CP4E.

I find myself become more of an instant nutcase than testcase when I look at
even this trivial example:

(define (area-of-disk r)
  (* 3.14 (* r r)))

A voice inside my head starts saying "No. Stop no!"
This just does not look or feel right,  but I find it hard to articulate
why...
But to me this pretty much exemplifies what _is_ wrong with so much computer
science. It is not 'natural',  and certainly not intuitive to my brain.

Okay, yes one can learn the syntax and methodology of this language, adapt
to its rules and profit from its true virtues. Many do. I have couple of
very bright acquaintances doing wonderful work with Scheme. But they are
also already very sophisticated and accomplished programmers with a
truckload of languages and major projects behind them who came to it later..

I wonder to how many people react differently from me, and what the real
pre-conditions are whereby one says instead  "oh yes of course! :-)"

Now Python by contrast makes me feel sane..
..and it did so from day 0

def areaCircle(radius):
    area = (radius * radius) * 3.14
    return area

### I promise you I am not writing this to engage in any language war
debate.
Rather I am genuinely curious what others feel about this question of common
 sense, intuition and programming vis-a-vis development, curriculum, CP4E.

I think my allergy to some programming languages stem from 2 things:
- visual syntax clarity matters to me [Python white space indentation = v.
nice]
- natural language or object order..

This last one is very tricky I know because English is my mother tongue so I
cannot really know how does programming syntax feel to people around the
world from different subject-object-verb systems?
I get a glimpse only from use and study of other spoken languages and when
speaking with non-English speakers.

The order of things seems to matter and be important beyond just spoken
language but to how we function in this world. Especially when we are very
young and learning to recognize core patterns and dvelop skills based on
those...
Are there consistent universal patterns of recognition and action which are
independent from language culture personality? How does learning play into
this.. Where does early computer programming belong?

I would love to hear about anyone's personal experiences from both the
learning and teaching side of this huge question. And if you know any
suitable paradigms/ reading / research on this...

The last book I read was Andy diSessa's latest:

Changing Minds: Computers, Learning, and Literacy
by Andrea A. Disessa
Hardcover - 320 pages 1st edition (May 15, 2000)
MIT Press; ISBN: 0262041804

.. recommended..

your thoughts most welcome
- Jason