Hacker News new | ask | show | jobs
by mkremins 4540 days ago
I think the point Bret Victor is trying to make is that what he perceives as the real value of programming (its use as a powerful extension of the programmer's cognitive abilities) is absent entirely from the perception of programming as an inherently good thing that code.org and related groups are pushing.

Programming is, and ought to be seen as, merely a means to an end – not an end in and of itself. A movement that gets programming into to schools by claiming code is itself a Good Thing will inevitably bring into existence a programming curriculum that ignores the important abstract stuff about coding-as-a-concept (the new ways in which computers can extend the mind) and focuses instead on the concrete "implementation details" of programming today (text files, the command line, and all that other baggage from 20 years ago with which programmers are still saddled).

Basically: the reasoning is important, the code isn't, and code.org is all about the code.

2 comments

> Programming is, and ought to be seen as, merely a means to an end – not an end in and of itself.

This is the essential piece I thought Bret made clear by highlighting the choice quotes from Seymour Papert.

Treating programming as a means to an end has very pragmatic ramifications for programming. It means we can question the value of our tools when they do not serve our goals. Otherwise we are the mercy of them (and entrench the status quo as state-of-the-art).

One question I've been grappling with is why it takes so many human-hours of work to produce conceptually simple programs.

Except that these quotes are also about coding as the mreasnsd to an end. The ends may not be as elevated, but employment, pride, security and such are powerfully motivating ends. I think its really amazing to think about the intellectual power of coding -- I think philosophy tends to pay more attention to physics and not enough to engineering -- but more immediate human goals are perfectly appropriate ones to serve as the ends for which learning to code is the means.