On Tue, Jul 5, 2016 at 9:14 AM, kirby urner <kirby.ur...@gmail.com> wrote:

>
>
> What's standing out for me is how often Jessica
> uses the phrase "just like in math class" or "as
> you'd expect from math class".
>
> Exactly, reminding viewers of "math class" is
> as bridge to previous relevant experience for
> most, though not all.
>
>

On the other hand, given it's 2016 and scientific
calculators still reign supreme in the math classrooms
of many schools, I wonder if I'm really barking up the
wrong tree.

If you look at J-language documentation and teaching
materials (jsoftware.com), you'll see a lot of emphasis
on "parts of speech".  J semantics is learned more like
a human language in terms of having nouns and verbs,
phrases and sentences.  I consider J a "hard language".
It's a direct descendant of APL (also by Iverson).

When implementing object oriented programming, so
many languages use "dot notation".  I'm thinking a best
way to introduce that is using "parts of speech" the
way J does:

>>> noun = Thing()  # give birth to a new Thing
>>> noun.color   # adjective
'red'
>>> noun.sayhello()  # verb
'hello, world'

We want students to think of dot notation in a really
generic way.  Rather than say "object" which comes
heavy with technical connotations, why not say "thing"
(as in "Internet of Things").  Right away, we think of
a "generic thing" as having:

(A) in outside (a control surface, the API)
(B) an inside (a place for "internal state")
(C) attributes
- (C.i) adjectives (properties)
- (C.ii) verbs (behaviors, abilities, callables methods)
- (C.iii) nouns (a thing may contain other things)

Should we be integrating "dot notation" within human
language classes?  I'm thinking PSL or "Python as a
second language" might make a good title, alluding to
ESL ("English as a Second Language") already in
common use.

In PSL we're leveraging any knowledge of a human
language grammar, with its nouns, verbs and adjectives,
to phase in "dot notation" as a syntax.  (One could even
use PSL to leverage ESL by using Python as something
to converse about when teaching English).

If math teachers realized that English teachers down
the hall were sharing Python as a way of reinforcing the
whole idea of "languages" and "grammar", they might
start to take notice.  There's lots an English teacher
might do with Python to weave in a lot of culture and
history as well, one we're planted in the humanities.
Lets start with Delphi and Mount Parnassus!

Human language teachers also care about typography,
fonts, glyphs, symbols.  That's were ASCII and Unicode
come in, but also "translating" e.g. "what does capital
Sigma mean?" in typography (as a glyph).

In showing a Python loop to explain Sigma, we might
claim we're learning PSL, not math, and not even STEM
necessarily.

The poet Gene Fowler ('Waking the Poet') encouraged
English teachers [1] to incorporate HTML into their
course material as "more punctuation" (of a kind).
HTML / CSS is clearly in the realm of the "printed word"
(along with the printing press and book binding).

Should ESL teachers take a look at PSL as a tool for
teaching English?  Is it time to give up on mathematics
as the logical place to phase in computer languages?
Isn't "math language" a human language and therefore
usable in "language class"?

In looking at the challenge in this way, I'm clearly influenced
by the LEX Institute and their flagship book 'Who Is Fourier?'
For those unfamiliar with this excellent tome, it takes the
point of view that techniques for learning human languages
work well for learning math.

Here are some primitive whiteboard style graphics to go with
my "PSL" proposal:

https://flic.kr/p/JGZkrB
https://flic.kr/p/JGZmGn
https://flic.kr/p/Jp5Axq

This approach pertains to other languages besides Python.
It's more a generic approach to OO.

What I want to show students is they already know OO
if they know English or another human language grammar.
It's a matter of mapping the known to the unknown.

Starting with "object" as something "on the heap in computer
memory" or some such verbiage is making objects seem alien
and esoteric, a part of a remote knowledge domain or space
governed by computer science.

But the whole point of OO was to leverage everyday commonsense
notions about "things in general" to make computer programs
more expressive. OO was an attempt to mirror how we already
think, so that the language would get out of the way and let us
focus on the problem at hand.

However if we don't hold up the mirror to everyday thinking and
point out these connections, will students make those links on
their own?

Kirby
_______________________________________________
Edu-sig mailing list
Edu-sig@python.org
https://mail.python.org/mailman/listinfo/edu-sig

Reply via email to