With a book, there are two important people involved: the writer and the reader. The writer has a concept which they communicate to the reader through words. The reader than turns the words back into the concept. With books, we can always see the words — by their nature, they can’t be hidden and cause the same effect.
Software is different. The programmer wants to do something, so he puts together a bunch of instructructions (source code) to do it. But then he compiles the source. The source code is compressed in a way that the computer will continue to do the same thing but humans can’t understand. It’s a difficult concept to describe and I can’t think of a good analogy but it’s important to understand that while you still get the same experience when running the program, you can’t look at the instructions that create that experience. It’s like the sealed toasters: they still work, but you can’t see inside.
Lessig is arguing that we should be allowed to see inside, that it’s important to see the instructions that make the computer do what they do. Dave contends that what’s really important is the experience that’s created because the same experience can always be rebuilt with different code.
As with all copyright questions, the thing that should be driving our analysis is what benefits the public most. It’s clear that the public will get some benefit from being able to see the source code:
- We can learn the algorithms and concepts that power the tools we use. How does my email program do searches so fast? There’s really no way for me to find out without the source code.
- We can copy and modify the software once it falls into the public domain. If the source is never made public, even though we technically have these rights they are useless because no one has the source code to take advantage of them.
- We can make modifications ourselves (or attempts at them) and send them to the programmers for integration with the next version. Without the source code, if we want a feature added or a bug fixed, we’re at the whims of the developers who may not have the same priorities as we do.
- We can see undocumented APIs and hooks. One issue in the Microsoft case is that Windows alledgedly had “hooks” in the operating system that only Microsoft developers were told about. This means that Microsoft developers could make better and more functional programs, because they could take advantage of features no one else could. With source code, we can see all the hooks and integration is much easier.
So what are the downsides of making source code available? This is the case I think Dave needs to make. Off the top of my head, I can’t think of any serious ones.
posted August 21, 2002 01:56 PM (Technology) #