Programming: The New Literacy

Marc Prensky has a interesting article recently published in Edutopia magazine entitled “Programming: The New Literacy.”

I believe the single skill that will, above all others, distinguish a literate person is programming literacy, the ability to make digital technology do whatever, within the possible one wants it to do — to bend digital technology to one’s needs, purposes, and will, just as in the present we bend words and images. Some call this skill human-machine interaction; some call it procedural literacy. Others just call it programming.

I have to say I agree, and other scholars in ed tech and even traditional instructional design (like Dave Merrill) are now arguing that all students in educational technology need to learn how to program.

The problem is, what are our current options? Flash is quite difficult for novices to learn, plus even the academic version costs hundreds of dollars. It is also proprietary. Java is free, cross-platform, and recently open sourced, yet even more difficult to use than Flash. Visual Basic .NET is more beginner friendly, yet still quite complex and not cross-platform. There is a free, open source VB.NET compiler, but you cannot use it to develop cross-platform applications that run in a browser like you can with Flash and Java (applets).

On the flip side, programming languages and development environments that ARE designed with kids and novices in mind (like Scratch, Logo, etc.) cannot be used for general purpose development. You can’t develop a chat application or fast 3D game in Scratch, for example.

For a related story from a year and a half ago, see this earlier post on “Why Johnny Can’t Code.”

Posted in edtech, opensource, programming, research
6 comments on “Programming: The New Literacy
  1. Tom Hoffman says:

    Scratch is written in Squeak, which is Smalltalk. They could have exposed the Squeak roots more but chose not to. However, Squeak EToys are similar and do give you a more clear path to doing Smalltalk programming. OTOH, these layers can make Squeak/EToys more confusing, so ymmv. And you can do 3D games using Squeak or Croquet (built on Squeak).You write off Python far too quickly. It is as close as you’re going to get to a language widely used by professionals that is appropriate for teaching kids programming. And it is free, cross-platform, and still growing strongly.Both of the above are key parts of OLPC as well.

  2. Wendy says:

    I found HTML to be a good introduction to programming.Immediate feedback (you can quickly see whether what you did worked), fairly simple syntax. You can use HTML to also introduce configuration management, commenting, and other good coding practices. And introducing code libraries so they don’t have to code from scratch.From there, you can build with other, more advanced technologies (CSS, Javascript). Then move to things that require compilers.There is also the advantage of immediate use (ie. building a resource web page for your students).There’s not enough literacy in web development among programmers, much less among EdTech folks.Just one thought…..

  3. Doug Holton says:

    Yeah about python, I guess that’s why Mark Guzdial went with Jython for his multimedia computation courses: is a simpler language to learn and use than java/c++, plus it runs on the jvm, so it can run on the web (I think, I haven’t checked on that).

  4. Tony Forster says:

    “You can’t develop a chat application or fast 3D game in Scratch, for example.”But you can with Game Maker, see for samples of a 3D template and a networked multiplayer game.While having an iconic drag and drop interface like scratch, it has a powerful scripting language

  5. Brian says:

    I’ve found that there is no <>best<> way to become literate. I think python is a great first language but writing bash scripts, using fuctions and incorporating basic unix tools like sed and awk, gets you into thinking about composition and the use of libraries. I say use lots of languages. After a while you start to see that many of the concepts are the same (variables, functions, libraries) and it just becomes a matter of syntax (though functional programing has a different set of concepts.) The more languages you can read the better.I don’t feel the same about HTML and XML. There is a different kind of thinking going on. It’s not procedural (solving a problem), it’s all about structure. I guess there are similarities in that you’re trying to be as <>expressive<> as you can in the most concise and clear way. I don’t know if everybody can do this. People I know tell me that they “just don’t think that way”. At the present time I don’t see any other way but lot of people tell me that machines will have to learn how to do much more of the work.

  6. maria lorena says:

    I’m an EdTech major , I found your articles quite informative and enriching. Would it be ok if I link this page in Mindsay? I don’t have Blogger. Looking forward to more edtech newsLorenManila, Philippines

Comments are closed.


Enter your email address to follow this blog and receive notifications of new posts by email.

Join 4,346 other followers

%d bloggers like this: