Jason wrote:
I remember when
I was a kid, I wanted to be able to write things to disk so badly (I
have no idea why), but to me that was what 'real' programming was all
about.

Actually, that reminds me of one of my motivations for programming when I first started programming (in N80-BASIC on an NEC PC-8001 mkII in Tokyo) in circa 1983.

Back then, I first became enamored of the concept of programming upon seeing an Apple II-plus running a music program at a computer show (in Tokyo) in 1981 (just outside, and on the 38th floor of, the Sumitomo Sankaku Building in Shinjuku). There were a number of computers on display at that event, including Commodore 64s and other Apple II-series models, but the one that stood out the most was an Apple II-plus hooked up to an organ keyboard and a color monitor (many of the other computers were attached to monochrome displays). When I played music on the keyboard, vertical color bars appeared on the display, and the idea that an inanimate object could respond in real time to human actions with color and sound somehow felt extremely gratifying.

Two years later, in 1983, when I borrowed an NEC PC-8001 mkII (from a computer store in Ginza) (the no longer existent Micom Base Ginza) and wrote a pocket book accounting program in N80-BASIC, I insisted on saving my data to disk. For some reason, the idea of being able to leave an external trace of my program's efforts on a physical medium, where the results would remain even after the computer was turned off, somehow made me feel as if the program had bestowed upon me, the user, the ability to make a difference, however minor, to the outside world as a direct result of programming the computer. For some reason, from my child's eye then (I was 15 years old at the time), this made me feel important.

I agree that sound, animations, etc... are very sexy and if done right
can increase their enthusiasm many fold, but it also has the ability to
turn them off from the simple elegance of what first hooked their
interest. So start simple and be attentive to what THEY enjoy and you
will give them the most valuable programming knowledge of all: passion.

While I understand this approach, when I was first exposed to computer science in college, I thought that, too often, issues of input and output and storage and graphics and sound were ignored in introductory classes. Although such concepts may be trivial from a theoretical viewpoint, from the eye of a child (or even beginning computer science student), they are some of the aspects that can make programming exciting: the ability to cause the computer to reach to human input in real time with color graphics and sound, and to leave a trace of the interaction in the outside world for a future session even after the computer has been turned off. One of the reasons that I started reading, for example, Paul Hudak's _The Haskell School of Expression_ was the author's emphasis on multimedia. One of the reasons that I started programming with N80-BASIC in 1983 was the language's support for color graphics and (albeit elementary) sound.

-- Benjamin L. Russell


Best of luck and keep us up to date on your blog/reddit posts!
--
Jason M. Knight



_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe



_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to