And Speaking of JavaScript

Khan Academy has decided to make JavaScript it’s introductory language.

As I’ve said before, I think this makes a lot of sense.  JavaScript isn’t your typical language, I admit. Functions are first-class types; it’s prototypal, not object-oriented; it’s been much-maligned (and even by me).  My attitude about it has changed much in the past six years as I’ve been able to do real, interesting (and in production) things with it.

But more importantly, it reminds me of when I was 13 (thirty years ago) and our school got its first AppleII computer.  It had games (we played Oregon Trail, and Lemonade), but more importantly, built right into it at the command prompt was a BASIC interpreter. (Two of them, actually, AppleBASIC and IntegerBASIC.)  IBM PCs and their clones had GW BASIC or MS BASIC.   Commodore had it, Atari had it, I think TRS-80 had it, and my Time/Sinclair 1000 had it.  It was right there, on the chip in many cases, in the computer you were using.  There were no barriers — there were no IDEs either, but you could type

10 PRINT "Hello World"

And you were good to go.

Now of course, everyone with a modern computer — or even one not particularly modern — has a web browser, which for programming purposes is nothing but a JavaScript interpreter, sitting right there.  And if you’re running Chrome or have FireBug installed, you’ve got something I never had when I was poking around writing programs to solve quadratic equations — a full on, interactive debugger.

All those tools make working with JavaScript pretty reasonable, and the price is excellent.  There are no barriers, something we’ve missed for a while in programming education.  And I think, in the coming decades, being able to program a computer (even in limited ways) is part of computer literacy, something everyone needs to know.  So this is a great thing, and I completely get and support what Khan Academy is doing here.

A letter to my congresspeople.

Today I sent this to my two senators and representative in the US congress.


I am a constituent and I urge you to reject the Internet Blacklist Bills (PROTECT IP Act in the Senate and the Stop Online Piracy Act in the House). Yesterday, many sites went dark to protest these two bills, and many of you have surely heard from other constituents, such as myself, who oppose these bills on both political and technical grounds. I hope you will join me in opposing these bills which are poorly constructed and won’t have the actual effect that they purport to have, not to mention the chilling effect they will have on innovation and expression as a side of effect of their passage.

Perhaps you have already decided that this is the proper course of action after yesterday’s protest. If so, I applaud you, and warn you to be vigilant. Last year COICA was defeated because it has similar bad effects, and next year there will certainly be another bill attempting to stop online piracy, but which will almost certainly have a deleterious effect on ordinary citizens who are merely trying to share their ideas, experiences, and their culture.

You may feel that there is some way to write a bill which can somehow separate the two. However, I believe that no law will be able to do this: neither PIPA nor SOPA can achieve it, COICA couldn’t, and the DMCA certainly hasn’t worked. In fact, the DMCA has been routinely mis-used and mis-applied by those with more resources and power against those with less — even when those every day citizens were doing something that would be considered “fair use” or acting in ways that the IP holder condoned.

I am both a published writer, and a technical professional who has over twenty years of experience working with and on Internet technologies. Copyright has been an issue since the early Internet, and continues today, by virtue of the way the Internet and general purpose computers work. I’m typing this on a computer, and when I email it to you, every machine it touches — the machines which serve as mailboxes on both ends, and all the servers in between will make a copy of it before passing it on. Unlike a regular letter whose physical presence passes from mail box to mail truck to mail box, this letter will leave copies of itself everywhere.

I do this without thinking, and without pause. But any other form of digital copying is just as easy, given the right tools. Just as once I know a song I can sing it, once I’ve got an mp3 on my computer, I can copy it — and do, every time I play it. In order to circumvent this process of copying, you have to break the way the Internet works, and the way computers work. And that means breaking computers and the Internet, neither of which is a goal I think you desire.

The real problem here is that we are looking for solutions in the wrong place. Copyright was created in a time when copying was difficult, and only available to those with means. It was created in order to enrich our culture, and to reward those who choose to create and add to our culture. Today, however, copying is easy, and those very individuals who want to make use of their culture are being told that it is not possible, and is in fact illegal to participate in their culture. Copyright is working at odds to its intended purpose, and it is here that we must focus our efforts to enrich our culture and reward those who would make the works of art that add to our culture.

I am a technical person and a copyright holder, but not a legislator. I can see that there are problems, and can tell you what they are, but I don’t know how to fix the function of copyright. From where I sit, it doesn’t seem to work very well at all — and doesn’t perform its original purpose. Please oppose and continue to oppose these bills that break one of the best tools for freedom and expression in our modern times, and look for solutions to fix the real problem: intellectual property law.