Live data from Hacker News

Why kids don't program

johnlawrenceaspden.blogspot.com

31–40 of 96 posts

Re: Why kids don't program

#31
I wonder, is Logo still relevant for children (was it ever)? I know Netlogo or StarLogo are still in active use in academia (for artificial life/complex systems research).

I have been toying with the idea to write a Javascript LOGO for the Canvas Element. There used to be Online-Logo Applets, but I think they were all Java.

At least it might be a fast way to draw nice things programmatically.

Re: Why kids don't program

#32

Earlier quoted context omitted.

There are some very nice programming environments for kids. MIT Scratch ( http://scratch.mit.edu/ ) immediately springs to mind, for example. Any particular reason it needs to be web-based?

Scratch is definitely a cool introduction to the world of programming. But I worry that in its attempt to make programming accessible sets up kids for a rude awakening. Most "real" programming isn't like that at all. Yet the kind of code I wrote in the 80s in Apple BASIC isn't so different "in kind" from a lot of the code I write professionally today. Sorry for posting so many comments: I'm a teacher so the issue of…

How is scratch so different from other programming environments ?

Re: Why kids don't program

#33
post #9

I had c-64 and one of the most frustrating memories from my childhood was that I couldn't get it to draw anything in a graphic mode. In manual the code to initiate graphic mode had error in it, or the manual was for different version of the computer, I still don't know. Anyway - 8-bit computers were superb "teach-yourself-programming" machines, but I think novadays kids have internet access, so they will manage :) PS…

Graphical mode on the C64 was difficult, ZX Spectrum was much easier for that. C64 ended up being the better game engine, though :-)

Re: Why kids don't program

#34
post #31

I wonder, is Logo still relevant for children (was it ever)? I know Netlogo or StarLogo are still in active use in academia (for artificial life/complex systems research). I have been toying with the idea to write a Javascript LOGO for the Canvas Element. There used to be Online-Logo Applets, but I think they were all Java. At least it might be a fast way to draw nice things programmatically.

Some years ago I was a high school Java instructor. I'm a big fan of teaching one concept at a time, so I actually started out everyone on LOGO since it was an introductory programming course. LOGO is a great way to learn the basics about commands, loops, and the exacting syntax of computer languages.

The next step was to start learning Java through Karel J. Robot ( http://www.csis.pace.edu/~bergin/KarelJava2ed/Karel%2B%2BJav... ), which was a nice, easy segue from LOGO. After going through the Karel material, the students could dive into more advanced stuff.

The course was self-paced, so if you mastered the LOGO stuff in one day and wanted to move on, you could. You just had to show that you mastered the relevant learning concepts.

All in all, this was a great way to structure a course. So yes, LOGO can still be relevant.

Re: Why kids don't program

#35
post #28

It's actually fairly easy to do what he wants today. ipython -pylab [...boilerplate...] In [1]: n = arange(255) In [2]: plot(n, 88+80*sin(n*pi/128)) http://imgur.com/oSd62.png As for the "imaginary diffusion equation" (I assume he means the Schrodinger equation), here is a simple program which solves it on the torus: from pylab import * from numpy.fft import * def freeSchrodingerSolver(input, dx, dt): np = input.shap…

No boilerplate, no installation of Python, no installation of pylab. I think it was a lot easier on the ZX Spectrum.

[deleted]

Re: Why kids don't program

#36
post #7

In reality, I'd wager there's a _lot lot_ more kids programming today than 30 years ago. How many people had a computing device at home back then? This anecdote makes the point that a very specific kind of thinking was better suited by the tools of the late 70s, and maybe - I've never been much inclined towards it, so I dunno. And what we consider 'programming' is blurrier than it used to be. Is HTML programming? Wha…

Agreed on the numbers.

Almost every web browser on the planet can run javascript, independent of operating system or underlying hardware. I don't think you can get more accessible than that

Re: Why kids don't program

#37
post #28

It's actually fairly easy to do what he wants today. ipython -pylab [...boilerplate...] In [1]: n = arange(255) In [2]: plot(n, 88+80*sin(n*pi/128)) http://imgur.com/oSd62.png As for the "imaginary diffusion equation" (I assume he means the Schrodinger equation), here is a simple program which solves it on the torus: from pylab import * from numpy.fft import * def freeSchrodingerSolver(input, dx, dt): np = input.shap…

No boilerplate, no installation of Python, no installation of pylab. I think it was a lot easier on the ZX Spectrum.

I'm pretty sure by "boilerplate" he meant:

Python 2.6.4 (r264:75706, Nov 2 2009, 14:38:03) Type "copyright", "credits" or "license" for more information.

     IPython 0.10 -- An enhanced Interactive Python.
     ?         -> Introduction and overview of IPython's features.
     %quickref -> Quick reference.
     help      -> Python's own help system.
     object?   -> Details about 'object'. ?object also works, ?? prints more.

     In [1]:
Not any sort of actual setup the user is expected to perform.

As for "no installation", it's not that hard to install ipython on Linux. Windows, well, that's another story. But I think you're focusing on the wrong thing. The problem is not whether it came installed or not, as the effort to install is very low for anybody who's going to be motivated to do this sort of exploration in the first place. The question is, how is anybody supposed to discover that this is possible? I knew about iPython and I didn't even know it was that easy.

Additionally, you did not find this because it was sitting right in front of you. I have many friends who had things like Commodore 64s who never learned squat about them. You found them because you found documentation about it that wasn't drowned in gigabytes upon gigabytes of other information. You had limited, high-quality documentation to draw on, or good magazines, in the days that all the good magazines ran stuff like this. That's the missing step here; not the existence of good learning tools, all of which will actually blow away the experience you could get on those older machines (which were easy, but incredibly limited), but a way for anybody to stumble on them and find out what they are in the current environment, when a site full of crappy little flash games is orders of magnitude easier to find that a tutorial on Processing (http://processing.org/ ).

Re: Why kids don't program

#38

It's actually fairly easy to do what he wants today. ipython -pylab [...boilerplate...] In [1]: n = arange(255) In [2]: plot(n, 88+80*sin(n*pi/128)) http://imgur.com/oSd62.png As for the "imaginary diffusion equation" (I assume he means the Schrodinger equation), here is a simple program which solves it on the torus: from pylab import * from numpy.fft import * def freeSchrodingerSolver(input, dx, dt): np = input.shap…

Well, actually,

sudo apt-get ipython sudo apt-get install ipython ipython -pylab sudo apt-get install pylab sudo synaptic (And then the program works.

Actually, thanks for that, I didn't know about that stuff, and it looks really useful. If I can figure out how to get the drawings to move then it will do what I want. (to visualize the action of unitary matrices on Hilbert spaces)

But my point was that in 1982, my non-technical parents bought me a computer and then I was away. A couple of months later I had an animated model of the solar system. And I hadn't read anything except the spectrum manual (and the equivalent one for the TRS-80).

I can work out how to do the above installation for my hypothetical 12 year old son, but my poor father wouldn't have had a chance. And I suspect that the same would be true for most non-techie parents.

And how is the hypothetical son supposed to go from the pretty blue curve created by the magic plotting program to an animated solar system?

I can't see how to make the graphs move. Perhaps it can be done. Perhaps it can't and I should use SDL instead.

The point is that it is not obvious to me. Whereas the equivalent questions were obvious to a child thirty years ago.

Re: Why kids don't program

#39
post #5

For me it was exactly the opposite. I started learning programming at 13 reading the zx spectrum manual chapter after chapter until I came to sin and cos which I did not know. My parents hadn't studied, so they could not tell me. Instead of just skipping that chapter, I gave up programming. Much later I studied economics. Working as an economist I discovered the fun of programming with visual basic, and then decided…

While I understand that everyone needs help, I do think this also highlights a not uncommon lack of drive to go figure it out yourself.

Among computer programmers this behavior is particularly common. I have a hunch that it's because smart people (programmers) are of often afraid of "starting over." And honestly I consider this the locus of pointless debates about programming languages, text editors, frameworks, et al.

To be like a kid again - and feel out of your comfort zone is the essence of self education. Children are little more fearless in this regard. If they are not, they should be reprimanded. To see this behavior in adults is lamentable (though understandable considering our nation's pathetic public education system).

I also remember not knowing what sin & cos were - but I also realized that they didn't have that much to do with programming in general. There was plenty of stuff left to learn.

Re: Why kids don't program

#40
post #9

I had c-64 and one of the most frustrating memories from my childhood was that I couldn't get it to draw anything in a graphic mode. In manual the code to initiate graphic mode had error in it, or the manual was for different version of the computer, I still don't know. Anyway - 8-bit computers were superb "teach-yourself-programming" machines, but I think novadays kids have internet access, so they will manage :) PS…

[deleted]
Post reply on HN