This letter is associated with the following article:
Letters
Thursday, September 14, 2006 12:00 AM

Why Johnny can't code

BASIC used to be on every computer a child touched -- but today there's no easy way for kids to get hooked on programming.

Read other letters about this article

  • Wednesday, September 13, 2006 07:20 PM

    It's more than scripting; it's also about computer architecture

    I'm a bit disappointed at the number of mac users who responded to this article. Their many suggestions for scripting languages and HTML only further proved the point the author made. That is -- scripting languages don't teach you a darn thing about how the computer actually works! What's really going on down below. But that's been my chief complaint against Apple for so many years; they hide the inner workings of the computer from the user, so the users are all but computer illiterate!

    The old-style BASIC interpreters forced you to learn a thing or two about the very hardware and critical functions of the CPU in order to write a program. Today's scripting languages don't do that at all. You can't Peek and Poke a memory location. You aren't forced to think mathematically about iterating an array of numbers across memory locations that correspond to bitmaps to draw pictures on your screen. Did you know that's how modern computers draw all those fancy graphics? See this text I'm writting? Ever see the math involved in rendering all these little letters through your video card? You'll never understand those things if Perl is your first language. (Oh, and for the record, HTML is not a lanuage despite the fact LANUAGE is part of it's name.)

    I was in elementary school when my father bought a Commodore64 and I loved that thing. Thinking about it now, you had complete and total control of every hardware microchip on that machine. All you needed was the memory address and it was your to control!

    Now-a-days with protected memory schemes, well it's quite a bit more complex. (I hold a bachelors in computer engineering and I still have to pull out my textbooks to remember how it all works. How the page is translated in the TLB to generate a logical address and moved into the memory management unit and transformed into a physical address. Unless a page fault and move to the disk. bleh.)

    I agree with the other posters who suggested using the TI programmable calculators and Lego Mindstorm sets. I'm not sure how much computer architecture one can learn, but maybe it's something.

    My opinion would be to start down low, with the basic concepts of binary arithmetic and binary logic tables. Then progress to assembler language. You'll have to provide an environment pre-configured for assembler code. I would suggest Linux and how to compile assembler code to make it run with the libc libraries. From there, move on to the concept of a compiler, how it works and how the C language is really just high-level assembler. Then from there it's just a quick understanding of object oriented structures and before you know it, everything makes sense.

Most Active Letters Threads

740

The commendably missing element from Obama's speech

There was no pretense that human rights is our goal, or the likely outcome, in escalating the war
436

Do Obama officials know what his Afghanistan plan is?

What explains the completely contradictory statements from key aides on a central plank of the war strategy?
408

America's regression

It's almost impossible to find a nation with as many torture advocates as the U.S. has.
332

Palin: Birthers have "fair question" about Obama

Of Obama birth, the ex-governor says, "the public is still, rightfully, making it an issue" (Updated)
211

The poster boy for progressive self-delusion

Read Hayden's 2008 Obama endorsement to remember the way the left sold our centrist president to itself

View all »

Letters Help

Currently in Salon