Is Programming The New High School Diploma?

Daniel Markham makes the case for incorporating programming into what we consider literacy in his post “Programming is the new High School Diploma”.

I’m not sure I’d go as far as he would, but this is not an idea to dismiss out of hand as quite a few folks did in a Metafilter thread I was following that led me to post the following:

Actually there are many, many folks circling in on the idea that programming *is* part of a new definition of literacy.

I believe people should have basic programming skills, in as much as they have basic writing skills.

NOT simply to ‘know how a computer works’. Programing is far more than the act of giving instructions to computers to do things.

The idea isn’t to create more programmers/software engineers/computer scientists, just as teaching writing isn’t done for the sole aim of creating more authors (although it more easily opens the door). Instead, programming should be taught as a means to explore science, health, social studies, history, and math. Just as reading and writing are. Instead of creating a book report, create an interactive story with visualizations. Maybe work with other students in its production.

Even the most rudimentary programming skills enable us to better communicate with one another, to tell stories, to create our own games, and to better participate in the networked world we live in.

New tools like MIT’s Scratch are coming along to make much of this possible. Check it out.

Related:

[ http://player.vimeo.com/video/36579366?byline=0 ]

Bret Victor – Inventing on Principle from CUSEC on Vimeo.

Posted in Coding, Software Engineering, Programming, Education | Tagged education, mit-scratch, programming | Leave a comment

Classics: “The Twelve Networking Truths” and “Fallacies of Distributed Computing”

Succinct and always worth a re-read: “RFC 1925: The Twelve Networking Truths” and “Fallacies of Distributed Computing”.

Posted in Coding, Software Engineering, Programming, Communications, Connection, the Internet, the Web, and Media | Tagged programming, texts | Leave a comment

Missing Doctor Who 2: What to Watch: The Caves of Androzani

Continuing my series of posts on what Doctor Who episodes to watch while it isn’t on the air, I give you “The Caves of Androzani”.

Voted the top Doctor Who episode ever by fans back in 2009, it is claustrophobic, fast paced, and leaves you wanting to know more about Peter Davidson’s Doctor. He is in way over his head, with villains who have complicated motives, that are more than one dimensional, in a life or death situation that is personal and not universe shaking. I think this may be the last episode featuring a Doctor that is ‘just another Time Lord’ and the stakes feel very high, without needing a story having the entire galaxy on the precipice along with him.

Posted in Movies, TV, Radio, Comics, Books | Tagged Doctor Who | Leave a comment

“The most creative spaces are those which hurl us together. It is the human friction that makes the sparks.”

Jonah Lehrer in the New Yorker lays out how Brainstorming exercises don’t add up to what we think, and shows us that diversity leads to more innovative ideas in “Groupthink: The Brainstroming Myth”:

The fatal misconception behind brainstorming is that there is a particular script we should all follow in group interactions. The lesson of Building 20 is that when the composition of the group is right—enough people with different perspectives running into one another in unpredictable ways—the group dynamic will take care of itself. All these errant discussions add up. In fact, they may even be the most essential part of the creative process. Although such conversations will occasionally be unpleasant—not everyone is always in the mood for small talk or criticism—that doesn’t mean that they can be avoided. The most creative spaces are those which hurl us together. It is the human friction that makes the sparks.

Read the whole thing.

Rebuttal: Scott Berkun: “In Defense of Brainstorming”.

Posted in Coding, Software Engineering, Programming | Tagged innovation, problem-solving, process, thinking | Leave a comment

An Introduction to Graphviz and dot – O’Reilly Media

O’Reilly Media posted a nice intro to Graphviz I recently re-read that reminded me how great a tool it is: “An Introduction to GraphViz and dot – O'Reilly Media”.

Related:

UMLGraph
PlantUML
Graphviz

Posted in Coding, Software Engineering, Programming | Leave a comment

Some Great Advice For Developers Joining A New Team

Rafe has a short writeup with terrific advice for a developer joining a new team: “rc3.org – How to make it as the new developer on a team”.

Posted in Coding, Software Engineering, Programming | Tagged career, process, teamwork | Leave a comment

developerWorks Tutorial: Parse XML with dom4j

IBM’s developerWorks has a nice write up on Parsing XML with dom4J and its XPath support: “Parse XML with dom4j”

Posted in Coding, Software Engineering, Programming | Leave a comment

Java 7 Makes Copy and Move Files and Directories Simpler

Java Code Geeks has a post that shares Java 7′s simplified file handling: “Java 7: Copy and Move Files and Directories – Java Code Geeks”

Posted in Coding, Software Engineering, Programming | Tagged Java | Leave a comment

Nurturing A Video Game Industry In Philadelphia

NewsWorks posted a story, back in December, on “Philadelphia Game Lab”, an organization I’m helping advise led by idea-machine Nathan Solomon whose energy and passion is infectious. Read it: NewsWorks: “Nurturing a nascent video game industry in Philadelphia — NewsWorks”.

Tonight there is a game scene event at Barcade.

Posted in Coding, Software Engineering, Programming, Education | Tagged Digital Divide, Philadelphia Game Lab | Leave a comment

Earlier This Month The Commodore 64 Turned 30

Cheap, accessible, it opened the doors for many children to their careers today and families had a lot of fun a long the way.

The six months I had one, and the time I spent with my friend Steve’s 64, left a long term impression on the course of my life.

reghardware: “The Commodore 64 is 30 • reghardware”

Posted in Coding, Software Engineering, Programming, Education | Tagged Commodore 64, Digital Divide | Leave a comment