"Hear Me Out"--Free Radio Linux

[Flor's essay is written for r a d I o q u a l i a's "Free Radio Linux,"
which was commissioned by Gallery9/Walker Art Center and is presented as
part of Open_Source_Art_Hack.
http://www.netartcommons.org/article.pl?sid=02/05/12/038213&mode=thread
http://radioqualia.va.com.au/freeradiolinux/
German version at http://crossfade.walkerart.org]

+ + +

Hear me out
Free Radio Linux broadcasts the Linux sources on air and online
Micz Flor

Every community deserves a radio. And every community gets the station
it deserves. "Free Radio Linux"[1] is a new station on the map, catering
to a number of contemporary interest groups, such as the free software
advocates, the net.radio digerati, the Open Source community and the new-
media art crowd.

In a unique blend of contemporary academic and legal debates as well as
technological possibilities, "Free Radio Linux" is formulating questions
to do with the relation of language and code, technology and art, the
history of community radio and computers, as well as the battle of
freedom of speech and copyright protection. And how is it doing it?
Simply by reading thousands of lines of source code on the air and on
the web.

In "Free Radio Linux", the entire source code of the Linux kernel[2]
will be webcast over the Internet. A speech synthesizer will convert
into talk radio the 4,141,432 lines of code, which will take about 600
days[3] to read. From a London flat, the sonic entrepreneurs behind the
project–r a d i o q u a l i a–will feed the computer voice via
a standard cable connection to the streaming media server Montevideo in
Amsterdam, from where it will be made available to whoever wants to
listen in.[4]

On its first day of webcasting, February 3, 2002 (the fourth anniversary
of the term Open Source), "Free Radio Linux" proved to hit a nerve. With
more than 300,000 visitors on the first day, the server delivered one
gigabyte of data to listeners; this refers to the text only and excludes
the audio stream. On the same day, two more servers offered to mirror
the stream, which is lucky as it would be hard for one server alone to
cope with this level of popular demand.

"I don't think the chief virtue of a language is beauty"[5]

This spectacular reception of the new community station on the block is
all the more surprising given that listening to the "spectacle" itself
turns out to be a rather sobering experience. Semantic entities such as
"struct sigframe underscore ia32"[6] really do not appeal to a wide
audience. In fact, it is hard to believe they would appeal even to the
core of the Linux developers community.

But "Free Radio Linux" is out there to be heard. And it is not even
limited to the Net alone. Various smaller and independent–let's say
experimental–stations decided to pick up parts of the audio stream and
rebroadcast the voice over their local radio frequencies.[7] Which is
fair enough, given the kind of programs you receive these days to fill
the void of the signal, featuring loops of anything from open fireplaces
to live satellite images, aquariums, cameras mounted on trains, webcams
from around the world, and so on.

Why listen to thousands and thousands of lines of computer code? It is a
reasonable question. A reasonable answer would be to decide only after
having listened to them. Reading out the sources adds an aesthetic
quality to the code that it obviously was not intended to possess in the
first place. The code was, after all, meant to be configured and
compiled into a binary format that can run on certain computers. But in
"Free Radio Linux" the code is shifted away from this context and
introduced into another universe altogether: radio. By stressing the
fact that code is a human invention and does have language-like
features, "Free Radio Linux" foregrounds an aesthetic quality of the
code that has been hidden inside its rule set.

The strategy of dislocating a set of rules or categories from their
initial purpose and implementing them in another context is an
interesting conceptual tool. Creating a different sensual experience by
forcing this shift has been used in various forms. Early examples of
this mechanism would be Bach's use of the notes B-A-C-H in his work–
widely applauded by mathematicians and programmers alike–or Mozart's
use of the notes C-A-F-F-E-E in a children's song on coffee, which is
widely criticized by cultural theorists, but for different reasons.

To use computer code as a set of rules for a similar purpose is to play
in the same league. Code itself is a human creation and far from random.
In fact, programmers do speak of beautiful code, even though this would
usually refer to the creative usage of the code's rules to achieve a
certain aim.

But programming languages and the aesthetics of digital systems have had
an immense influence on contemporary poetics, music, and writing.
Net.art projects such as jodi.org[8] illustrate how this influence can
develop into its own aesthetic. "Free Radio Linux" places itself in
proximity to such projects, specifically referring to net.artist Vuk
Cosic,[9] who was essential in establishing ASCII art as a genre when he
converted the porn movie Deep Throat frame by frame into ASCII images,
to be reassembled into a movie.[10]

Besides the clear influence of computer aesthetics and code on cultural
production[11], the attraction of the "Free Radio Linux" project lies
more in the cultural currency surrounding Linux and the Open Source
movement today. The language being read out does not appeal as such, but
stands for a wider context that has entered the cultural mainstream. In
connection to another Open Source project, Larry Wall, linguist and
creator of the programming language Perl, has summarized this
connection: A language is not a set of syntax rules. It is not just a
set of semantics. It's the entire culture surrounding the language
itself. So part of the cultural context in which you analyze a language
includes all the personalities and people involved–how everybody sees
the language, how they propagate the language to other people, how it
gets taught, the attitudes of people who are helping each other learn
the language–all of this goes into the pot of context.[12] "the memory
management can be a bitch"[13]

Listening to the "Free Radio Linux" audio stream can be a tiring
experience. At irregular intervals, however, the monotonous flow of
commands, variables, and punctuation is interrupted by coherent
sentences. Such little passages are usually preempted by "slash
asterisk" and constitute comments that are written inside the code to
make it easier for other programmers to understand what the code is
actually intended to do–and are a good example of the cultural context
surrounding the programming languages Wall describes.

Comments placed inside source code vary in degrees of directness and
intention. "Fork is rather simple, once you get the hang of it, but the
memory management can be a bitch" is a concrete statement in the fork.c
code, apparently written by Linux creator Linus Torvalds himself. On the
other hand, this statement from ia32_support.c really excites only the
in-crowd: "We never change the TSS and LDT descriptors, so we can share
them across all CPUs."

To this extent, reading source code out line by line, "Free Radio Linux"
manages to achieve something that could not be achieved in any other
way: The audio stream makes audible the silent comments that developers
wrote in to communicate among each other. These are discussions and
experiences living within the code that would never see the light of day
if not read out loud.

"the good ol' days when I was recording ZX Spectrum games played on
radio"[14]

Besides the aesthetic pleasure of listening to nearly two years of Linux
code on the radio, transmitting code over radio broadcasts can also
serve as a different way of distributing software. And if it can be
done, it usually has been–as is the case here.

In the late seventies and early eighties, pirate broadcasters would
exploit the fact that in the early days many computers would store and
retrieve code by using audiotapes. The ZX Spectrum is probably the most
popular home computer using this technology. Broadcasting such an audio
signal allowed listeners to tape the software and load it into their
computers. Systems employing different ways of storing data would
require special software to modulate it into audio signals, which would
then be demodulated by the users at the receiving end.

One of the first stations to broadcast computer code was the Dutch
station NOS in 1979-80. In its program Hobbyscoop[15], the station would
deliver software for specific computers whose storage methods were
acoustic.[16] In the United Kingdom, Radio West in Bristol and Radio
Victory in Portsmouth were doing the same for their regional
communities. The idea was so successful that even the BBC decided to go
along with the idea and launched the Chip Shop[17] in the mid-
eighties.[18]

The limitations of early "code stations" can be boiled down to the fact
that each computer had its own way of translating source code into
audio. This generated an artificial distinction, as many computers were
using the same programming language (BASIC) and the source code itself
could in theory be used across a number of computers. To overcome the
obstacle, a specific program–Basicode[19]–was invented. It ran on many
platforms and made radio transmissions accessible to every computer
running it.[20]

To bring this little excursion back to "Free Radio Linux", the analogy
between audio streaming today and software over the air in the eighties
is based on a similar paradigm of reaching a variety of platforms with
one data stream.

The conversion of an audio signal into data requires a piece of software
similar in character to Basicode. Two widely known formats used on the
web are RealMedia and MP3, both of which are proprietary standards
(meaning that the actual code is owned by private companies).[21] For
its audio stream, "Free Radio Linux" uses the Open Source codec Ogg
Vorbis[22], which is an alternative audio format published under a
nonproprietary license. To the ordinary listener, this difference is not
audible. Given the fact that proprietary standards are not open,
however, they require the availability of a player if the data stream is
to be translated back into audible information. Using a proprietary
standard is not unlike locking away your belongings and trusting someone
with the key.[23] If such a private company went bust, all the content
available in its format would slowly become inaccessible.

Being in sync with the Open Source concept, today Ogg Vorbis might
therefore be the best candidate to assure the kind of interoperability
that Basicode offered in its day.

"why publish an entire book … of boring source code"[24]

Listening to thousands of boring lines of source code on "Free Radio
Linux" might be only a slightly less numbing experience than reading
thousands of boring lines of code in a book. In both cases, the medium
chosen to carry the text seems inadequate.

But shifting the context alters more than the code's aesthetic quality.
Putting code on air stresses the fact that we are dealing with language
after all. Software is not merely a combination of tools on a hard disk;
software is language, an assumption with legal consequences.

Over the past years, a great deal of juridical effort has been spent on
establishing a clear distinction between "language" and "code." The mere
fact that the U.S. legal system might dedicate its attention to such a
linguistic discourse indicates a serious political and economic interest
in the issue.

The political dimension becomes instantly apparent when taking a closer
look at the code that triggered a previous legal battle. This was Pretty
Good Privacy (PGP), a powerful encryption software that allows secure
communication for anyone on the Internet, without any third party
intercepting, not even the government of the United States.

In June 1991, Philip Zimmermann's encryption software PGP was made
publicly available as freeware on the Internet. As the name suggests,
Pretty Good Privacy was developed to secure privacy in digital networks,
which the software's author believed to be a fundamental right.[25]

Needless to say so shortly after the Gulf War, the U.S. government had
other plans. In 1991, the Senate was discussing Bill 266, which had been
designed to force manufacturers of secure communications to provide a
hidden access point, a back door, by which the federal government could
retrieve plain-text versions of encrypted messages.[26] As it was
becoming clear that this might be the reality of the Internet in the
near future, Zimmermann decided to act and publish the software before
it was too late.[27] Soon afterward, he became the target of a criminal
investigation by the U.S. Customs Service.

The case against publishing PGP on the Internet was based largely on the
notion that PGP's potential global availability constituted a security
threat. Exporting strong encryption software was similar to exporting
munitions, it was decided under the International Traffic in Arms
Regulations. Since the main accusation against Zimmermann was based on
this notion of international export, PGP developers looked into ways of
distributing the source code across borders legally.

To cut a long story short: The source code was printed by the
respectable institution MIT under the title PGP: Source Code and
Internals. It was published in March 1995, priced at $55 and with the
ISBN 0-262-24039-4. The book is out of print today, which does not
matter much as the only relevant delivery of the book was to the
University of Oslo.

The font used is also capable of being scanned by computer scanners. If
the source code were scanned in and then run through a compiler program,
it would be translated into an executable application or object code,
which could then be read and executed by a computer to encrypt text and
binary files.[28]

With a small tweak in the medium by which the source code was delivered,
the legal framework prohibiting its use had become unhinged. It was no
longer the "weapon" it had represented in digital form–merely language
in a book. Needless to say, the program was successfully compiled at the
receiver's end. And nearly a year later in January 1996, the case
against Zimmermann was dropped.

"is there a point in distinguishing between source code and English
prose"[29]

The relation between code and language is not resolved yet. In fact, it
is again being debated in and outside the U.S. courts in relation to a
short piece of code published under the name of DeCSS, which effectively
undermines DVDs' copyright protection. DeCSS means that playing DVDs
does not require any customized hard- or software solution. Instead,
they can be viewed on any machine using the DeCSS code.

The case against those who developed and/or published the DeCSS program
and source code still continues today. One of the remaining questions,
since the case against Zimmermann, is to what extent source code is
protected by the First Amendment to the U.S. Constitution. In other
words: Is code speech?

Listening to "Free Radio Linux", which runs by virtue of speech
synthesis, it seems to be speech after all. Still, it is clear that its
4,141,432 lines of code could in theory be translated back into the
code's digital form and compiled into the kernel. Similarly, this could
be done using scanned versions of Zimmermann's book.

In both the Linux kernel and PGP source code cases, we are dealing with
a large amount of data. In contrast, the DeCSS program is rather short.
(In fact, it is short enough to be printed on T-shirts30 that one can
buy to support the legal defense of the accused in the DeCSS case.[31])
Because it contains only a few lines of code, several versions have been
developed in various languages.[32] This diversification–T-shirts on
one side, clones and translations on the other–attempts to point out
the absurdity of a situation in which source code can be legally
differentiated from other forms of written expression. In fact, the
algorithm protecting the DVD content from "unauthorized" use could even
be described in plain English in an essay. Based on the description, a
programmer could conceivably develop the DeCSS code without ever having
seen the source code itself.

In an interesting attempt to blur the distinction even further, Jonathan
Baccash coded the software BabelBuster, which translates C code to some
form of colloquial English and back again without losing the information
contained in the code. One simple line of C code, "main ()," would
translate into the more poetic phrase "Let main be a function returning
an integer. It is called with no arguments."[33]

As the discussion unfolds and the lobbying interests of the
multinational entertainment industries become both transparent and
vicious, "Free Radio Linux" will continue blurting out source code for a
year to come.

"can we submit bug reports to the radio station now?"[34]

The bizarre reality is that "Free Radio Linux" marks a specific point in
time in which issues to do with Open Source, Linux, software licensing,
copyright protection, and streaming media are being debated in the
mainstream, while the project itself demands stamina to be followed
until its completion in late 2003.

In the initial postings on the Slashdot website, this schizophrenic
aspect became an issue, with users asking if the station would provide
updates if the kernel changed in the meantime.

Looking at "Free Radio Linux" from a conceptual point of view, it seems
adequate to continue broadcasting a code freeze of the day transmission
started and carry it all the way. It might remind its listeners of the
open legal disputes and multinational lobbying occurring when the
project was launched.

Looking at "Free Radio Linux" from a pragmatic point of view, another
posting on Slashdot suggested that something useful is finally leaving
this planet in the form of radio transmissions. Intelligent alien life
forms could receive a stable version of the Linux kernel. What a success
for the Linux community and what an audience for grassroots media!

Micz Flor works with and writes on new media. http://mi.cz

1. "Free Radio Linux" http://radioqualia.va.com.au/freeradiolinux/

2. Kernel meaning the part of the operating software Linux on top of
which all other applications run. "Free Radio Linux" is webcasting Linux
kernel 2.4.18 from http://www.kernel.org.

3. 14,253.43 hours, or 593.89 days, to be precise. See the readme file
on the site.

4. Live audio link of "Free Radio Linux".
http://www.xs4all.nl/~qualia/freeradiolinux/playlist.m3u

5. Larry Wall, creator of the Perl programming language, on computer
code and linguistics:
http://www.ddj.com/documents/s=923/ddj9802a/9802a.htm

6. A small extract from the code at linux/arch/ia64/ia32/ia32_signal.c

7. Find a list of some of the rebroadcasters at
http://www.xs4all.nl/~qualia/freeradiolinux/cron.html

8. jodi http://www.jodi.org

9. Vuk Cosic, "ascii history of art for the blind"
http://www.ljudmila.org/~vuk/ascii/blind/

10. Vuk Cosic, "Deep ASCII." http://www1.zkm.de/~wvdc/ascii/java/. See
more of his work at http://www.ljudmila.org/~vuk/.

11. For a good introduction to the subject, see Florian Cramer's text
"Digital Code and Literary Text" at
http://beehive.temporalimage.com/content_apps43/app_d.html

12. Larry Wall, creator of the Perl programming language, on computer
code and linguistics:
http://www.ddj.com/documents/s=923/ddj9802a/9802a.htm

13. Comment taken from fork.c of the Linux kernel

14. Posting by Shiny Metal S. on Sunday, February 3, 2002, on Slashdot:
http://slashdot.org/

15. For a brief introduction, dust down your Dutch:
http://www.hobbyscoop.nl/NOStalgie.htm

16. Such computers would include TRS-80, Commodore PET, Apple II, Exidy
Sorcerer

17. Find more information on the Chip Shop history:
http://www.sincuser.f9.co.uk/024/news.htm

18. When exactly the first BBC software broadcast happened is hard to
research: http://www.users.globalnet.co.uk/~jimg/yr09/yr09_03.htm

19. More information on the history of Basicode:
http://www.xs4all.nl/~lennartb/basicode.html

20. The Basicode software is still available today:
http://www.void.jump.org/utils/b.html

21. For a detailed discussion see
http://mi.cz/txt/crosscodeccompatibility.htm

22. More on the Ogg Vorbis format: http://www.vorbis.com/

23. This comparison was brought up by Adam Hyde in preparation for this
article.

24. Philip Zimmermann's preface to the book PGP: Source Code and
Internals: http://www.philzimmermann.com/essays-preface.shtml

25. The International PGP Home Page http://www.pgpi.org

26. Introduction to PGP encryption
http://www.lugod.org/presentations/pgp/history.html

27. Philip Zimmermann's preface to the book PGP: Source Code and
Internals: http://www.philzimmermann.com/essays-preface.shtml

28. Declaration of Philip R. Zimmermann in support of plaintiffs'
opposition to defendants' motion to dismiss:
http://people.qualcomm.com/karn/export/zimm.html

29. Jonathan Baccash: BabelBuster–C to English to C Translator:
http://www-2.cs.cmu.edu/~dst/DeCSS/Baccash/

30. Copyleft DeCSS T-shirt:
http://www.copyleft.net/item.phtml?dynamic=1&referer=%2F&page=product_27
6_fr ont.phtml

31. Wired News on DeCSS T-shirts:
http://www.wired.com/news/technology/0,1282,37941,00.html

32. Gallery of CSS Descramblers: http://www-
2.cs.cmu.edu/~dst/DeCSS/Gallery/index.html

33. BabelBuster example: http://www-
2.cs.cmu.edu/~dst/DeCSS/Baccash/example1.e

34. Posting by mESSDan on Sunday, February 3, 2002, on Slashdot.:
http://slashdot.org/ 7 of 7

"Hear me" by Micz Flor is first published May 2002 for r a d i o q u a l
i a's ""Free Radio Linux"," which was commissioned by Gallery 9/Walker
Art Center with the support of the Jerome Foundation. All rights
reserved to the author.

http://gallery9.walkerart.org/radioqualia/
http://netartcommons.walkerart.org/article.pl?sid=02/05/12/038213&mode=t
hread
German version at http://crossfade.walkerart.org/

Crossfade is a joint project of San Francisco Museum of Modern Art,
Walker Art Center, and ZKM with support from the Goethe Institute