Wanna give your kids a head start?

Help them play (Slate): “Adults often assume that most learning is the result of teaching and that exploratory, spontaneous learning is unusual. But actually, spontaneous learning is more fundamental. It’s this kind of learning, in fact, that allows kids to learn from teachers in the first place.”


Lately I’ve been part of a project helping tutor an individual in assisted living, who is disabled, in learning how to navigate the Web and email, with the eventual goal of uploading his music to YouTube. I can’t wait to introduce you to him – he’s fantastic and his songwriting is interesting.

It has been a terrific experience, an eye opener, and a reminder of things I I might have forgotten from when I used to develop applications for folks I worked with at Sears, who were not familiar with using a mouse, let alone an application of some sort.

Two things that come to mind that I will probably talk more about in later posts are that metaphors and analogies are terrific communication tools and that we as programmers and web service producers still make things too damn hard – there is still tremendous opportunity for innovation.

Example idea:

Markup that web browsers recognize for Login and Logout links/activities/forms so that the web browser itself can present a common interface for this kind of common action. Everyone has these interactions in different locations, with different looks and feels, but for those people who are disadvantaged in some way, this could provide a common interface. This way, web designers can keep the flexibility in their UI designs they seek *and* an additional utility would be available in the browser itself, to assist those who need it.

Just an idea to throw out there.

I’m thankful to be in a position to do this, and I hope to share more as this project progresses.

Quotes from Paul Lockhart’s terrific essay about the state of Mathematics education in America

Paul Lockhart’s terrific essay about the state of mathematics education and what should be done: A Mathematician’s Lament (25 page must read PDF):

G.H. Hardy’s excellent description:

A mathematician, like a painter or poet, is a maker
of patterns. If his patterns are more permanent than
theirs, it is because they are made with ideas.

So mathematicians sit around making patterns of ideas. What sort of patterns? What sort of ideas? Ideas about the rhinoceros? No, those we leave to the
biologists. Ideas about language and culture? No, not usually. These things are
all far too complicated for most mathematicians’ taste. If there is anything
like a unifying aesthetic principle in mathematics, it is this: simple is
beautiful. Mathematicians enjoy thinking about the simplest possible things,
and the simplest possible things are imaginary.

By removing the creative process and leaving only the results of that process, you virtually guarantee that no one will have any real engagement with the
subject. It is like saying that Michelangelo created a beautiful sculpture,
without letting me see it.

By concentrating on what, and leaving out why, mathematics is reduced to an
empty shell. The art is not in the “truth” but in the explanation, the
argument. It is the argument itself which gives the truth its context, and
determines what is really being said and meant. Mathematics is the art of
explanation. If you deny students the opportunity to engage in this activity–
to pose their own problems, make their own conjectures and discoveries, to be
wrong, to be creatively frustrated, to have an inspiration, and to cobble
together their own explanations and proofs– you deny them mathematics
itself. So no, I’m not complaining about the presence of facts and formulas in
our mathematics classes, I’m complaining about the lack of mathematics in our
mathematics classes.

If teaching is reduced to mere data transmission, if there is no sharing of
excitement and wonder, if teachers themselves are passive recipients of
information and not creators of new ideas, what hope is there for their
students? If adding fractions is to the teacher an arbitrary set of rules, and
not the outcome of a creative process and the result of aesthetic choices and
desires, then of course it will feel that way to the poor students.

Teaching is not about information. It’s about having an honest intellectual relationship with your students. It requires no method, no tools, and no training. Just the ability to be real. And if you can’t be real, then you have no right to inflict yourself upon innocent children. In particular, you can’t teach teaching. Schools of education are a complete crock. Oh, you can take classes in early childhood development and whatnot, and you can be trained to use a blackboard “effectively” and to prepare an organized “lesson plan” (which, by the way, insures that your lesson will be planned, and therefore false), but you will never be a real teacher if you are unwilling to be a real person. Teaching means openness and honesty, an ability to share excitement, and a love of learning. Without these, all the education degrees in the world won’t help you, and with them they are completely unnecessary.

It’s perfectly simple. Students are not aliens. They respond to beauty and
pattern, and are naturally curious like anyone else. Just talk to them! And
more importantly, listen to them!

Read the whole thing. This essay has reinforced some beliefs of mine about software engineering, teaching and parenting.

Slashdot has a decent thread on the piece.

A Flashcards tool

jMemorize – Learning made easy (and fun) – A Leitner flashcards tool:

jMemorize is a Java application that manages your flashcards by the famous Leitner system and makes memorizing facts not only more efficient but also more fun. It manages your whole learning progress and features categories, statistics and a visually appealing and intuitive interface.

Looks useful. Also looks like something fun to build as a web service or Flash application.

What is Logo?

My first exposure to programming was Logo in Junior High. I gotta download a copy and see if it is still a relevant teaching tool today. What normally pops into my head when folks ask what is a good language to learn programming with, I tend to veer towards either Python or Java.

Logo Foundation: What is Logo?

“Logo is the name for a philosophy of education and a continually evolving family of programming languages that aid in its realization.”
– Harold Abelson Apple Logo, 1982

This statement sums up two fundamental aspects of Logo and puts them in the proper order. The Logo programming environments that have been developed over the past 28 years are rooted in constructivist educational philosophy, and are designed to support constructive learning.

Constructivism views knowledge as being created by learners in their own minds through interaction with other people and the world around them. This theory is most closely associated with Jean Piaget, the Swiss psychologist, who spent decades studying and documenting the learning processes of young children.

…The Logo Programming Language, a dialect of Lisp, was designed as a tool for learning. Its features – modularity, extensibility, interactivity, and flexibility -follow from this goal.

For most people, learning Logo is not an end in itself, and programming is always about something. Logo programming activities are in mathematics, language, music, robotics, telecommunications, and science. It is used to develop simulations, and to create multimedia presentations. Logo is designed to have a “low threshold and no ceiling”: It is accessible to novices, including young children, and also supports complex explorations and sophisticated projects by experienced users.

The most popular Logo environments have involved the Turtle, originally a robotic creature that sat on the floor and could be directed to move around by typing commands at the computer. Soon the Turtle migrated to the computer graphics screen where it is used to draw shapes, designs, and pictures.

Some turtle species can change shape to be birds, cars, planes, or whatever the designer chooses to make them. In Logo environments with many such turtles, or “sprites” as they are sometimes called, elaborate animations and games are created.