Archive

More on Sharing

Neil Gaiman made an excellent post the other day that covered, among other things, the effect of sharing on book sales. Entitled More on Free and Suchlike, he responds to a bookseller that accuses him of harming independent booksellers by giving away a book for free online:

The books you sell have “pass-along” rates. They get bought by one person. Then they get passed along to other people. The other people find an author they like, or they don’t.

When they do, some of them may come in to your book store and buy some paperback backlist titles, or buy the book they read and liked so that they can read it again. You want this to happen.

Go read the full thing, it’s really excellent.

He’s got a good follow-up post today too (Born Free), about a program that’s part of World Book Day in the UK and Ireland. As part of World Book Day, £1 book tokens are being distributed to schoolchildren across the UK and Ireland, and a bunch of “World Book Day £1″ books are being published specifically for the occasion. It’s a wonderful promotion, and I encourage everyone go to read his post (from which all of the information in this paragraph is shamelessly lifted) to find out more.

On the Need for a Good Computer Science History Course

Software developers spend most of our time re-inventing the wheel. Everyone who works with computer types has run into the “not invented here” and “I can do it better” mentalities, or fallen victim to them themselves. But I think this goes beyond that. Software developers seem, to me, to be wilfully ignorant of past work. Not only do we not know about it, we don’t want to know about it!

Mark Dominus demonstrates one example of this while examining the whole “Design Patterns” mess. The “Design Pattern” movement seems to be unconsciously based on this ignorance of history, through an assumption that modern programming languages are the be-all and end-all of programming languages, and always have been. As Dominus puts it:

If these problems recurred in every language, we might conclude that they were endemic to programming itself. We might not, but it’s hard to say, since if there are any such problems, they have not yet been brought to my attention. Every pattern discovered so far seems to be specific to only a small subset of the world’s languages.

Some awareness of the history of programming languages might produce a slightly greater awareness of the trends Dominus identifies in the history of programming language development. It might help us avoid re-treading the same ground over and over while claiming that we’re exploring new territory. Perhaps we could even focus our attentions on the areas of language development that actually need work?

Another excellent example is this recent article on Internet software patents by Philip Greenspun, who correctly identifies that most modern software “innovation” is rehashing the work of early pioneers. We’re just scaling that work in obvious ways to take advantage of increased system capacity, or making half-cooked implementations of ideas that these pioneers devised in a much more robust form but were unable to follow through with.

Looking back on my computer science degrees, I’m honestly confused about why there wasn’t more history taught. We got a lot of algorithms, mathematics, and mainstream languages (C, C++, Java) thrown at us, but very little history of or context for the things we were learning. Except for Dr. Grundke’s second-year assembly language course and Dr. Cox’s third-year programming languages course, it wasn’t until fourth year courses or graduate work that historical matters were mentioned at all. And even then, no consideration was given to the implications of the history or its influence. It was written off as obsolete, interesting but largely irrelevant. Even in graduate courses, my experience shows a near-exclusive focus on recent history.

Yet Engelbart’s NLS did things that modern computer systems still can’t manage. Modern programming language and environment development seems to put a lot of sweat into developing poor copies of Smalltalk and LISP. Years of time are put into recreating things that our Internet protocols can already do, because the existing programs that implement these protocols don’t. I’m not saying these older solutions didn’t have their flaws, or that there haven’t been original new developments. But the history of these older technologies at least merits study, so we can focus on improving the things they did wrong and take advantage of the things they did right. Unfortunately, many of the students graduating from computer science programs (possibly the vast majority, including many graduate students!) are as completely unaware of this rich history as they are of modern developments.

This is particularly strange to me, because one of the big motivators for my interest in computers was Steven Levy’s Hackers. Levy’s examination of the early days of the computer movement was inspiring and educational. While non-technical, it provided some good examples of what does work (openness) and what doesn’t work (secrecy), which almost certainly shaped my interest in the Free Software movement. Towards the end of the book, he also inadvertently demonstrates the importance of historical awareness by following people who were sure that history was irrelevant. This lack of awareness doomed them to repeat their predecessors’ mistakes, eventually leading to the collapse of their movements, companies, and technology.

I also have to wonder how much influence the proprietary software movement’s had on this mentality. When your ideal model of software development is behind closed doors, you have to pretend that there’s no need for awareness of other technologies, much less awareness of how they work. If you recognize that reading, working with, and building on notable programs and technology written by others  is valuable, the claim that software innovation requires absolute secrecy starts to look a little shaky.

TLDR: what I want to see is a required course - possibly even a full-year course! - on the history of computing. A proper history course, one that critically examines the causes and effects of events, their influence, and forces the students to become aware of these historical pioneers and the technology they developed. Teach them what it did and what it didn’t do. Heck, if it’s feasible, make them use it a little.

The Long Tail and Sharing

Over the holidays, I was talking about the Amazon Kindle with a friend of mine who’s working on a graduate program in writing and publishing. She and I are both avid readers, but our tastes tend towards things that are fairly obscure, even within the already-obscure genres of science fiction and fantasy. The books we’re interested in are pretty far down what has come to be known as the Long Tail.

The benefits of Internet distribution and exposure to products in the long tail are fairly well-known. A little while back, TorrentFreak had an article about Paulo Coelho, who’s managed to boost sales of foreign translations of his book spectacularly by providing free access online. The Baen Free Library is another great example, as are Girl Genius and Nothing Better. Tor has recently started offering weekly free un-DRM’d PDF downloads of books from their catalogue.

I’m going to focus on something else specifically: sharing. I like talking with friends about entertainment I’ve enjoyed, particularly books. Going over the plot, appreciating pivotal moments, examining our favourite characters, and nerding out over technique is a lot of fun. This is pretty hard to do if they haven’t read the books in question. One can always try to meet people who’ve read the same books, and online discussion groups are great for that, but it’s still not quite the same. So for a while now, I’ve been sharing books with my friends. Obscure stuff, stuff that they wouldn’t normally have read, or would’ve had a hard time finding in a bookstore even if they had wanted to.

Of course, most of them just read the book and go “Yeah, that was nifty”, and we talk about it a bit and that’s that. But for some of them - usually others with “long tail” interests, particularly others that also share - it translates into purchases. Either they buy a copy of the book that they’ve just read, or they buy the author’s next book, or they track down other books from that author and buy them.

I think this is interesting for three reasons:

  1. It’s the same kind of action as “normal” Long Tail Internet-enabled activity - making a product available to a potential customer for free, and seeing an eventual sale as a result. This isn’t anything new. What is new and different, and worthy of note, is that it isn’t the “owner”, the person who’s “allowed” to “give it away” by copyright law, doing the free redistribution. In practice, this is allowed either implicitly or explicitly by most (but not all) Long Tail creators, but I haven’t seen it get a lot of coverage, much less the kind of “front page” coverage “free official downloads” get. Yet I think it’s more important than “free official downloads”.
  2. A lot of digital content devices and services - the Amazon Kindle, Apple’s iPods and iTMS, Nintendo’s Wii, even Microsoft’s supposedly share-friendly Zune - go out of their way to prohibit or restrict user-to-user sharing. This is an unfortunately common attitude, even in places where the creators should know better (IE, webcomics), and I think it misses the entire point of the Long Tail. These creators are trying to give away power and keep it simultaneously, which, as any follower of the adventures of Miles Vorkosigan knows, you can’t do unless you’re dead.
  3. I think it’s a powerful sales driver, for the same reason word of mouth marketing is: the personal element. It’s not some random talking head or distant web site that’s recommending the book, it’s one of your friends.
  4. Discussing and analysing culture is an important cultural activity, particularly for creators. If a couple of creators (or aspiring creators, or even interested amateurs) can’t get together and pick apart a work, it’s going to be a lot harder for them to learn from that work. While this might be in the interest of control-obsessed publishers and distributors, it’s most certainly not in the best interests of creators or the public. With a culture that’s moving farther and farther down the Long Tail, sharing becomes an important prerequisite to this discussion and analysis.
  5. It’s not even fair use. Sharing of a book falls under the Doctrine of First Sale. I’ve paid for your book, I have a right to lend it to friends. More often than not, modern digital content technology tries to take away this right. I wouldn’t be surprised if most people were even aware that it is a right. But it is, and we should be doing our best to defend it.

So, in closing, sharing is good for creators, good for audiences, and even good for publishers (more sales!) and should be promoted and encouraged. Most digital content methods are doing their best to prevent it and eliminate it, which is exactly the wrong approach. The people developing these devices, applications, and services that handle digital content should be making sharing content easier, making paying for shared content easier, and do their best to find and promote creators that recognize the strength of sharing.

Digidesign Digi 002 Hardware Flaw

Public Service Announcement: I ran into this flaw when trying to help Jack and Shannon do some recording for their podcast radio plays. It’s apparently well-known, but you have to fiddle a bit with Google to get it to tell you about the problem, since no-one who’s posted about the solution has included verbatim error messages.

The problem appears to be that the power harness used in the Digi 002 is defective. (References: here and here). DigiDesigns will replace the harness for free, but the user has to install it themselves. This isn’t particularly tricky, since they send you complete and easy-to-follow instructions. The tricky part is working out what’s wrong, since there’s no sensible error messages from their software and no clear indication of a hardware error. Even worse, the hardware error is often intermittent, seeming to go away for long periods before returning.

Hardware Symptoms:

  • When the IEEE1394 interface cable is connected, the green link light (on the back of the case, right between the IEEE1394 ports) briefly turns on then immediately turns off again.
  • The Mute light on the front of the case remains lit. No other lights are on. The device is unresponsive.
  • When attempting to establish a connection, the link light blinks on, a click is heard, then the light immediately turns off again. This repeats several times.

Software Symptoms:

  • When starting ProTools LE, the following error message is seen: “Unable to locate Digidesign hardware. Make sure your hardware is connected and turned on. Click “Ok” when the hardware is ready.”

Getting a Replacement Part:

The replacement part is user-serviceable. Call the technical support line (free if you’re under warranty, $3/minute up to $75 or so if you’re not) and describe the problem to them. They should e-mail you a waiver of liability for the user-installed parts. Once you read and agree to that, they’ll mail you a replacement part and instructions for installing it. The part should arrive inside of a week.

Hopefully, this post will be useful to anyone else who runs into this problem.

Sexism and the Third Place

Based on the advice of Gavin and the encouragement of Danielle, I’ve been reading The Great Good Place. For the most part, it’s an excellent examination of the disappearance of avenues for casual socialization from modern culture. Except for one thing. Sexism.

Oldenburg places part of the blame on the disappearance of the third place on feminism. While he doesn’t say so directly, he devotes an entire chapter (ironically titled “The Sexes and the Third Place”) to waxing loquacious about traditional male bonding rituals and men’s places, and indirectly condemning feminism and the idea that men and women should associate freely for the disappearance of “third places”. He devotes considerable time to praising the traditional institution of marriage, and men’s third places as an escape from the demands of the work of their second places and the domineering women of their first places. Women, when they’re mentioned at all, are described as “stealing” the traditional male bonding experience for their sisterhood while conspiring to keep men emotionally dependent on them to secure their marriages.

Oldenburg, unfortunately, misses several vital points here, which I’ll deal with in turn behind the fold. Overall, Oldenburg prescribes more sexism as the cure for problems caused by sexism, which is entirely hypocritical as he condemns this very approach in other domains.
Continue reading ‘Sexism and the Third Place’

Screensaver Activation Key/Screen Lock Key for Mac OS X

One of the oddities of my computer use style is that I don’t like to have my system go into screensaver or lock automatically very quickly. When I leave the keyboard, I like to be able to activate the screensaver/lock manually. Since I’m also not a fan of active screen corners, I want to be able to do so by keystroke.

Annoyingly, OS X doesn’t let me bind a key to activate the screensaver. There used to be a couple utilities that enabled this, but they haven’t been updated since 10.3. The screensaver engine itself is an application, but we still need a convenient way to activate it. Enter Quicksilver. Quicksilver’s Triggers let us bind Quicksilver actions (including, conveniently, opening Applications) to keypresses.

So, to create a key to activate your screensaver or lock your system with Quicksilver, follow these simple steps:

  1. Create a Quicksilver trigger to open the screensaver engine. The engine is /System/Library/Frameworks/ScreenSaver.framework/
    Versions/A/Resources/ScreenSaverEngine.app
  2. Quicksilver Screensaver Key Trigger

  3. Bring up the Trigger’s info pane.
  4. Set a key shortcut for the trigger. The combination of options I’ve got selected mean that the trigger only goes off if I hold the keys down for three seconds, and Quicksilver brings up a display window to let me know that I’m activating a trigger. Very handy! (Due to what I think is a Quicksilver/Leopard bug, the hotkey field is incomplete. Mine’s set to cmd-alt-ctrl-L)
  5. Info on the QuickSilver Screensaver Activation Trigger

  6. Enjoy!

First Post

This is what used to be Runes There. It’s still the personal homepage of Nick Pilon, but I’ve reorganized it into a blog instead of a boring old static webpage. Thanks again to Gavin Carothers, who did the cool banner image up at the top and handled the heavy lifting of getting WordPress installed and set up.