ASCII_DNA
Eugene Thacker/Biotech Hobbyist
ASCII_DNA is a collaborative project between molecular biology and computer
science. Its central concept is the notion of "biomolecular writing."
ASCII stands for the American Standard Code for Information Interchange, and
it is commonly used for representing text on computers. DNA, of course, stands
for Deoxyribonucleic Acid, and is one of the primary biomolecules involved in
the functioning of the body at the molecular level.
For a number
of years molecular biologists have used metaphors from information theory and
cybernetics to talk about DNA as a "code" or as a "program."
ASCII_DNA is a project which attempts to utilize bioinformatics tools to fully
investigate this relationship between the body and information, DNA and computer
code, and the ways in which new techniques for "writing" can generate
new ways of understanding this relationship.
In the project, special Code Conversion Models (CCMs) will be devised to enable
the translation between code types: DNA, protein, and text. The ASCII_DNA project
will exist both as a website and as an installation. Users of the website will
be able to convert any text into a novel 3D protein structure. Likewise, users
of the website will also be able to take any DNA sequences from a database and
converted it into novel texts. The text files (ASCII) which are the result of
this process will hover between readability and unreadability, information and
noise, poetry and data. In the installation version of the project, the novel
proteins from the code conversions can be synthesized using standard lab techniques,
and DNA can be sequenced from volunteers in order to generate novel texts, a
situation in which the molecular bodies of volunteers will directly "write"
novel texts. The overall goal of the project is to raise questions regarding
the ways in which our notions of the body (such as DNA) and technologies (such
as the computer) are being transformed by field such as bioinformatics.
Some of the ASCII_DNA projects were included in Creative Biotechnology: A User's Manual, a Biotech Hobbyist project commissioned by the Wellcome Trust UK and Locus+.
ASCII_DNA Workbench:
Choose from the set of tools below. Each is a particular implementation of the ASCII_DNA concept, developed in collaboration with computer programmers.
"Biomolecular Writing in a Nutshell": A how-to document on how to make use of existing bioinformatics tools to generate your own poetic texts and proteins. This is not an O'Reilly book however.
Genebot {PC/MacOSX; in development}: Genebot is a Java applet which dynamically accesses genomic splice site data in order to cut, recombine, and paste any input text(s) into a novel text-collage. [Initial programming by Mahesh Balakrishnan.]
transcenDNA {PC/MacOSX}: This Java applet offers users several options for translating between DNA code, protein code, and a library of input texts. [Programming by Grant Schindler.]
Biotext utility {PC only}: This Java utility automates the process described in "Biomolecular Writing in a Nutshell" above. [Programming by Wen Tian.]
Lifecube {in dev; PC/MacOSX.3; needs Java SDK 1.4 and Java 3D}: This Java 3D project aims to use a-life (3D cellular automata) to generate novel molecular structures, in effect producing a "protein scrambler."
Instructions:
* After unzipping, type "java LivingUniverse" from the command prompt.
* Type "h" to display help text in command line window.
* Use cursor to rotate the grid.
* Type "i" to toggle grid on/off.
* Type "r" to randomly distribute atoms.
* Type "b" to toggle bonding on/off (default is on).
* Type space bar to advance the CA to the next generation.
* Type "g" to toggle growth mode on/off (default is on).
* Type "v" to clear grid.
* Type "a" to automatically advance the CA.
* Type "m" to perform molecular analysis.
The next step is to enable importing and explorting of standard PDB (Protein Data Bank) files. [Initial programming by Nat Ng.]
DNA crypto {PC/MacOSX/Unix; in dev}: Initial attempts to develop perl scripts which use DNA from online genomic databases for encryption. [Initial programming by Steve Hodges.]
+ more to come...
For more info contact Eugene Thacker.