<?xml version="1.0" encoding="utf-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: Procedural Literacy: An Idea Whose Time has Come (43 years ago)</title>
	<atom:link href="http://grandtextauto.org/2004/06/02/procedural-literacy-an-idea-whose-time-has-come-43-years-ago/feed/" rel="self" type="application/rss+xml" />
	<link>http://grandtextauto.org/2004/06/02/procedural-literacy-an-idea-whose-time-has-come-43-years-ago/</link>
	<description>A group blog about computer narrative, games, poetry, and art.</description>
	<lastBuildDate>Wed, 19 May 2010 01:52:58 -0700</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.5</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: Procedural Literacy is the New Black</title>
		<link>http://grandtextauto.org/2004/06/02/procedural-literacy-an-idea-whose-time-has-come-43-years-ago/comment-page-1/#comment-567092</link>
		<dc:creator>Procedural Literacy is the New Black</dc:creator>
		<pubDate>Mon, 09 Nov 2009 02:37:49 +0000</pubDate>
		<guid isPermaLink="false">/?p=339#comment-567092</guid>
		<description>[...] need for accessible procedural literacy is not a new idea.  Just like opportunities afforded by traditional literacy, it is obvious that a divide will occur [...]</description>
		<content:encoded><![CDATA[<p>[...] need for accessible procedural literacy is not a new idea.  Just like opportunities afforded by traditional literacy, it is obvious that a divide will occur [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Reality Panic &#187; Gaming Literacy, Parenting, etc&#8230;</title>
		<link>http://grandtextauto.org/2004/06/02/procedural-literacy-an-idea-whose-time-has-come-43-years-ago/comment-page-1/#comment-107960</link>
		<dc:creator>Reality Panic &#187; Gaming Literacy, Parenting, etc&#8230;</dc:creator>
		<pubDate>Sun, 11 Feb 2007 19:20:00 +0000</pubDate>
		<guid isPermaLink="false">/?p=339#comment-107960</guid>
		<description>[...] 8230; (Anyone got a good reference?) Also, makes me think of Ken Perlin&#8217;s efforts to evangelize procedural thinking and progr [...]</description>
		<content:encoded><![CDATA[<p>[...] 8230; (Anyone got a good reference?) Also, makes me think of Ken Perlin&#8217;s efforts to evangelize procedural thinking and progr [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Water Cooler Games</title>
		<link>http://grandtextauto.org/2004/06/02/procedural-literacy-an-idea-whose-time-has-come-43-years-ago/comment-page-1/#comment-100648</link>
		<dc:creator>Water Cooler Games</dc:creator>
		<pubDate>Wed, 22 Nov 2006 14:58:03 +0000</pubDate>
		<guid isPermaLink="false">/?p=339#comment-100648</guid>
		<description>&lt;strong&gt;BASIC games on the web&lt;/strong&gt;

One of the things we&#039;re often grousing about in the computing education and games education communities is programming literacy (some people call this procedural literacy, but I reserve that phrase for a more general concept of literacy, more on this...</description>
		<content:encoded><![CDATA[<p><strong>BASIC games on the web</strong></p>
<p>One of the things we&#8217;re often grousing about in the computing education and games education communities is programming literacy (some people call this procedural literacy, but I reserve that phrase for a more general concept of literacy, more on this&#8230;</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: noah</title>
		<link>http://grandtextauto.org/2004/06/02/procedural-literacy-an-idea-whose-time-has-come-43-years-ago/comment-page-1/#comment-5462</link>
		<dc:creator>noah</dc:creator>
		<pubDate>Sat, 20 Nov 2004 14:00:41 +0000</pubDate>
		<guid isPermaLink="false">/?p=339#comment-5462</guid>
		<description>Echoing &lt;a href=&quot;http://www.quvu.net/interactivestory.net/papers/deeperconversations.html&quot;&gt;Andrew&#039;s formulation,&lt;/a&gt; a paper from Peter Bogh Andersen and collaborators titled &quot;&lt;a href=&quot;http://imv.au.dk/~pba/Homepagematerial/publicationfolder/teachingprogramming.pdf&quot;&gt;Teaching Programming to Liberal Arts Students &#8212; a Narrative Media Approach&lt;/a&gt;&quot; contains the heading &quot;Why Multimedia Students Need Programming.&quot; They describe &lt;a href=&quot;http://www.daimi.au.dk/lingoland/&quot;&gt;Lingoland,&lt;/a&gt; the homepage for which now bears the headline &quot;Game Metaphors in Programming.&quot;</description>
		<content:encoded><![CDATA[<p>Echoing <a href="http://www.quvu.net/interactivestory.net/papers/deeperconversations.html">Andrew&#8217;s formulation,</a> a paper from Peter Bogh Andersen and collaborators titled &#8220;<a href="http://imv.au.dk/~pba/Homepagematerial/publicationfolder/teachingprogramming.pdf">Teaching Programming to Liberal Arts Students &mdash; a Narrative Media Approach</a>&#8221; contains the heading &#8220;Why Multimedia Students Need Programming.&#8221; They describe <a href="http://www.daimi.au.dk/lingoland/">Lingoland,</a> the homepage for which now bears the headline &#8220;Game Metaphors in Programming.&#8221;</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Matthew G. Kirschenbaum</title>
		<link>http://grandtextauto.org/2004/06/02/procedural-literacy-an-idea-whose-time-has-come-43-years-ago/comment-page-1/#comment-1443</link>
		<dc:creator>Matthew G. Kirschenbaum</dc:creator>
		<pubDate>Tue, 22 Jun 2004 16:28:42 +0000</pubDate>
		<guid isPermaLink="false">/?p=339#comment-1443</guid>
		<description>&lt;trackback /&gt;&lt;strong&gt;The Pedagogy of Programming&lt;/strong&gt;
I took programming courses in both high school and college, at least three or four all told (Basic and Pascal-I&apos;m dating myself). I couldn&apos;t have been less interested. The pedagogical approach was entirely vocational. Just as my French and Sp...</description>
		<content:encoded><![CDATA[<trackback /><strong>The Pedagogy of Programming</strong><br />
I took programming courses in both high school and college, at least three or four all told (Basic and Pascal-I&apos;m dating myself). I couldn&apos;t have been less interested. The pedagogical approach was entirely vocational. Just as my French and Sp&#8230;</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: B. Rickman</title>
		<link>http://grandtextauto.org/2004/06/02/procedural-literacy-an-idea-whose-time-has-come-43-years-ago/comment-page-1/#comment-1363</link>
		<dc:creator>B. Rickman</dc:creator>
		<pubDate>Tue, 30 Nov 1999 00:00:00 +0000</pubDate>
		<guid isPermaLink="false">/?p=339#comment-1363</guid>
		<description>So do you think these guys tried to create a &quot;procedural literacy&quot; revolution for education and failed, or has that revolution yet to occur? I find it ironic that you are calling for the same things they wanted in the 60&#039;s, when the education system is the way it currently is because of what they wanted to do in the 60&#039;s.</description>
		<content:encoded><![CDATA[<p>So do you think these guys tried to create a &#8220;procedural literacy&#8221; revolution for education and failed, or has that revolution yet to occur? I find it ironic that you are calling for the same things they wanted in the 60&#8217;s, when the education system is the way it currently is because of what they wanted to do in the 60&#8217;s.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: andrew</title>
		<link>http://grandtextauto.org/2004/06/02/procedural-literacy-an-idea-whose-time-has-come-43-years-ago/comment-page-1/#comment-1364</link>
		<dc:creator>andrew</dc:creator>
		<pubDate>Tue, 30 Nov 1999 00:00:00 +0000</pubDate>
		<guid isPermaLink="false">/?p=339#comment-1364</guid>
		<description>As a footnote, starting in the late eighties or early nineties, Carnegie Mellon required all freshmen, regardless of major, to take a semester of Computing Skills Workshop, that introduced them to the suite of software on the campus computing system, Andrew.  At the time (and perhaps to this day, 15 years later?), that was an unusual course requirement.  There was no programming involved, however.



As an undergrad at CMU, I became one of the many TA&#039;s for this course.  While it was difficult enough to get a painting major to use Excel, I like to imagine that a few weeks could have been spent introducing programming concepts.  However I wonder if Perlis realized just how dreadful of a process that would be for some students, who would probably loathe the thought of describing processes in the abstract.  I&#039;ve heard some say they think everyone has the capability to program, and while technically this may be true, in practice it could be that for some, just the concept of abstractly representing processes feels so cold and mechanical, they could never bring themselves to do it, or at least not without kicking and screaming.   



If anyone has any links to articles on the topic of &quot;why I hate programming&quot;, please share them, it would be interesting to better understand the obstacles to the ideal of procedural literacy.</description>
		<content:encoded><![CDATA[<p>As a footnote, starting in the late eighties or early nineties, Carnegie Mellon required all freshmen, regardless of major, to take a semester of Computing Skills Workshop, that introduced them to the suite of software on the campus computing system, Andrew.  At the time (and perhaps to this day, 15 years later?), that was an unusual course requirement.  There was no programming involved, however.</p>
<p>As an undergrad at CMU, I became one of the many TA&#8217;s for this course.  While it was difficult enough to get a painting major to use Excel, I like to imagine that a few weeks could have been spent introducing programming concepts.  However I wonder if Perlis realized just how dreadful of a process that would be for some students, who would probably loathe the thought of describing processes in the abstract.  I&#8217;ve heard some say they think everyone has the capability to program, and while technically this may be true, in practice it could be that for some, just the concept of abstractly representing processes feels so cold and mechanical, they could never bring themselves to do it, or at least not without kicking and screaming.   </p>
<p>If anyone has any links to articles on the topic of &#8220;why I hate programming&#8221;, please share them, it would be interesting to better understand the obstacles to the ideal of procedural literacy.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Rob</title>
		<link>http://grandtextauto.org/2004/06/02/procedural-literacy-an-idea-whose-time-has-come-43-years-ago/comment-page-1/#comment-1365</link>
		<dc:creator>Rob</dc:creator>
		<pubDate>Tue, 30 Nov 1999 00:00:00 +0000</pubDate>
		<guid isPermaLink="false">/?p=339#comment-1365</guid>
		<description>My experience of TAing Intro to Programming has been that people become okay with programming once they have built a good mental model to work with; that these are my pieces, they behave like this, and we can build that out of them. But teaching the mental model takes time, and languages themselves often stand in the way of building good models. They present an abstract representation for processes - but the abstraction itself is &lt;a href=&quot;http://www.joelonsoftware.com/articles/LeakyAbstractions.html&quot;&gt;inevitably leaky&lt;/a&gt;, in some languages more than others.



Starting just with languages with minimal syntax: Scheme and Lisp. Even something like the quote mark operator can be a huge stumbling block for many students - why does &lt;i&gt;&#039;foo&lt;/i&gt; behave so strangely, and is different from &lt;i&gt;foo&lt;/i&gt; and from &lt;i&gt;&quot;foo&quot;&lt;/i&gt;? Explaining this requires breaking abstraction barriers away from the nice high-level process description, and going into macroexpansion and internal object representation and a mess of processes underlying the language itself, which students never get. Or the alternative, to gloss over it, and run the risk of students building completely wrong models of its behavior, and having their programs fail in what appear to be arbitrary and capricious ways. It&#039;s immensely frustrating for everyone.



Things get worse with lower-level languages. C, C++, and Java, are all pretty complex syntactically and semantically - statements have to be in blocks, and sometimes they start new blocks, which are sometimes invisible, all depending on the usage of brackets; sometimes they return values, sometimes they don&#039;t; sometimes you can ignore what they return, sometimes you can&#039;t; sometimes they produce side-effects, sometimes they don&#039;t, etc. These languages present mental pieces that have all sorts of sharp edges, weird angles and, worst of all, tend to break in completely unexpected ways. 



So in addition to Andrew&#039;s posting, I&#039;d also like to throw in the problem of language frustration. Learning to program requires learning to deal with an endless stream of arbitrary language minutiae; requires not merely precision, but pedantry, until you get the idea of what goes on underneath. But I don&#039;t know whether an intuitive language be designed at all and still be complex enough to be useful.</description>
		<content:encoded><![CDATA[<p>My experience of TAing Intro to Programming has been that people become okay with programming once they have built a good mental model to work with; that these are my pieces, they behave like this, and we can build that out of them. But teaching the mental model takes time, and languages themselves often stand in the way of building good models. They present an abstract representation for processes &#8211; but the abstraction itself is <a href="http://www.joelonsoftware.com/articles/LeakyAbstractions.html">inevitably leaky</a>, in some languages more than others.</p>
<p>Starting just with languages with minimal syntax: Scheme and Lisp. Even something like the quote mark operator can be a huge stumbling block for many students &#8211; why does <i>&#8216;foo</i> behave so strangely, and is different from <i>foo</i> and from <i>&#8220;foo&#8221;</i>? Explaining this requires breaking abstraction barriers away from the nice high-level process description, and going into macroexpansion and internal object representation and a mess of processes underlying the language itself, which students never get. Or the alternative, to gloss over it, and run the risk of students building completely wrong models of its behavior, and having their programs fail in what appear to be arbitrary and capricious ways. It&#8217;s immensely frustrating for everyone.</p>
<p>Things get worse with lower-level languages. C, C++, and Java, are all pretty complex syntactically and semantically &#8211; statements have to be in blocks, and sometimes they start new blocks, which are sometimes invisible, all depending on the usage of brackets; sometimes they return values, sometimes they don&#8217;t; sometimes you can ignore what they return, sometimes you can&#8217;t; sometimes they produce side-effects, sometimes they don&#8217;t, etc. These languages present mental pieces that have all sorts of sharp edges, weird angles and, worst of all, tend to break in completely unexpected ways. </p>
<p>So in addition to Andrew&#8217;s posting, I&#8217;d also like to throw in the problem of language frustration. Learning to program requires learning to deal with an endless stream of arbitrary language minutiae; requires not merely precision, but pedantry, until you get the idea of what goes on underneath. But I don&#8217;t know whether an intuitive language be designed at all and still be complex enough to be useful.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Michael</title>
		<link>http://grandtextauto.org/2004/06/02/procedural-literacy-an-idea-whose-time-has-come-43-years-ago/comment-page-1/#comment-1366</link>
		<dc:creator>Michael</dc:creator>
		<pubDate>Tue, 30 Nov 1999 00:00:00 +0000</pubDate>
		<guid isPermaLink="false">/?p=339#comment-1366</guid>
		<description>&lt;i&gt;So do you think these guys tried to create a &quot;procedural literacy&quot; revolution for education and failed, or has that revolution yet to occur?&lt;/i&gt;



I think the revolution has been slowly moving along - more a procedural literacy evolution. More people are able to control their computers in more ways now than they could 43 years ago. And there are certainly scripting environments now (such as scripting in Flash or Director, VB, back in the 80&#039;s Hypercard) that enable more people to engage in some degree of procedural authorship. But all of these special purpose environments come at the price of obscuring the full expressive potential of computation. The next stage of procedural literacy is learning to navigate the huge tower of absraction that exists in any computer system, with each layer definining its own little process universe, and with all layers, including the programming languages themselves, contingent human-authored artifacts, each carrying the meanings, assumptions, biases and affordances of their author. 



&lt;i&gt;While it was difficult enough to get a painting major to use Excel, I like to imagine that a few weeks could have been spent introducing programming concepts. However I wonder if Perlis realized just how dreadful of a process that would be for some students, who would probably loathe the thought of describing processes in the abstract. I&#039;ve heard some say they think everyone has the capability to program, and while technically this may be true, in practice it could be that for some, just the concept of abstractly representing processes feels so cold and mechanical, they could never bring themselves to do it, or at least not without kicking and screaming.&lt;/i&gt;



While programming does have its abstract aspects, it also has the properties of a concrete craft practice. Programmers build these elaborate Rube Goldberg machines, in a practice that feels like a combination of writing and mechanical tinkering. But you&#039;re right that the mechanical tinkering part demands precision. I think a block for many people is not so much abstraction, but the extreme attention to detail demanded by programming. A &quot;loose idea&quot; is not enough - it must be fully described in great detail before it will run on a machine. 



&lt;i&gt;So in addition to Andrew&#039;s posting, I&#039;d also like to throw in the problem of language frustration. Learning to program requires learning to deal with an endless stream of arbitrary language minutiae; requires not merely precision, but pedantry, until you get the idea of what goes on underneath.&lt;/i&gt;



The &quot;what goes on underneath&quot; part references the fact that every language encodes a model of computation. Full procedural literacy would involve freedom from any particular model. But this is a high standard for literacy. Many programmers happily spend their lives working in imperative languages truly believing that computation is fundamentally about sequences of instructions, with occasional branching and looping. It most decidely is not, any more than computation is fundamentally an eval-apply cycle (list processing langauges), forward chaining rules with no specification of sequencing (rule languages), backward chaining rules with unification (logic languages), or the many higher-level architectures, all of which can be built on top of the others, none more fundamental than the others.</description>
		<content:encoded><![CDATA[<p><i>So do you think these guys tried to create a &#8220;procedural literacy&#8221; revolution for education and failed, or has that revolution yet to occur?</i></p>
<p>I think the revolution has been slowly moving along &#8211; more a procedural literacy evolution. More people are able to control their computers in more ways now than they could 43 years ago. And there are certainly scripting environments now (such as scripting in Flash or Director, VB, back in the 80&#8217;s Hypercard) that enable more people to engage in some degree of procedural authorship. But all of these special purpose environments come at the price of obscuring the full expressive potential of computation. The next stage of procedural literacy is learning to navigate the huge tower of absraction that exists in any computer system, with each layer definining its own little process universe, and with all layers, including the programming languages themselves, contingent human-authored artifacts, each carrying the meanings, assumptions, biases and affordances of their author. </p>
<p><i>While it was difficult enough to get a painting major to use Excel, I like to imagine that a few weeks could have been spent introducing programming concepts. However I wonder if Perlis realized just how dreadful of a process that would be for some students, who would probably loathe the thought of describing processes in the abstract. I&#8217;ve heard some say they think everyone has the capability to program, and while technically this may be true, in practice it could be that for some, just the concept of abstractly representing processes feels so cold and mechanical, they could never bring themselves to do it, or at least not without kicking and screaming.</i></p>
<p>While programming does have its abstract aspects, it also has the properties of a concrete craft practice. Programmers build these elaborate Rube Goldberg machines, in a practice that feels like a combination of writing and mechanical tinkering. But you&#8217;re right that the mechanical tinkering part demands precision. I think a block for many people is not so much abstraction, but the extreme attention to detail demanded by programming. A &#8220;loose idea&#8221; is not enough &#8211; it must be fully described in great detail before it will run on a machine. </p>
<p><i>So in addition to Andrew&#8217;s posting, I&#8217;d also like to throw in the problem of language frustration. Learning to program requires learning to deal with an endless stream of arbitrary language minutiae; requires not merely precision, but pedantry, until you get the idea of what goes on underneath.</i></p>
<p>The &#8220;what goes on underneath&#8221; part references the fact that every language encodes a model of computation. Full procedural literacy would involve freedom from any particular model. But this is a high standard for literacy. Many programmers happily spend their lives working in imperative languages truly believing that computation is fundamentally about sequences of instructions, with occasional branching and looping. It most decidely is not, any more than computation is fundamentally an eval-apply cycle (list processing langauges), forward chaining rules with no specification of sequencing (rule languages), backward chaining rules with unification (logic languages), or the many higher-level architectures, all of which can be built on top of the others, none more fundamental than the others.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: noah</title>
		<link>http://grandtextauto.org/2004/06/02/procedural-literacy-an-idea-whose-time-has-come-43-years-ago/comment-page-1/#comment-1367</link>
		<dc:creator>noah</dc:creator>
		<pubDate>Tue, 30 Nov 1999 00:00:00 +0000</pubDate>
		<guid isPermaLink="false">/?p=339#comment-1367</guid>
		<description>I have the impression that these sorts of things often only open up for people once they can tinker.



In the standard Intro to CS it takes people a long time to get to the point where there are things they can play with. 



Markup is certainly easier than programming, but nevertheless I think the speed with which so many people learned HTML in the mid-90s may be instructive. 



People learned HTML by getting the source of other people&#039;s HTML files and then tinkering. Changing things and seeing what worked, taking elements from one page and trying to insert them into another, and so on. Usually looking at an reference or formal definition came later, as did starting any HTML page from scratch.



I think Intro to CS would seem more like it was a course about processes if students started the class with existing, functional processes that they then started to alter and combine. Most Intro to CS, as Rob points out, starts out teaching about syntax &#8212; which seems pretty far from the goal of thinking about process.



I&#039;ve been reading some in the CS education literature recently, and I haven&#039;t found anyone advocating this &quot;start with tinkering&quot; approach. Though I did find a report by the AAUW saying that tinkering/exploration is one of the things women really like about later CS classes (and its absence is part of what they dislike in earlier ones).



Am I missing something here?</description>
		<content:encoded><![CDATA[<p>I have the impression that these sorts of things often only open up for people once they can tinker.</p>
<p>In the standard Intro to CS it takes people a long time to get to the point where there are things they can play with. </p>
<p>Markup is certainly easier than programming, but nevertheless I think the speed with which so many people learned HTML in the mid-90s may be instructive. </p>
<p>People learned HTML by getting the source of other people&#8217;s HTML files and then tinkering. Changing things and seeing what worked, taking elements from one page and trying to insert them into another, and so on. Usually looking at an reference or formal definition came later, as did starting any HTML page from scratch.</p>
<p>I think Intro to CS would seem more like it was a course about processes if students started the class with existing, functional processes that they then started to alter and combine. Most Intro to CS, as Rob points out, starts out teaching about syntax &mdash; which seems pretty far from the goal of thinking about process.</p>
<p>I&#8217;ve been reading some in the CS education literature recently, and I haven&#8217;t found anyone advocating this &#8220;start with tinkering&#8221; approach. Though I did find a report by the AAUW saying that tinkering/exploration is one of the things women really like about later CS classes (and its absence is part of what they dislike in earlier ones).</p>
<p>Am I missing something here?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Ian Bogost</title>
		<link>http://grandtextauto.org/2004/06/02/procedural-literacy-an-idea-whose-time-has-come-43-years-ago/comment-page-1/#comment-1368</link>
		<dc:creator>Ian Bogost</dc:creator>
		<pubDate>Tue, 30 Nov 1999 00:00:00 +0000</pubDate>
		<guid isPermaLink="false">/?p=339#comment-1368</guid>
		<description>Of procedural literacy&#039;s many registers, it strikes me that two are colliding here:



(1) Teaching procedurality to young kids who have flexible minds and open futures

(2) Teaching procedurality to adults who have never learned any, and have less flexible minds.



(2) seems a lot harder than (1) to me. But I think the problem has less to do with the mechanics of CS instruction -- although syntax vs. procedure is a good issue to discuss -- and more to do with the students&#039; lack of previous, foundational experience with procedural systems of any kind. They need &lt;i&gt;to have played&lt;/i&gt; more Go, Chess, and Backgammon, &lt;i&gt;to have learned&lt;/i&gt; more natural languages (including, perhaps especially, dead languages), played with more Legos, created more amateur architectural plans, learned to dance, etc...



The challenge is that all of those charges are in the past perfect tense. How can you recuperate that?



I have many thoughts on (1), and I may share them here or on WCG soon. I&#039;ve been trying to turn them into an article.</description>
		<content:encoded><![CDATA[<p>Of procedural literacy&#8217;s many registers, it strikes me that two are colliding here:</p>
<p>(1) Teaching procedurality to young kids who have flexible minds and open futures</p>
<p>(2) Teaching procedurality to adults who have never learned any, and have less flexible minds.</p>
<p>(2) seems a lot harder than (1) to me. But I think the problem has less to do with the mechanics of CS instruction &#8212; although syntax vs. procedure is a good issue to discuss &#8212; and more to do with the students&#8217; lack of previous, foundational experience with procedural systems of any kind. They need <i>to have played</i> more Go, Chess, and Backgammon, <i>to have learned</i> more natural languages (including, perhaps especially, dead languages), played with more Legos, created more amateur architectural plans, learned to dance, etc&#8230;</p>
<p>The challenge is that all of those charges are in the past perfect tense. How can you recuperate that?</p>
<p>I have many thoughts on (1), and I may share them here or on WCG soon. I&#8217;ve been trying to turn them into an article.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Michael</title>
		<link>http://grandtextauto.org/2004/06/02/procedural-literacy-an-idea-whose-time-has-come-43-years-ago/comment-page-1/#comment-1369</link>
		<dc:creator>Michael</dc:creator>
		<pubDate>Tue, 30 Nov 1999 00:00:00 +0000</pubDate>
		<guid isPermaLink="false">/?p=339#comment-1369</guid>
		<description>&lt;i&gt;I&#039;ve been reading some in the CS education literature recently, and I haven&#039;t found anyone advocating this &quot;start with tinkering&quot; approach. &lt;/i&gt;



The &quot;start with tinkering&quot; approach is what I tried to do in Computation as an Expressive Medium, an immersion approach to learning programming as opposed to a &quot;memorize the vocabulary and grammar&quot; approach. Interestingly, I had several students in the class who already had strong programming backgrounds (including a couple of people with CS degrees). We talked about having them place out of the course, but decided they should take it because they had never read some of the historical and theoretical material we were reading in the course and had never written the kinds of programs we were writing. As one of them said, &quot;I never got to write interesting programs as a CS major&quot;, which I think was his way of saying that he never got to tinker and really explore programming as a &lt;i&gt;medium&lt;/i&gt;.



&lt;i&gt;(2) Teaching procedurality to adults who have never learned any, and have less flexible minds.&lt;/i&gt;



&lt;i&gt;(2) seems a lot harder than (1) to me. But I think the problem has less to do with the mechanics of CS instruction -- although syntax vs. procedure is a good issue to discuss -- and more to do with the students&#039; lack of previous, foundational experience with procedural systems of any kind.&lt;/i&gt;



I think we are in a transitional phase where adults are entering graduate programs in New Media with no prior experience in procedurality. As programs such as Georgia Tech&#039;s new undergraduate degree in Computational Media, which is half CS courses and half Literature Communication and Culture courses, are created, I think we can expect that future graduate students in New Media will have programming experience. And even for those students who come into graduate New Media programs without an undergraduate background in New Media, in the future we can expect that they learned to program in elementary school. One of the things I like about the phrase &quot;procedural literacy&quot; is that it immediately conjures its opposite, implying that an inability to think procedurally really is a form of illiteracy, with as dire harmful consequences as the inability to read and write. 



But, even when we can expect that all students entering graduate New Media programs are procedurally literate, there will still be a need for courses that explore procedurality as a medium, that explore the interrelationship between conceptual and theoretical concerns and code. This goes beyond merely knowing how to program, and is really about being able to conceptually think about code.</description>
		<content:encoded><![CDATA[<p><i>I&#8217;ve been reading some in the CS education literature recently, and I haven&#8217;t found anyone advocating this &#8220;start with tinkering&#8221; approach. </i></p>
<p>The &#8220;start with tinkering&#8221; approach is what I tried to do in Computation as an Expressive Medium, an immersion approach to learning programming as opposed to a &#8220;memorize the vocabulary and grammar&#8221; approach. Interestingly, I had several students in the class who already had strong programming backgrounds (including a couple of people with CS degrees). We talked about having them place out of the course, but decided they should take it because they had never read some of the historical and theoretical material we were reading in the course and had never written the kinds of programs we were writing. As one of them said, &#8220;I never got to write interesting programs as a CS major&#8221;, which I think was his way of saying that he never got to tinker and really explore programming as a <i>medium</i>.</p>
<p><i>(2) Teaching procedurality to adults who have never learned any, and have less flexible minds.</i></p>
<p><i>(2) seems a lot harder than (1) to me. But I think the problem has less to do with the mechanics of CS instruction &#8212; although syntax vs. procedure is a good issue to discuss &#8212; and more to do with the students&#8217; lack of previous, foundational experience with procedural systems of any kind.</i></p>
<p>I think we are in a transitional phase where adults are entering graduate programs in New Media with no prior experience in procedurality. As programs such as Georgia Tech&#8217;s new undergraduate degree in Computational Media, which is half CS courses and half Literature Communication and Culture courses, are created, I think we can expect that future graduate students in New Media will have programming experience. And even for those students who come into graduate New Media programs without an undergraduate background in New Media, in the future we can expect that they learned to program in elementary school. One of the things I like about the phrase &#8220;procedural literacy&#8221; is that it immediately conjures its opposite, implying that an inability to think procedurally really is a form of illiteracy, with as dire harmful consequences as the inability to read and write. </p>
<p>But, even when we can expect that all students entering graduate New Media programs are procedurally literate, there will still be a need for courses that explore procedurality as a medium, that explore the interrelationship between conceptual and theoretical concerns and code. This goes beyond merely knowing how to program, and is really about being able to conceptually think about code.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: B. Rickman</title>
		<link>http://grandtextauto.org/2004/06/02/procedural-literacy-an-idea-whose-time-has-come-43-years-ago/comment-page-1/#comment-1370</link>
		<dc:creator>B. Rickman</dc:creator>
		<pubDate>Tue, 30 Nov 1999 00:00:00 +0000</pubDate>
		<guid isPermaLink="false">/?p=339#comment-1370</guid>
		<description>&lt;i&gt;[Group 1 has flexible minds and open futures]

[Group 2 does not]&lt;/i&gt;



I don&#039;t think group 1 exists.  I don&#039;t think it is going to magically appear in twenty years, just because third graders have computers in the classroom.



Okay, yes, there will be a handful of these ideal students who will be procedurally literate as a result of all the right accidents in their education, but I doubt they will ever occur in meaningful numbers. It is, in fact, the goal of education, specifically for higher education (because I don&#039;t see how it would occur any earlier) to provide this literacy. And, to be a pessimist, I don&#039;t see procedural literacy becoming a priority in our lifetimes.</description>
		<content:encoded><![CDATA[<p><i>[Group 1 has flexible minds and open futures]</p>
<p>[Group 2 does not]</i></p>
<p>I don&#8217;t think group 1 exists.  I don&#8217;t think it is going to magically appear in twenty years, just because third graders have computers in the classroom.</p>
<p>Okay, yes, there will be a handful of these ideal students who will be procedurally literate as a result of all the right accidents in their education, but I doubt they will ever occur in meaningful numbers. It is, in fact, the goal of education, specifically for higher education (because I don&#8217;t see how it would occur any earlier) to provide this literacy. And, to be a pessimist, I don&#8217;t see procedural literacy becoming a priority in our lifetimes.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Rob</title>
		<link>http://grandtextauto.org/2004/06/02/procedural-literacy-an-idea-whose-time-has-come-43-years-ago/comment-page-1/#comment-1371</link>
		<dc:creator>Rob</dc:creator>
		<pubDate>Tue, 30 Nov 1999 00:00:00 +0000</pubDate>
		<guid isPermaLink="false">/?p=339#comment-1371</guid>
		<description>Noah: &lt;i&gt;I&#039;ve been reading some in the CS education literature recently, and I haven&#039;t found anyone advocating this &quot;start with tinkering&quot; approach.&lt;/i&gt;



My experience has been that CS majors are taught the mechanics of the tools, and expected to do a lot of this tinkering on their own to complement their education. For example, a good CS graduate picks up most language knowlege on their own, from coding within and outside of class. Like natural language learning via immersion. :)



But even then they&#039;re rarely taught the &lt;i&gt;creative&lt;/i&gt; aspects, just the mechanics. Like Michael mentions, it can be quite hard to find projects that guide experimentation with programming as a creative medium - which is why classes like his are really exciting news. 



Michael: &lt;i&gt;Full procedural literacy would involve freedom from any particular model. But this is a high standard for literacy. &lt;/i&gt; 



I&#039;m also wondering what&#039;s required to attain this standard, and what it is, exactly. I mean, in speaking of procedural literacy, we&#039;re going above mere syntax, above data structure considerations; we&#039;re going above algorithm analysis and cost trade-offs; we&#039;re even above particular models of computation, imperative to functional, to inference-based, etc. 



But this is where my imagination fails me. What exactly is this procedural literacy that gives one freedom from the messiness of particular models of computation, but could also be taught to beginners? I mean, full literacy in computer science does eventually lead to that kind of a gestalt vision, but that&#039;s not what you have in mind, is it?</description>
		<content:encoded><![CDATA[<p>Noah: <i>I&#8217;ve been reading some in the CS education literature recently, and I haven&#8217;t found anyone advocating this &#8220;start with tinkering&#8221; approach.</i></p>
<p>My experience has been that CS majors are taught the mechanics of the tools, and expected to do a lot of this tinkering on their own to complement their education. For example, a good CS graduate picks up most language knowlege on their own, from coding within and outside of class. Like natural language learning via immersion. :)</p>
<p>But even then they&#8217;re rarely taught the <i>creative</i> aspects, just the mechanics. Like Michael mentions, it can be quite hard to find projects that guide experimentation with programming as a creative medium &#8211; which is why classes like his are really exciting news. </p>
<p>Michael: <i>Full procedural literacy would involve freedom from any particular model. But this is a high standard for literacy. </i> </p>
<p>I&#8217;m also wondering what&#8217;s required to attain this standard, and what it is, exactly. I mean, in speaking of procedural literacy, we&#8217;re going above mere syntax, above data structure considerations; we&#8217;re going above algorithm analysis and cost trade-offs; we&#8217;re even above particular models of computation, imperative to functional, to inference-based, etc. </p>
<p>But this is where my imagination fails me. What exactly is this procedural literacy that gives one freedom from the messiness of particular models of computation, but could also be taught to beginners? I mean, full literacy in computer science does eventually lead to that kind of a gestalt vision, but that&#8217;s not what you have in mind, is it?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Ian Bogost</title>
		<link>http://grandtextauto.org/2004/06/02/procedural-literacy-an-idea-whose-time-has-come-43-years-ago/comment-page-1/#comment-1372</link>
		<dc:creator>Ian Bogost</dc:creator>
		<pubDate>Tue, 30 Nov 1999 00:00:00 +0000</pubDate>
		<guid isPermaLink="false">/?p=339#comment-1372</guid>
		<description>Michael -- &lt;i&gt;But, even when we can expect that all students entering graduate New Media programs are procedurally literate, there will still be a need for courses that explore procedurality as a medium&lt;/i&gt;



I&#039;ll agree with that. But I&#039;d also argue that procedurality is not limited to code, as I hinted above.



Brandon -- &lt;i&gt;t is, in fact, the goal of education, specifically for higher education (because I don&#039;t see how it would occur any earlier) to provide this literacy&lt;/i&gt;



I think you&#039;re dead wrong on this. This has to start a lot earlier. Think about kids&#039; receptivity to the conceptual and symbolic at a young age. This has to happen now, not later.</description>
		<content:encoded><![CDATA[<p>Michael &#8212; <i>But, even when we can expect that all students entering graduate New Media programs are procedurally literate, there will still be a need for courses that explore procedurality as a medium</i></p>
<p>I&#8217;ll agree with that. But I&#8217;d also argue that procedurality is not limited to code, as I hinted above.</p>
<p>Brandon &#8212; <i>t is, in fact, the goal of education, specifically for higher education (because I don&#8217;t see how it would occur any earlier) to provide this literacy</i></p>
<p>I think you&#8217;re dead wrong on this. This has to start a lot earlier. Think about kids&#8217; receptivity to the conceptual and symbolic at a young age. This has to happen now, not later.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: B. Rickman</title>
		<link>http://grandtextauto.org/2004/06/02/procedural-literacy-an-idea-whose-time-has-come-43-years-ago/comment-page-1/#comment-1373</link>
		<dc:creator>B. Rickman</dc:creator>
		<pubDate>Tue, 30 Nov 1999 00:00:00 +0000</pubDate>
		<guid isPermaLink="false">/?p=339#comment-1373</guid>
		<description>I don&#039;t see where there is room for it.  The curriculum for primary and secondary education in most American schools is already chock full.  Perhaps you&#039;d want to integrate procedural literacy in with mathematics, which seems like a good place. But there are a number of extant battles for control of the math curriculum, and a large amount of &quot;secondary level&quot; math skills -- trigonometry, precalculus -- are being pushed up into community colleges and universities.



But I think you missed my main point, which is that you should never expect a procedurally literate student to walk into your classroom. &lt;i&gt;You&lt;/i&gt; have to teach it. And, to make it more challenging, you shouldn&#039;t need to use a computer to do it.</description>
		<content:encoded><![CDATA[<p>I don&#8217;t see where there is room for it.  The curriculum for primary and secondary education in most American schools is already chock full.  Perhaps you&#8217;d want to integrate procedural literacy in with mathematics, which seems like a good place. But there are a number of extant battles for control of the math curriculum, and a large amount of &#8220;secondary level&#8221; math skills &#8212; trigonometry, precalculus &#8212; are being pushed up into community colleges and universities.</p>
<p>But I think you missed my main point, which is that you should never expect a procedurally literate student to walk into your classroom. <i>You</i> have to teach it. And, to make it more challenging, you shouldn&#8217;t need to use a computer to do it.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Ian Bogost</title>
		<link>http://grandtextauto.org/2004/06/02/procedural-literacy-an-idea-whose-time-has-come-43-years-ago/comment-page-1/#comment-1374</link>
		<dc:creator>Ian Bogost</dc:creator>
		<pubDate>Tue, 30 Nov 1999 00:00:00 +0000</pubDate>
		<guid isPermaLink="false">/?p=339#comment-1374</guid>
		<description>Brandon -- your lack of progressive interest stands second only to your destructive approach to every issue you address publicly.    



Clearly, you have no experience with kids or their education. Procedural literacy starts at the earliest of stages, and as I argued can begin with extra-curricular media such as board games, toys, and other media, as I explicitly suggested above. Furthermore, personalities like Seymour Papert and Alan Kay have created means for kids to learn about programming from a very early age, since the mid 1970s. Futhermore, even if one were willing to admit that US curricula were replete with valuable learning (which I am not), your suggestion that such curricula are &quot;chock full&quot; wreaks of a massive misunderstanding of the inherent problems of institutionalized education today. The notion that Michael and my suggestions about procedural literacy correspond or participate with any &quot;accepted&quot; notion of primary public education in the contemporary USA leave me in the most confused of states, given that both of us are arguing for a change in pedagogical approaches. 



Your suggestion that the responsibility to teach kids in any kind of topic that exceeds the current educational modalities suggests not only that you chose to ignore my insistence that procedurality must be cultivated at any early age, but also that your understanding of the topic at hand is deeply deluded. Were teachers like Michael and I (yes, we&#039;ve actually taught!) expecting a wealth of procedurally literate students to waltz into our program, do you think we would discuss such topics with such devoted interest and attention? Or perhaps you simply hope to exercise some kind of glib trump card in arguing that computers aren&#039;t useful systems of computation, or that my own entirely non-computer based suggestions of principal tools for procedural learning simply do not qualify for the blindered, broad-based objections you raise.



If ever you choose to consider any of the issues on this or other public forums in a way that wreaks of anything but disdain and anitpathy, I shall consider responding further. Until then, I wish you the best of luck in your antipathetic antimodalism.</description>
		<content:encoded><![CDATA[<p>Brandon &#8212; your lack of progressive interest stands second only to your destructive approach to every issue you address publicly.    </p>
<p>Clearly, you have no experience with kids or their education. Procedural literacy starts at the earliest of stages, and as I argued can begin with extra-curricular media such as board games, toys, and other media, as I explicitly suggested above. Furthermore, personalities like Seymour Papert and Alan Kay have created means for kids to learn about programming from a very early age, since the mid 1970s. Futhermore, even if one were willing to admit that US curricula were replete with valuable learning (which I am not), your suggestion that such curricula are &#8220;chock full&#8221; wreaks of a massive misunderstanding of the inherent problems of institutionalized education today. The notion that Michael and my suggestions about procedural literacy correspond or participate with any &#8220;accepted&#8221; notion of primary public education in the contemporary USA leave me in the most confused of states, given that both of us are arguing for a change in pedagogical approaches. </p>
<p>Your suggestion that the responsibility to teach kids in any kind of topic that exceeds the current educational modalities suggests not only that you chose to ignore my insistence that procedurality must be cultivated at any early age, but also that your understanding of the topic at hand is deeply deluded. Were teachers like Michael and I (yes, we&#8217;ve actually taught!) expecting a wealth of procedurally literate students to waltz into our program, do you think we would discuss such topics with such devoted interest and attention? Or perhaps you simply hope to exercise some kind of glib trump card in arguing that computers aren&#8217;t useful systems of computation, or that my own entirely non-computer based suggestions of principal tools for procedural learning simply do not qualify for the blindered, broad-based objections you raise.</p>
<p>If ever you choose to consider any of the issues on this or other public forums in a way that wreaks of anything but disdain and anitpathy, I shall consider responding further. Until then, I wish you the best of luck in your antipathetic antimodalism.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: B. Rickman</title>
		<link>http://grandtextauto.org/2004/06/02/procedural-literacy-an-idea-whose-time-has-come-43-years-ago/comment-page-1/#comment-1375</link>
		<dc:creator>B. Rickman</dc:creator>
		<pubDate>Tue, 30 Nov 1999 00:00:00 +0000</pubDate>
		<guid isPermaLink="false">/?p=339#comment-1375</guid>
		<description>Wow!



Well, first of all I will take Ian&#039;s response as an admission that you are indeed a revolutionary, seeking not simply to push the educational system down a better path, but to overturn it in favor of radical new ideas. (Ideas that aren&#039;t new with respect to Papert and Kay, but would certainly be a new pedagogy at the little red schoolhouse.)



My first response to this was to directly question the feasibility of such an action. My instinct was to look at how this &quot;procedural literacy&quot; could fit in with the real and everyday institutions of education. My mistake! The bomb-lobbing revolutionaries are going to do away with all the old institutions. Papert and Kay were only the first wave, and now it is up to you, my young BFG-toting soldier, to carry on the fight!



Enough with the levity. I am overly glib, that is true. Because I see a solid lack of any critical foundation for all of these radical new ideas, for the fad that is ludology, for the clever slight-of-hand that is trying to replace &quot;computers in the classroom&quot; with &quot;games in the classroom&quot;. Yes, I have big problems with the current state of education as well, but I also think that the &quot;cognitive revolution&quot; that accompanied the rise of the modern computer is deeply flawed. Which makes me a reactionary against the ideas of Papert and Kay.



You are welcome to address my perspective in whatever forum appeals most to you.</description>
		<content:encoded><![CDATA[<p>Wow!</p>
<p>Well, first of all I will take Ian&#8217;s response as an admission that you are indeed a revolutionary, seeking not simply to push the educational system down a better path, but to overturn it in favor of radical new ideas. (Ideas that aren&#8217;t new with respect to Papert and Kay, but would certainly be a new pedagogy at the little red schoolhouse.)</p>
<p>My first response to this was to directly question the feasibility of such an action. My instinct was to look at how this &#8220;procedural literacy&#8221; could fit in with the real and everyday institutions of education. My mistake! The bomb-lobbing revolutionaries are going to do away with all the old institutions. Papert and Kay were only the first wave, and now it is up to you, my young BFG-toting soldier, to carry on the fight!</p>
<p>Enough with the levity. I am overly glib, that is true. Because I see a solid lack of any critical foundation for all of these radical new ideas, for the fad that is ludology, for the clever slight-of-hand that is trying to replace &#8220;computers in the classroom&#8221; with &#8220;games in the classroom&#8221;. Yes, I have big problems with the current state of education as well, but I also think that the &#8220;cognitive revolution&#8221; that accompanied the rise of the modern computer is deeply flawed. Which makes me a reactionary against the ideas of Papert and Kay.</p>
<p>You are welcome to address my perspective in whatever forum appeals most to you.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Michael</title>
		<link>http://grandtextauto.org/2004/06/02/procedural-literacy-an-idea-whose-time-has-come-43-years-ago/comment-page-1/#comment-1376</link>
		<dc:creator>Michael</dc:creator>
		<pubDate>Tue, 30 Nov 1999 00:00:00 +0000</pubDate>
		<guid isPermaLink="false">/?p=339#comment-1376</guid>
		<description>&lt;i&gt;But this is where my imagination fails me. What exactly is this procedural literacy that gives one freedom from the messiness of particular models of computation, but could also be taught to beginners? I mean, full literacy in computer science does eventually lead to that kind of a gestalt vision, but that&#039;s not what you have in mind, is it?&lt;/i&gt;



Something like a gestalt may be what I have in mind. And no, it&#039;s not something that can be taught to beginners. That&#039;s why I said it&#039;s a high standard for procedural literacy, a level that many programmers with degrees in computer science may not have. What I mean is the ability to think architecturally about computation, to invent new representations and languages as you need them, to mix-and-match different computational concepts, to not be blindered by any one model of computation. But getting there means being exposed in turn to many models of computation, something that won&#039;t happen in one introductory course. Abelson and Suchman&#039;s The Structure and Interpretation of Computer Programs is indeed and intro to CS that, in a first course on programming, has you do things like write interpreters for computer languages. So it tries to accelerate this architecturalist understanding of computation. I don&#039;t know how well it works in this regard. Any comments? And it certainly has the wrong focus as an introductory approach to teaching procedural literacy for new media scholars and practitioners.</description>
		<content:encoded><![CDATA[<p><i>But this is where my imagination fails me. What exactly is this procedural literacy that gives one freedom from the messiness of particular models of computation, but could also be taught to beginners? I mean, full literacy in computer science does eventually lead to that kind of a gestalt vision, but that&#8217;s not what you have in mind, is it?</i></p>
<p>Something like a gestalt may be what I have in mind. And no, it&#8217;s not something that can be taught to beginners. That&#8217;s why I said it&#8217;s a high standard for procedural literacy, a level that many programmers with degrees in computer science may not have. What I mean is the ability to think architecturally about computation, to invent new representations and languages as you need them, to mix-and-match different computational concepts, to not be blindered by any one model of computation. But getting there means being exposed in turn to many models of computation, something that won&#8217;t happen in one introductory course. Abelson and Suchman&#8217;s The Structure and Interpretation of Computer Programs is indeed and intro to CS that, in a first course on programming, has you do things like write interpreters for computer languages. So it tries to accelerate this architecturalist understanding of computation. I don&#8217;t know how well it works in this regard. Any comments? And it certainly has the wrong focus as an introductory approach to teaching procedural literacy for new media scholars and practitioners.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Michael</title>
		<link>http://grandtextauto.org/2004/06/02/procedural-literacy-an-idea-whose-time-has-come-43-years-ago/comment-page-1/#comment-1377</link>
		<dc:creator>Michael</dc:creator>
		<pubDate>Tue, 30 Nov 1999 00:00:00 +0000</pubDate>
		<guid isPermaLink="false">/?p=339#comment-1377</guid>
		<description>On the topic of &quot;why I hate programming&quot;, and how the level of detail required to write working programs may turn off many new programmers, it&#039;s interesting that Perlis already identified the ability to deal with the detail work required to fully specify processes as one of the fundamentals of programming. In a list of the &quot;elements of programming&quot;, he offers this unromantic and not very revolutionary-sounding item: 



&lt;blockquote&gt;

&lt;i&gt;A Priori Attention to Eventualities Regardless of Likelihood.&lt;/i&gt; The development of a mechanical attitude toward mechanical processing requires that processing of even unlikely cases by provided for. The programming of the solution of a quadratic equation and the analysis of the general second-degree equation in two variables to select conic sections are good examples where many students fail to provide for eventualities. &lt;b&gt;The willingness to program through a tedious collection of tests on special cases must be fostered.&lt;/b&gt; (emphasis added)

&lt;/blockquote&gt;</description>
		<content:encoded><![CDATA[<p>On the topic of &#8220;why I hate programming&#8221;, and how the level of detail required to write working programs may turn off many new programmers, it&#8217;s interesting that Perlis already identified the ability to deal with the detail work required to fully specify processes as one of the fundamentals of programming. In a list of the &#8220;elements of programming&#8221;, he offers this unromantic and not very revolutionary-sounding item: </p>
<blockquote>
<p><i>A Priori Attention to Eventualities Regardless of Likelihood.</i> The development of a mechanical attitude toward mechanical processing requires that processing of even unlikely cases by provided for. The programming of the solution of a quadratic equation and the analysis of the general second-degree equation in two variables to select conic sections are good examples where many students fail to provide for eventualities. <b>The willingness to program through a tedious collection of tests on special cases must be fostered.</b> (emphasis added)</p>
</blockquote>
]]></content:encoded>
	</item>
	<item>
		<title>By: William Huber</title>
		<link>http://grandtextauto.org/2004/06/02/procedural-literacy-an-idea-whose-time-has-come-43-years-ago/comment-page-1/#comment-1378</link>
		<dc:creator>William Huber</dc:creator>
		<pubDate>Tue, 30 Nov 1999 00:00:00 +0000</pubDate>
		<guid isPermaLink="false">/?p=339#comment-1378</guid>
		<description>Abelson and Sussman&#039;s SICP (known also as &quot;The Purple Book,&quot; &quot;The Wizard Book&quot; and my favorite - &quot;The Splodey Book&quot; - &#039;because it made my head explode,&#039; as one LISP hacker once told me) would be an excellent text for teaching procedural fluency. It is, really, language agnostic, free from the conventions and presumptions that most other texts on algorithms and the like have, and I can imagine it being expanded and adapted (and some of the engineering-specific assumptions - that everyone is fluent with calculus, an assumption that the material didn&#039;t really require) to emphasize the creative aspects.



Because people really did feel free to play with the exercises in the text, tweaking them and making them more amusing and more fun.



It&#039;s been a good number of years since I took the course that used that text, and honestly, I really wouldn&#039;t mind going through it again. A fugue of epiphanies were in that little purple book for me.</description>
		<content:encoded><![CDATA[<p>Abelson and Sussman&#8217;s SICP (known also as &#8220;The Purple Book,&#8221; &#8220;The Wizard Book&#8221; and my favorite &#8211; &#8220;The Splodey Book&#8221; &#8211; &#8216;because it made my head explode,&#8217; as one LISP hacker once told me) would be an excellent text for teaching procedural fluency. It is, really, language agnostic, free from the conventions and presumptions that most other texts on algorithms and the like have, and I can imagine it being expanded and adapted (and some of the engineering-specific assumptions &#8211; that everyone is fluent with calculus, an assumption that the material didn&#8217;t really require) to emphasize the creative aspects.</p>
<p>Because people really did feel free to play with the exercises in the text, tweaking them and making them more amusing and more fun.</p>
<p>It&#8217;s been a good number of years since I took the course that used that text, and honestly, I really wouldn&#8217;t mind going through it again. A fugue of epiphanies were in that little purple book for me.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Christy</title>
		<link>http://grandtextauto.org/2004/06/02/procedural-literacy-an-idea-whose-time-has-come-43-years-ago/comment-page-1/#comment-1379</link>
		<dc:creator>Christy</dc:creator>
		<pubDate>Tue, 30 Nov 1999 00:00:00 +0000</pubDate>
		<guid isPermaLink="false">/?p=339#comment-1379</guid>
		<description>Being a pgrad in New Media with no programming background (but a &#039;tinkerer&#039; at least) I wholeheartedly agree that pgrads need to know programming. I&#039;ve reached a wall with my content creation because there are so many things I want to do but do not know how to. I can ask questions on developer lists but don&#039;t really get all the info I need to power ahead. We&#039;ve got &#039;expert&#039; staff at Uni that are set up to support gaps in our knowledge -- which is good for problem-solving -- but I really want to learn these things. The obstacle for me is $$. I can&#039;t afford to do the classes I want to do. The other option, which I take up, is auditing undergrad classes on the subject I want to know more about but then I can&#039;t chat with the tutors and so on, only attend the lectures. 



What would be great is if a semester class is introduced, like methodology classes for pgrads who come from artistic backgrounds, where programming is taught as a necessary intro for all NM pgrads.</description>
		<content:encoded><![CDATA[<p>Being a pgrad in New Media with no programming background (but a &#8216;tinkerer&#8217; at least) I wholeheartedly agree that pgrads need to know programming. I&#8217;ve reached a wall with my content creation because there are so many things I want to do but do not know how to. I can ask questions on developer lists but don&#8217;t really get all the info I need to power ahead. We&#8217;ve got &#8216;expert&#8217; staff at Uni that are set up to support gaps in our knowledge &#8212; which is good for problem-solving &#8212; but I really want to learn these things. The obstacle for me is $$. I can&#8217;t afford to do the classes I want to do. The other option, which I take up, is auditing undergrad classes on the subject I want to know more about but then I can&#8217;t chat with the tutors and so on, only attend the lectures. </p>
<p>What would be great is if a semester class is introduced, like methodology classes for pgrads who come from artistic backgrounds, where programming is taught as a necessary intro for all NM pgrads.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Rob</title>
		<link>http://grandtextauto.org/2004/06/02/procedural-literacy-an-idea-whose-time-has-come-43-years-ago/comment-page-1/#comment-1380</link>
		<dc:creator>Rob</dc:creator>
		<pubDate>Tue, 30 Nov 1999 00:00:00 +0000</pubDate>
		<guid isPermaLink="false">/?p=339#comment-1380</guid>
		<description>I agree, SICP is an excellent book. It really gets across the idea of language being a problem modeling tool - that if you encounter a new kind of a problem, first imagine what kind of a language would make solving it trivial, then implement that language, and write your solution in it. Which is another way of teaching people how to analyze real-world problems, create models on the right level of abstraction, and build new computational processes that fit it.



But with its emphasis on solving math and EE problems, it&#039;s horrible for teaching anyone but engineering undergrads. Those frustrate the non-engg people - but to change the emphasis, some work would have to go into building good graphics and media wrappers for Scheme that the students could easily use, and practically rewriting whole sub-chapters of the book... :)</description>
		<content:encoded><![CDATA[<p>I agree, SICP is an excellent book. It really gets across the idea of language being a problem modeling tool &#8211; that if you encounter a new kind of a problem, first imagine what kind of a language would make solving it trivial, then implement that language, and write your solution in it. Which is another way of teaching people how to analyze real-world problems, create models on the right level of abstraction, and build new computational processes that fit it.</p>
<p>But with its emphasis on solving math and EE problems, it&#8217;s horrible for teaching anyone but engineering undergrads. Those frustrate the non-engg people &#8211; but to change the emphasis, some work would have to go into building good graphics and media wrappers for Scheme that the students could easily use, and practically rewriting whole sub-chapters of the book&#8230; :)</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: William Huber</title>
		<link>http://grandtextauto.org/2004/06/02/procedural-literacy-an-idea-whose-time-has-come-43-years-ago/comment-page-1/#comment-1381</link>
		<dc:creator>William Huber</dc:creator>
		<pubDate>Tue, 30 Nov 1999 00:00:00 +0000</pubDate>
		<guid isPermaLink="false">/?p=339#comment-1381</guid>
		<description>Rob, I can&#039;t completely agree. I agree with changing the eng. focus. But turning to Advanced Logo is probably going to cloud the issue. If I were going to take one pedagogical myth to task in this thread, it would be the &quot;adding pictures makes it easier for non-techies&quot; myth - this isn&#039;t Fun with Dick and Jane we&#039;re trying to learn and teach. In fact, there are a number of expressive things with text that can be done with Scheme that don&#039;t involve higher math and still teach recursion, environments, scope, assignment, meta-circular evaluation and the like.



The visual tools can be used to help visualize the procedures themselves - I remember being shown an almost abstract visualization of sort algorithms that did an excellent job in helping train my own visualization (and, for me, and perhaps for many others, it&#039;s the internal visualization, the transformation of the procedures into spatio-visual metaphors in my head - and hopefully, the right metaphors with the right entailments - that compromises much of the real learning.)



One tool, in fact, that could be helpful would be a visual metaphor output to a debugger, that simultaneously output approriate visualizations for conditionals, loops, algorithms, et al while simultaneously bouncing through the code.</description>
		<content:encoded><![CDATA[<p>Rob, I can&#8217;t completely agree. I agree with changing the eng. focus. But turning to Advanced Logo is probably going to cloud the issue. If I were going to take one pedagogical myth to task in this thread, it would be the &#8220;adding pictures makes it easier for non-techies&#8221; myth &#8211; this isn&#8217;t Fun with Dick and Jane we&#8217;re trying to learn and teach. In fact, there are a number of expressive things with text that can be done with Scheme that don&#8217;t involve higher math and still teach recursion, environments, scope, assignment, meta-circular evaluation and the like.</p>
<p>The visual tools can be used to help visualize the procedures themselves &#8211; I remember being shown an almost abstract visualization of sort algorithms that did an excellent job in helping train my own visualization (and, for me, and perhaps for many others, it&#8217;s the internal visualization, the transformation of the procedures into spatio-visual metaphors in my head &#8211; and hopefully, the right metaphors with the right entailments &#8211; that compromises much of the real learning.)</p>
<p>One tool, in fact, that could be helpful would be a visual metaphor output to a debugger, that simultaneously output approriate visualizations for conditionals, loops, algorithms, et al while simultaneously bouncing through the code.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: michael</title>
		<link>http://grandtextauto.org/2004/06/02/procedural-literacy-an-idea-whose-time-has-come-43-years-ago/comment-page-1/#comment-1382</link>
		<dc:creator>michael</dc:creator>
		<pubDate>Tue, 30 Nov 1999 00:00:00 +0000</pubDate>
		<guid isPermaLink="false">/?p=339#comment-1382</guid>
		<description>&lt;i&gt;Rob, I can&#039;t completely agree. I agree with changing the eng. focus. But turning to Advanced Logo is probably going to cloud the issue. If I were going to take one pedagogical myth to task in this thread, it would be the &quot;adding pictures makes it easier for non-techies&quot; myth...&lt;/i&gt;



William, I agree that teaching programming for artists and humanists shouldn&#039;t be only about the visual. In fact, for the assignments I gave the first time I taught computation as an expressive medium, only one of them was explicitly about producing imagery - the rest were about treating the web as a data structure, creating tools for image manipulation (pushing on the notion that tools themselves are authored, and should be considered as a space for intervention), and text interaction. 



One of my concerns about using scheme, however, would be the issue of a community of practice. For a language such as Java, there are many artists already using it, which means that there are many people to talk to, large amounts of code available to build upon and so forth, when doing creative work with Java. Because of the ubiquity of Java VMs in web browsers, the web can easily be used as a mechanism for viewing Java-based work. I think one of the goals of such a class should be to not only increase procedural literacy, but give the students concrete skills in a language that&#039;s already broadly used and that they can start using in their own practice. 



In your list of procedural concepts, we did cover recursion, environments, scope and assignment using Java, but not meta-circular evaluation. The last is of course critical for thinking about how to implement interpreters for your own languages. But I think there&#039;s no way I&#039;d teach meta-circular evaluation in a computation as an expressive medium course. Remember that the students in such a class, unlike SICP students, are also reading historical and theoretical texts in new media, and have to connect the readings to the programming material. So they&#039;re doing some extra conceptual work that the SICP students aren&#039;t. A programming course for humanists and artists should not be thought of as dumbed down CS, or CS made friendly, but rather as an alternative CS curriculum. It&#039;s all right for it to be hard, to be &quot;splodey&quot;, but there are many different ways to be &quot;splodey&quot; besides teaching traditional CS material. Incidently, the Java students are also learning about OO design (which is really knowledge representation), a concept that the scheme students don&#039;t get. 



&lt;i&gt;One tool, in fact, that could be helpful would be a visual metaphor output to a debugger, that simultaneously output approriate visualizations for conditionals, loops, algorithms, et al while simultaneously bouncing through the code.&lt;/i&gt;



Very nice idea! Points towards some of the interesting tool development that should be done to support the teaching of procedural literacy.</description>
		<content:encoded><![CDATA[<p><i>Rob, I can&#8217;t completely agree. I agree with changing the eng. focus. But turning to Advanced Logo is probably going to cloud the issue. If I were going to take one pedagogical myth to task in this thread, it would be the &#8220;adding pictures makes it easier for non-techies&#8221; myth&#8230;</i></p>
<p>William, I agree that teaching programming for artists and humanists shouldn&#8217;t be only about the visual. In fact, for the assignments I gave the first time I taught computation as an expressive medium, only one of them was explicitly about producing imagery &#8211; the rest were about treating the web as a data structure, creating tools for image manipulation (pushing on the notion that tools themselves are authored, and should be considered as a space for intervention), and text interaction. </p>
<p>One of my concerns about using scheme, however, would be the issue of a community of practice. For a language such as Java, there are many artists already using it, which means that there are many people to talk to, large amounts of code available to build upon and so forth, when doing creative work with Java. Because of the ubiquity of Java VMs in web browsers, the web can easily be used as a mechanism for viewing Java-based work. I think one of the goals of such a class should be to not only increase procedural literacy, but give the students concrete skills in a language that&#8217;s already broadly used and that they can start using in their own practice. </p>
<p>In your list of procedural concepts, we did cover recursion, environments, scope and assignment using Java, but not meta-circular evaluation. The last is of course critical for thinking about how to implement interpreters for your own languages. But I think there&#8217;s no way I&#8217;d teach meta-circular evaluation in a computation as an expressive medium course. Remember that the students in such a class, unlike SICP students, are also reading historical and theoretical texts in new media, and have to connect the readings to the programming material. So they&#8217;re doing some extra conceptual work that the SICP students aren&#8217;t. A programming course for humanists and artists should not be thought of as dumbed down CS, or CS made friendly, but rather as an alternative CS curriculum. It&#8217;s all right for it to be hard, to be &#8220;splodey&#8221;, but there are many different ways to be &#8220;splodey&#8221; besides teaching traditional CS material. Incidently, the Java students are also learning about OO design (which is really knowledge representation), a concept that the scheme students don&#8217;t get. </p>
<p><i>One tool, in fact, that could be helpful would be a visual metaphor output to a debugger, that simultaneously output approriate visualizations for conditionals, loops, algorithms, et al while simultaneously bouncing through the code.</i></p>
<p>Very nice idea! Points towards some of the interesting tool development that should be done to support the teaching of procedural literacy.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: michael</title>
		<link>http://grandtextauto.org/2004/06/02/procedural-literacy-an-idea-whose-time-has-come-43-years-ago/comment-page-1/#comment-1383</link>
		<dc:creator>michael</dc:creator>
		<pubDate>Tue, 30 Nov 1999 00:00:00 +0000</pubDate>
		<guid isPermaLink="false">/?p=339#comment-1383</guid>
		<description>&lt;i&gt;Because I see a solid lack of any critical foundation for all of these radical new ideas, for the fad that is ludology, for the clever slight-of-hand that is trying to replace &quot;computers in the classroom&quot; with &quot;games in the classroom&quot;. Yes, I have big problems with the current state of education as well, but I also think that the &quot;cognitive revolution&quot; that accompanied the rise of the modern computer is deeply flawed. &lt;/i&gt;



Brandon, I don&#039;t quite follow the connection between game studies and teaching procedural literacy. While games are certainly an instance of a procedural medium, the concept of procedural literacy is much broader than games. As far as the cognitive revolution, which in its uncritical formulations treats humans as information processors identical to contemporary computers, the only antidote would seem to be procedural literacy. Only through an understanding of programming and how computers really operate could someone gain a deep understanding of the similarities and differences between human experience and computation.</description>
		<content:encoded><![CDATA[<p><i>Because I see a solid lack of any critical foundation for all of these radical new ideas, for the fad that is ludology, for the clever slight-of-hand that is trying to replace &#8220;computers in the classroom&#8221; with &#8220;games in the classroom&#8221;. Yes, I have big problems with the current state of education as well, but I also think that the &#8220;cognitive revolution&#8221; that accompanied the rise of the modern computer is deeply flawed. </i></p>
<p>Brandon, I don&#8217;t quite follow the connection between game studies and teaching procedural literacy. While games are certainly an instance of a procedural medium, the concept of procedural literacy is much broader than games. As far as the cognitive revolution, which in its uncritical formulations treats humans as information processors identical to contemporary computers, the only antidote would seem to be procedural literacy. Only through an understanding of programming and how computers really operate could someone gain a deep understanding of the similarities and differences between human experience and computation.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: William Huber</title>
		<link>http://grandtextauto.org/2004/06/02/procedural-literacy-an-idea-whose-time-has-come-43-years-ago/comment-page-1/#comment-1384</link>
		<dc:creator>William Huber</dc:creator>
		<pubDate>Tue, 30 Nov 1999 00:00:00 +0000</pubDate>
		<guid isPermaLink="false">/?p=339#comment-1384</guid>
		<description>Thank you for your follow-up, Michael. I&#039;m still inordinately fond of LISP variants - and the fact that it&#039;s a short bridge from hardware to software when discussing CARs and CDRs - but you may be right about the value of the extant body of Java material.



In our intro to CS class, though, we did do OO work in Scheme. It was spun out of the assignment section of SICP, and including implementing a primitve OO framework using message-passing. It was in those exercises, too, that students were able to be the most creative, designing an OO virtual world of restaurant-objects and food-objects, along with the usual ATM and bank account objects. In defense of Scheme, it makes it easy to teach OO by actually implementing it, rather than receiving it full-formed from the forehead of Zeus, as it were.</description>
		<content:encoded><![CDATA[<p>Thank you for your follow-up, Michael. I&#8217;m still inordinately fond of LISP variants &#8211; and the fact that it&#8217;s a short bridge from hardware to software when discussing CARs and CDRs &#8211; but you may be right about the value of the extant body of Java material.</p>
<p>In our intro to CS class, though, we did do OO work in Scheme. It was spun out of the assignment section of SICP, and including implementing a primitve OO framework using message-passing. It was in those exercises, too, that students were able to be the most creative, designing an OO virtual world of restaurant-objects and food-objects, along with the usual ATM and bank account objects. In defense of Scheme, it makes it easy to teach OO by actually implementing it, rather than receiving it full-formed from the forehead of Zeus, as it were.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Rob</title>
		<link>http://grandtextauto.org/2004/06/02/procedural-literacy-an-idea-whose-time-has-come-43-years-ago/comment-page-1/#comment-1385</link>
		<dc:creator>Rob</dc:creator>
		<pubDate>Tue, 30 Nov 1999 00:00:00 +0000</pubDate>
		<guid isPermaLink="false">/?p=339#comment-1385</guid>
		<description>&lt;i&gt;If I were going to take one pedagogical myth to task in this thread, it would be the &quot;adding pictures makes it easier for non-techies&quot; myth - this isn&#039;t Fun with Dick and Jane we&#039;re trying to learn and teach.&lt;/i&gt;



Nice strawman there, William. :)



No, just &quot;adding pictures&quot; would be absurd; it ameliorates nothing. On the other hand, things need to be approached differently, because some of the assumptions SICP makes about math and engineering backgrounds of its readers are simply false in our current context.



Take the calculus assignment in ch. 2, where students write a pattern-matching system that takes an equation and performs symbolic differentiation. Or, for that matter, the analog circuit simulator from ch. 3, which is really just an excuse to introduce streams (they&#039;re like wires :), and delayed evaluation. They&#039;re fun assignments, but unnecessarily difficult for those who never took basic engineering courses. There&#039;s no reason to make Calculus I and Intro to Circuits into prerequisites for teaching pattern matching and streams.</description>
		<content:encoded><![CDATA[<p><i>If I were going to take one pedagogical myth to task in this thread, it would be the &#8220;adding pictures makes it easier for non-techies&#8221; myth &#8211; this isn&#8217;t Fun with Dick and Jane we&#8217;re trying to learn and teach.</i></p>
<p>Nice strawman there, William. :)</p>
<p>No, just &#8220;adding pictures&#8221; would be absurd; it ameliorates nothing. On the other hand, things need to be approached differently, because some of the assumptions SICP makes about math and engineering backgrounds of its readers are simply false in our current context.</p>
<p>Take the calculus assignment in ch. 2, where students write a pattern-matching system that takes an equation and performs symbolic differentiation. Or, for that matter, the analog circuit simulator from ch. 3, which is really just an excuse to introduce streams (they&#8217;re like wires :), and delayed evaluation. They&#8217;re fun assignments, but unnecessarily difficult for those who never took basic engineering courses. There&#8217;s no reason to make Calculus I and Intro to Circuits into prerequisites for teaching pattern matching and streams.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: B. Rickman</title>
		<link>http://grandtextauto.org/2004/06/02/procedural-literacy-an-idea-whose-time-has-come-43-years-ago/comment-page-1/#comment-1386</link>
		<dc:creator>B. Rickman</dc:creator>
		<pubDate>Tue, 30 Nov 1999 00:00:00 +0000</pubDate>
		<guid isPermaLink="false">/?p=339#comment-1386</guid>
		<description>Michael: &lt;i&gt;&quot;Only through an understanding of programming and how computers really operate could someone gain a deep understanding of the similarities and differences between human experience and computation.&quot;&lt;/i&gt;



I think there is danger in the promotion of procedural literacy for its own sake. Yes, people should study these things in order to contrast experience and computation, but unless you make that the explicit goal -- the contrast, the critique -- you end up with procedural literacy for its own sake.



So, speaking as a reactionary, I&#039;m not sure that computers should ever be allowed into the classroom, because their presence clouds the issue of what should be taught -- an understanding of processes versus skills to make the computer do cool stuff. Only when there are technical goals for a course should you need students to sit at a computer, and that time should not be considered as instructional time.



Which opens up the question: how can procedural literacy be presented without a computer? There are plenty of ways to present mechanical computation without a CRT, but they have become neglected.</description>
		<content:encoded><![CDATA[<p>Michael: <i>&#8220;Only through an understanding of programming and how computers really operate could someone gain a deep understanding of the similarities and differences between human experience and computation.&#8221;</i></p>
<p>I think there is danger in the promotion of procedural literacy for its own sake. Yes, people should study these things in order to contrast experience and computation, but unless you make that the explicit goal &#8212; the contrast, the critique &#8212; you end up with procedural literacy for its own sake.</p>
<p>So, speaking as a reactionary, I&#8217;m not sure that computers should ever be allowed into the classroom, because their presence clouds the issue of what should be taught &#8212; an understanding of processes versus skills to make the computer do cool stuff. Only when there are technical goals for a course should you need students to sit at a computer, and that time should not be considered as instructional time.</p>
<p>Which opens up the question: how can procedural literacy be presented without a computer? There are plenty of ways to present mechanical computation without a CRT, but they have become neglected.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Hideous Pursuit</title>
		<link>http://grandtextauto.org/2004/06/02/procedural-literacy-an-idea-whose-time-has-come-43-years-ago/comment-page-1/#comment-1387</link>
		<dc:creator>Hideous Pursuit</dc:creator>
		<pubDate>Tue, 30 Nov 1999 00:00:00 +0000</pubDate>
		<guid isPermaLink="false">/?p=339#comment-1387</guid>
		<description>&lt;trackback /&gt;&lt;strong&gt;ProcLit, ResearchArt, ZigBee&lt;/strong&gt;
Procedural Literacy Is Your Art Research? ZigBee article...
</description>
		<content:encoded><![CDATA[<trackback /><strong>ProcLit, ResearchArt, ZigBee</strong><br />
Procedural Literacy Is Your Art Research? ZigBee article&#8230;</p>
]]></content:encoded>
	</item>
</channel>
</rss>
