On Thu, Feb 12, 2009 at 11:53 PM, Edward Cherlin <echerlin@gmail.com> wrote: << SNIP >>
So you're doing that in your head?
Not at all. I can do this example with paper and pencil, and I would want a calculator or a log table for larger examples. Let's see...
And I would want my Python shell. I don't own a calculator, have no need for one.
1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987 1597 2584 2 8 34 144 610 2584 2 10 44 188 798 3382, ok, 4 more terms...Third grade paper and pencil arithmetic for the rest.
I think the word "programming" is misleading in some contexts.
I don't use the word for anything that can easily be done on a non-programmable calculator, an abacus, or a half sheet of paper by one with the skills commonly taught (though not very often learned in full) for each.
I'm not that impressed by "commonly taught skills" i.e. if a kid knows how to use a TI, but not Python, I'm inclined to move on to the next candidate.
Using Python as a calculator is what Guido mentions in his tutorial.
Python or TI?
XO or TI?
Similarly for APL and J.
Yes, as I've mentioned, APL was my first language and I've worked with Iverson himself on a paper about J. I heard from Roger Hui just the other day. Part of why I fell in love with Python is because of its orthogonal primitives, feels like APL in some ways. Plus the whole OO thing is way cool, highly accessible. My oft stated preference is to NOT ever (ever) get stuck in teaching just one language, even if one emphasizes just one in this or that classroom or on-line session. Per some brain science I've been studying, we really do *not* multitask, even though we appear to, any more than an Intel chip really does (OK, some do, but at one time it was all round robin). Kirby
On Fri, Feb 13, 2009 at 8:30 AM, kirby urner <kirby.urner@gmail.com> wrote:
On Thu, Feb 12, 2009 at 11:53 PM, Edward Cherlin <echerlin@gmail.com> wrote:
<< SNIP >>
So you're doing that in your head?
Not at all. I can do this example with paper and pencil, and I would want a calculator or a log table for larger examples. Let's see...
And I would want my Python shell. I don't own a calculator, have no need for one.
I mean the Calculator activity in Sugar, or gcalctool.
1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987 1597 2584 2 8 34 144 610 2584 2 10 44 188 798 3382, ok, 4 more terms...Third grade paper and pencil arithmetic for the rest.
I think the word "programming" is misleading in some contexts.
I don't use the word for anything that can easily be done on a non-programmable calculator, an abacus, or a half sheet of paper by one with the skills commonly taught (though not very often learned in full) for each.
I'm not that impressed by "commonly taught skills" i.e. if a kid knows how to use a TI, but not Python, I'm inclined to move on to the next candidate.
EEEE! No! Pencil and paper arithmetic skills, not gadgetry. Multiple column addition, subtraction, multiplication.
Using Python as a calculator is what Guido mentions in his tutorial.
Python or TI?
XO or TI?
Similarly for APL and J.
Yes, as I've mentioned, APL was my first language and I've worked with Iverson himself on a paper about J. I heard from Roger Hui just the other day. Part of why I fell in love with Python is because of its orthogonal primitives, feels like APL in some ways. Plus the whole OO thing is way cool, highly accessible.
My oft stated preference is to NOT ever (ever) get stuck in teaching just one language, even if one emphasizes just one in this or that classroom or on-line session.
We have to get away from the notion that "teaching programming" = "teaching language syntax". That's why I am working on a set of demonstrations of programming and Computer Science ideas in Turtle Art, where children can create programs directly as trees, not linear texts that a parser turns into a tree for execution.
Per some brain science I've been studying, we really do *not* multitask, even though we appear to, any more than an Intel chip really does (OK, some do, but at one time it was all round robin).
Kirby
-- Silent Thunder (默雷/धर्ममेघशब्दगर्ज/دھرممیگھشبدگر ج) is my name And Children are my nation. The Cosmos is my dwelling place, The Truth my destination. http://wiki.sugarlabs.org/go/User:Mokurai (Ed Cherlin)
On Fri, Feb 13, 2009 at 11:43 AM, Edward Cherlin <echerlin@gmail.com> wrote: << SNIP >>
I mean the Calculator activity in Sugar, or gcalctool.
Our use Pippy maybe?
1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987 1597 2584 2 8 34 144 610 2584 2 10 44 188 798 3382, ok, 4 more terms...Third grade paper and pencil arithmetic for the rest.
Recent meeting with Anna Roys, TECC/Alaska (tecc-alaska.org): Lesson plan: On-line Dictionary of Integer Sequences, enter 1, 12, 42, 92... Follow some links, to my page included, even if just for the pictures (good Virus from Life -- made out of metal nuts it looks like). Treasure hunt? We're focused on linking algebraic sequences, generator type stuff, to visual imagery, imaginary content, like we do later with coordinate systems (XYZ, spherical...), but "figurate numbers" ("polyhedral numbers") are a first bridge between algebra and geometry, coordinates be damned (until later). Glue four ping pong balls together: voila, a tetrahedron (your unit of volume in some curriculum segments, unless your school is some kind of joke -- Alaska leading the pack here in some ways).
I think the word "programming" is misleading in some contexts.
I don't use the word for anything that can easily be done on a non-programmable calculator, an abacus, or a half sheet of paper by one with the skills commonly taught (though not very often learned in full) for each.
I'm not that impressed by "commonly taught skills" i.e. if a kid knows how to use a TI, but not Python, I'm inclined to move on to the next candidate.
EEEE! No! Pencil and paper arithmetic skills, not gadgetry. Multiple column addition, subtraction, multiplication.
It's not either/or, but if it's between a TI and Python, then I say Python. Either way, you'll need paper and pencil skills too. A quick challenge: Spheres packing around a nuclear sphere go 1, 12, 42, 92... 10*L*L + 2, where L is the layer number, except where L = 1 we have just the one ball (the shape is a cuboctahedron). So how many balls total? Add up all the layers. Yes, very easy to do in APL. In Python: def cubocta( layer ): if layer == 1: return 1 return 10 * layer ** 2 + 2 def total_balls( layer ): total = 0 for i in range(1, layer + 1): total = total + cubocta( i ) return total But isn't there a closed form algebraic expression for total_balls that doesn't require cumulative adding? Damn straight. We'll get to it. Don't forget to watch the cartoons! This isn't Bourbaki. Visualizations encouraged! This is MVC.
Using Python as a calculator is what Guido mentions in his tutorial.
Python or TI?
XO or TI?
Similarly for APL and J.
Yes, as I've mentioned, APL was my first language and I've worked with Iverson himself on a paper about J. I heard from Roger Hui just the other day. Part of why I fell in love with Python is because of its orthogonal primitives, feels like APL in some ways. Plus the whole OO thing is way cool, highly accessible.
My oft stated preference is to NOT ever (ever) get stuck in teaching just one language, even if one emphasizes just one in this or that classroom or on-line session.
We have to get away from the notion that "teaching programming" = "teaching language syntax". That's why I am working on a set of demonstrations of programming and Computer Science ideas in Turtle Art, where children can create programs directly as trees, not linear texts that a parser turns into a tree for execution.
I'm just interested in teaching math. I don't give a rip about Computer Science (just kidding, I care plenty). But in Oregon, CS is just an elective, the first to go in hard times, whereas math has a monopoly lock, is in bed with TI, and is controlled by various text book publishers (not O'Reilly). Good thing we're breaking free of that stultifying quagmire in Alaska and places. XOs are likewise part of the stimulus package. Anyway, I just call it math, or gnu math. I don't call it computer science, because I don't want to be shoved off to the sidelines, like my peers have been. I'm a gnu math teacher, not a computer science teacher. Just trying to avoid the kiss of death you understand?
Per some brain science I've been studying, we really do *not* multitask, even though we appear to, any more than an Intel chip really does (OK, some do, but at one time it was all round robin).
Kirby
Kirby
On Fri, Feb 13, 2009 at 12:02 PM, kirby urner <kirby.urner@gmail.com> wrote:
On Fri, Feb 13, 2009 at 11:43 AM, Edward Cherlin <echerlin@gmail.com> wrote:
<< SNIP >>
I mean the Calculator activity in Sugar, or gcalctool.
Our use Pippy maybe?
We have lost the context of the discussion. The question was not which tools to use in the classroom, but whether "programming" is the appropriate term to use for processes that can be done on a calculator (physical or virtual), or on pencil and paper. Of course we should use Pippy. And Turtle Art, and Calc, and Etoys and...
1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987 1597 2584 2 8 34 144 610 2584 2 10 44 188 798 3382, ok, 4 more terms...Third grade paper and pencil arithmetic for the rest.
Recent meeting with Anna Roys, TECC/Alaska (tecc-alaska.org):
Lesson plan: On-line Dictionary of Integer Sequences, enter 1, 12, 42, 92...
Wonderful site. Major professional tool that children can learn from.
Follow some links, to my page included, even if just for the pictures (good Virus from Life -- made out of metal nuts it looks like). Treasure hunt?
We're focused on linking algebraic sequences, generator type stuff, to visual imagery,
So if we tell the turtle to set v=5, and at every successive step to put down a dot, move by v, and set v =. v+a =. 10, we get dots at 0 5 15 25 35 45 55 Dividing by five, or alternatively using the first interval as a unit, we get 0 1 3 5 7 9 11 with partial sums 0 1 4 9 16 25 36 Very good. The next day, take the students outside with XOs and have them take videos of someone dropping a ball from the roof. Pick frames at some suitable interval and overlay them. Tell students to turn their XOs sideways, and ask if they recognize the dot pattern. Thus, in two lessons, uniform gravity means constant acceleration. This is Alan Kay's favorite demo.
imaginary content, like we do later with coordinate systems (XYZ, spherical...), but "figurate numbers" ("polyhedral numbers") are a first bridge between algebra and geometry, coordinates be damned (until later).
Glue four ping pong balls together: voila, a tetrahedron (your unit of volume in some curriculum segments, unless your school is some kind of joke -- Alaska leading the pack here in some ways).
With 20, you can do a dissection of a tetrahedron into four pieces. Two consist of four balls in a row. Two consist of six balls in a two by three arrangement. Most people have a lot of trouble reassembling them.
I think the word "programming" is misleading in some contexts.
I don't use the word for anything that can easily be done on a non-programmable calculator, an abacus, or a half sheet of paper by one with the skills commonly taught (though not very often learned in full) for each.
I'm not that impressed by "commonly taught skills" i.e. if a kid knows how to use a TI, but not Python, I'm inclined to move on to the next candidate.
EEEE! No! Pencil and paper arithmetic skills, not gadgetry. Multiple column addition, subtraction, multiplication.
It's not either/or, but if it's between a TI and Python, then I say Python.
Either way, you'll need paper and pencil skills too.
A quick challenge:
Spheres packing around a nuclear sphere go 1, 12, 42, 92... 10*L*L + 2, where L is the layer number, except where L = 1 we have just the one ball (the shape is a cuboctahedron). So how many balls total? Add up all the layers. Yes, very easy to do in APL.
In Python:
def cubocta( layer ): if layer == 1: return 1 return 10 * layer ** 2 + 2
def total_balls( layer ): total = 0 for i in range(1, layer + 1): total = total + cubocta( i ) return total
But isn't there a closed form algebraic expression for total_balls that doesn't require cumulative adding? Damn straight. We'll get to it.
Don't forget to watch the cartoons! This isn't Bourbaki. Visualizations encouraged! This is MVC.
Using Python as a calculator is what Guido mentions in his tutorial.
Python or TI?
XO or TI?
Similarly for APL and J.
Yes, as I've mentioned, APL was my first language and I've worked with Iverson himself on a paper about J. I heard from Roger Hui just the other day. Part of why I fell in love with Python is because of its orthogonal primitives, feels like APL in some ways. Plus the whole OO thing is way cool, highly accessible.
My oft stated preference is to NOT ever (ever) get stuck in teaching just one language, even if one emphasizes just one in this or that classroom or on-line session.
We have to get away from the notion that "teaching programming" = "teaching language syntax". That's why I am working on a set of demonstrations of programming and Computer Science ideas in Turtle Art, where children can create programs directly as trees, not linear texts that a parser turns into a tree for execution.
I'm just interested in teaching math. I don't give a rip about Computer Science (just kidding, I care plenty).
But in Oregon, CS is just an elective, the first to go in hard times, whereas math has a monopoly lock, is in bed with TI, and is controlled by various text book publishers (not O'Reilly).
That's why I am pushing for Free digital textbooks, and incidentally for virtual calculators. Anything that can't switch between parentheses and RPN is rubbish. That gets us out from under the hardware vendors and the publishers.
Good thing we're breaking free of that stultifying quagmire in Alaska and places. XOs are likewise part of the stimulus package.
Anyway, I just call it math, or gnu math. I don't call it computer science, because I don't want to be shoved off to the sidelines, like my peers have been. I'm a gnu math teacher, not a computer science teacher. Just trying to avoid the kiss of death you understand?
Certainly. When I was in college, Foundations of Mathematics, which formed much of the basis of CS, was still in the Philosophy Department. I don't care about the labels.
Per some brain science I've been studying, we really do *not* multitask, even though we appear to, any more than an Intel chip really does (OK, some do, but at one time it was all round robin).
Kirby
Kirby
-- Silent Thunder (默雷/धर्ममेघशब्दगर्ज/دھرممیگھشبدگر ج) is my name And Children are my nation. The Cosmos is my dwelling place, The Truth my destination. http://wiki.sugarlabs.org/go/User:Mokurai (Ed Cherlin)
On Fri, Feb 13, 2009 at 12:33 PM, Edward Cherlin <echerlin@gmail.com> wrote:
On Fri, Feb 13, 2009 at 12:02 PM, kirby urner <kirby.urner@gmail.com> wrote:
On Fri, Feb 13, 2009 at 11:43 AM, Edward Cherlin <echerlin@gmail.com> wrote:
<< SNIP >>
I mean the Calculator activity in Sugar, or gcalctool.
Our use Pippy maybe?
We have lost the context of the discussion. The question was not which tools to use in the classroom, but whether "programming" is the appropriate term to use for processes that can be done on a calculator (physical or virtual), or on pencil and paper.
Oh, I thought we were talking about whether the Euler Project was really cool or not.
Of course we should use Pippy. And Turtle Art, and Calc, and Etoys and...
Although in Oregon, XOs are extremely hard to come by, me being one of the few who has one (two actually). So when it comes to on the ground activities, I promote the hell out of the XO, market it extensively, but then have to fall back on what's actually available to Oregonians today, i.e. not XOs. Given XOs are designed for small hands and look like Fisher-Price toys, I don't push them for teenagers much, and that's the age group I tend to start with, and above (older). I am not like Alan Kay or Seymour Papert or those people who focus on really early math learning, where I think you're right on with controlling an avatar (like a turtle). Kids who have just mastered piloting their own bodies around, have fun playing with dolls, using puppets. I basically look at the early math sequence as working with puppets and polyhedra (shapes), or call them objects.
1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987 1597 2584 2 8 34 144 610 2584 2 10 44 188 798 3382, ok, 4 more terms...Third grade paper and pencil arithmetic for the rest.
Recent meeting with Anna Roys, TECC/Alaska (tecc-alaska.org):
Lesson plan: On-line Dictionary of Integer Sequences, enter 1, 12, 42, 92...
Wonderful site. Major professional tool that children can learn from.
Yes.
Follow some links, to my page included, even if just for the pictures (good Virus from Life -- made out of metal nuts it looks like). Treasure hunt?
We're focused on linking algebraic sequences, generator type stuff, to visual imagery,
So if we tell the turtle to set v=5, and at every successive step to put down a dot, move by v, and set v =. v+a =. 10, we get dots at
0 5 15 25 35 45 55
Dividing by five, or alternatively using the first interval as a unit, we get
0 1 3 5 7 9 11
with partial sums
0 1 4 9 16 25 36
Very good. The next day, take the students outside with XOs and have them take videos of someone dropping a ball from the roof. Pick frames at some suitable interval and overlay them. Tell students to turn their XOs sideways, and ask if they recognize the dot pattern. Thus, in two lessons, uniform gravity means constant acceleration. This is Alan Kay's favorite demo.
Yes, I've seen those same demos over and over and over and over. So when I market the XO, which I do, I steer clear of all of that stuff. I don't want to be that redundant with what others are doing. I don't spend any time with Squeak. That's not my department and never will be. When I met with Alan Kay in London, c/o Shuttleworth Foundation, he kept talking about how Smalltalk was a dead language. There's lots of stuff in the archive here where I call him a "slayer" i.e. some Buffy-like character fighting the ghost of Smalltalk. He was encouraging JavaScript quite a bit, had written a whole turtle thing in that language, very impressive. I would push Python and Javascript over Smalltalk any day. I think Squeak is butt ugly, but don't tell Alan. I also think it's a work of brilliance, a gem (not mutually inconsistent views).
imaginary content, like we do later with coordinate systems (XYZ, spherical...), but "figurate numbers" ("polyhedral numbers") are a first bridge between algebra and geometry, coordinates be damned (until later).
Glue four ping pong balls together: voila, a tetrahedron (your unit of volume in some curriculum segments, unless your school is some kind of joke -- Alaska leading the pack here in some ways).
With 20, you can do a dissection of a tetrahedron into four pieces.
Yes, and each of those break up into six "A modules" if you know anything about anything <-- <polemical, teacher trick>
Two consist of four balls in a row. Two consist of six balls in a two by three arrangement. Most people have a lot of trouble reassembling them.
Oh wait, I think we're talking about different dissections maybe. Sorry.
EEEE! No! Pencil and paper arithmetic skills, not gadgetry. Multiple column addition, subtraction, multiplication.
It's not either/or, but if it's between a TI and Python, then I say Python.
Either way, you'll need paper and pencil skills too.
A quick challenge:
Spheres packing around a nuclear sphere go 1, 12, 42, 92... 10*L*L + 2, where L is the layer number, except where L = 1 we have just the one ball (the shape is a cuboctahedron). So how many balls total? Add up all the layers. Yes, very easy to do in APL.
In Python:
def cubocta( layer ): if layer == 1: return 1 return 10 * layer ** 2 + 2
def total_balls( layer ): total = 0 for i in range(1, layer + 1): total = total + cubocta( i ) return total
But isn't there a closed form algebraic expression for total_balls that doesn't require cumulative adding? Damn straight. We'll get to it.
Don't forget to watch the cartoons! This isn't Bourbaki.
<< SNIP >>
I'm just interested in teaching math. I don't give a rip about Computer Science (just kidding, I care plenty).
But in Oregon, CS is just an elective, the first to go in hard times, whereas math has a monopoly lock, is in bed with TI, and is controlled by various text book publishers (not O'Reilly).
That's why I am pushing for Free digital textbooks, and incidentally for virtual calculators. Anything that can't switch between parentheses and RPN is rubbish. That gets us out from under the hardware vendors and the publishers.
I have no problem with anything you've said you're doing. You seem to be very loyal to your "little people" out there and are doing everything you know how to reach them. I sense a lot of people in your (our) camp, doing their level best. This gives me hope. In the meantime, change is threatening and it's no wonder that Kellogg's Corn Flakes boxes have never featured anything about OLPC, or that most USA kids don't have a clue about Python. I look for companies that invest in the future (like O'Reilly, like Google). I look for companies with courage. Hey, I even look to the military on occasion, since bravery is supposedly part of the job description. In my blogs, you'll find a lot of material on what I call Pentagon Math, ostensibly about Phi and Fibonacci Numbers, but it's rather thinly veiled, as I have Google views of the Pentagon itself, keep asking why kids on military bases, their parents asked to make the ultimate sacrifice, don't get access to decent educations at least. Talk about tyranny! See Chicago slides for more data.
Good thing we're breaking free of that stultifying quagmire in Alaska and places. XOs are likewise part of the stimulus package.
Anyway, I just call it math, or gnu math. I don't call it computer science, because I don't want to be shoved off to the sidelines, like my peers have been. I'm a gnu math teacher, not a computer science teacher. Just trying to avoid the kiss of death you understand?
Certainly. When I was in college, Foundations of Mathematics, which formed much of the basis of CS, was still in the Philosophy Department. I don't care about the labels.
Yeah, me either. But bureaucrats care very deeply. Just because we don't care doesn't mean we have the luxury of pretending others don't care. Kirby
For those wishing to go yet deeper into the lesson plan below ("quick challenge" is one form, but you could easily make this a much more enriching experience), I've filed stuff on math-thinking-l, very low traffic these days. http://mail.geneseo.edu/pipermail/math-thinking-l/2009-February/date.html I do get a lot of thumbs up feedback from "the professoriate" I'm glad to report, e.g. John P. Dougherty, Computer Science, Haverford College called it "an interesting approach" whereas Richard Hake, Emeritus Professor of Physics, Indiana University thought my little essay on constructivism was quite good, will be no doubt alerting physics teachers to its blogged version: http://coffeeshopsnet.blogspot.com/2009/02/about-constructivism.html That paragraph about Gattegno is my connection to Tizard.Stanford.Edu, a co-sponsor of my Pycon talk, which is up to 4 registrations. Last year, the videography made all the difference. If we're a small group it'll be more like we're TV experts, having a pow wow. I've invited my CTO to do camera work, and she's game (per our meeting before her Europe assignment), but it's like pulling teeth to line up additional engineering companies as sponsors (just ask the CFO if you don't believe me (smile)). The stimulus package looks good for the charters though, so maybe by the time OS Bridge rolls around in June... Kirby
A quick challenge:
Spheres packing around a nuclear sphere go 1, 12, 42, 92... 10*L*L + 2, where L is the layer number, except where L = 1 we have just the one ball (the shape is a cuboctahedron). So how many balls total? Add up all the layers. Yes, very easy to do in APL.
In Python:
def cubocta( layer ): if layer == 1: return 1 return 10 * layer ** 2 + 2
def total_balls( layer ): total = 0 for i in range(1, layer + 1): total = total + cubocta( i ) return total
But isn't there a closed form algebraic expression for total_balls that doesn't require cumulative adding? Damn straight. We'll get to it.
Don't forget to watch the cartoons! This isn't Bourbaki.
participants (2)
-
Edward Cherlin -
kirby urner