The Art, Music And Computer Science Of DNA
Build6 writes "As part of the 50th anniversary of the discovery of DNA's double-helix structure, many news publications are writing about what has been done with the discovery so far; The Economist has a very interesting one about DNA's use in art and music. ... You can read all about it either by picking up a copy of The Economist (it's well worth the money, I've subscribed for over a decade), or online." And Clint Harris writes "As part of its series commemorating the 50th anniversary of 'the first scientific description of DNA' NPR recently aired a story comparing DNA to software (RealAudio or Windows Media). 'For many, the best analogy for the way DNA works is that it's like a computer program at the heart of every cell. Some of its programming tricks bear an uncanny resemblance to ones the human brain has dreamed up...DNA is [like] spaghetti code because nature has been tinkering with the system for billions of years like a bad programmer.'"
Software (and now hardware too...) that is inspired by DNA recombination.
std::disclaimer<std::legalese> sig=new std::disclaimer; sig->dump(); delete sig;
Is it really a coincidence that a Caduceus/Kerykeion has a pair of intertwined snakes? (Some people say that's proof of ancient knowledge!)
the Economist always backs this community on every financial issue. they're well worth the money.
...God's a VB kiddie :)
Boggle you say? Ha, Gorilla, RIGHT THERE!
-insert a witty something-
I'm really confused by someone equating obtuse code they can't understand as bad programming. I want more discussion on how the information encoded in genes acts. Not "This is the worst kind of spaghetti code you can imagine..." and posturing like we can't possibly understand it.
Fnord.sig
object oriented genes.
As soon as YOUR code has had uptime of 120 years or so, then you can say nature wrote us poorly.
DNA is [like] spaghetti code because nature has been tinkering with the system for billions of years like a bad programmer.
Wow, that sure is an arrogant statement. The chemical, physical and biological systems of nature are the most complex systems we know of. Nature is influences by a seeingly infinate number of variables. We don't understand much more than we do.
Our understanding of the world is far too small to be critiszing nature works and it's language. When humanity can create a WORKING system thats 1/1000th as complex as the natural world is when we can even start to make arrogant statements such as this. Today is not yet that day.
"Entropy is the bad-guy, and he is everywhere"
DNA is [like] spaghetti code because nature has been tinkering with the system for billions of years like a bad programmer
For craps sake don't let BillG's company let rip on it... the genetic horror of it (plus the EULA wouldn't be fun).
Anyone else find it funny that most gene sequences are proprietary, and hence even DNA isn't Open Source? --Scott
Nature designs things in an incredibly complex way, because that's simply how evolution works -- there's certainly no software engineering notion of clean component separation and so on in evolution. So it ends up certainly being complex, working, and possibly even beautiful, but a nearly impossible to decipher mess of spaghetti. Sort of like an old-school assembly programming genius designing an enormous 500,000-line program in assembly -- it'll work beautifully, but nobody will have any idea what the hell is going on, or be able to modify it. Similar problems exist when trying to genetically engineer things; you're always going to mess something up.
10 PRINT CHR$(205.5+RND(1)); : GOTO 10
DNA is [like] spaghetti code because nature has been tinkering with the system for billions of years like a bad programmer.
How ignorant of you to say that. There was an article in the Feb. 2003 issue of Scientific American about genetic programming - the creation of new devices and electronic circuity by computer.
It basically involves starting out the core components (resistors, inductors, capacitors, etc) and a design (for a voltage-current converter, perhaps). A supercomputer is able to rewire the circuit through basic evolutionary processes including crossover, copying, and extinction, and come up with a much more efficient circuit.
The resulting circuitry is so effective and original that there have been designs that earned approval from the patent office. They're so complex, much like nature's genetic code.
Sure, it might look like spaghetti code - but you mean to tell me, nature is a bad programmer? Heh.
Google search on genetic programming
Everything2: Genetic programming
What is Genetic Engineering?
I've been pleasantly surprised by all the attention the 50th anniversary of the discovery of DNA has gotten.
It got to be the Google logo. Cold Spring Harbor Laboratories has been very active in celebrating this. Among a few other things, they've had a really nice lecture series to commemorate the event.
I'm a little bit closer to the whole thing since I've done some genetics work (mostly at the Columbia Genome Center). My current work involves some genetic manipulation, but that's not the main focus.
Also, I happen to personally know James Watson. I first met him when he spoke at my commencement. But, I shouldn't tell that story, because it has some racist (and very amusing) content... which would only get me modded as a troll. I've kind of worked with him a bit since then, and he's really a very nice, down to earth, intelligent guy. He hasn't really let this whole thing go to his head.
Anyway, it's very nice to see the general public taking a little bit of interest in science. Maybe this will help to turn some of the scientific illiterates into elites...
Down with Saudi Arabia!!!
"Geez, it says here that the next 24,000 lines of code are wholly dedicated to picking one's nose!"
I'm sure that they would find that politicians are the result of millions of unreturned GOSUB commands.
...I could mate Microsoft Office with Star Office and crossbreed an office suite that is both free and feature complete...
It means that the word "like" wasn't in the original quote, it was instead added by the writer/editor.
The original quote said, "DNA is spaghetti code because nature has been tinkering with the system for billions of years like a bad programmer."
The writer and/or editor added the word "like" because they felt it corrected a grammar problem with the sentence, captured the tone better (which may have gotten lost when writing down the sentence), or it made the sentence more clear.
its in brackets because it wasnt said in the quote but was implied.
75% of all statistics are made up!
Well I guess the problem with the posting is the analogy. Comparing genetic "code" to software implies that there's a writer - in this case "nature" - who is either "good" or "bad" in the works that it perpetrates. The aesthetic and/or moral values of "good" or "bad" don't exist in the evolutionary process, only what works. If a sequence works, then the sequence survives. If it doesn't it dies. Consider Linus when he talks of DRM and Linux: he wants Linux to survive so he won't object to DRM being inserted into Linux; he doesn't want Linux's chances of surving limited. OTOH, RMS is a moralist and an idealist. He doesn't want DRM in Linux - in fact, he sees Linux as a weapon *against* DRM. If he succeeds in pre-empting DRM from Linux, then he will have closed off a route of survivability for Linux - in evolutionary terms, a major no-no.
Of course, this pulls the analogy apart from the inside: no aesthetic or moral judgments, no writer-figure ghosting in the background. What we have is a an autonomous, self-organising system - a far more interesting prospect if you ask me.
Of course, calling it "spaghetti-code" enables you to insert that programmer-figure into the argument. All spaghetti-code needs re-factoring right? Tweaking to make it "right" make it work "better"? I dunno; the self-autonomous self-organising model has worked quite well up to now...and, lets face it, when has trying to make something "better" produced less bugs than you first started with? Particularly with something you barely understand in the first place and are desperately trying to portray with ill-thought out analogies.
h.
Patriotism is a virtue of the vicious
Spaghetti code is only dangerous because it's hard to follow and thus understand, a barrier to maintenance and sharing with others. Perhaps the "programmer" simply has the capacity to know and understand the implications of each piece of the code at once - and perhaps also doesn't wish to share the code with other developers.
Even though it is composed of major spaghetti code and is attributed to a bad programmer hacking away at it for billions of years, DNA has not suffered a root level exploit yet! Stick that in your trustworthy computting pipe and smoke it.
Papa Legba come and open the gate
It was not the 50th anniversary of the discovery of DNA, it was the 50th anniversary of the publication of Watson and Crick's paper saying that DNA possibly has a double helix.
:p
It's kind of funny, everyone seems to be making this mistake, I heard the vice president of Clonaid talk just yesterday, and he said the same thing. Not that Clonaid is a legitimate company.
If you haven't ever picked it up, give it a try. You can read it on a very superficial level and enjoy the dialogs among the characters, flip through it for the Escher prints...but eventually you'll start digging deeper and see things in the same words that you didn't see before. Highly recommended!
The "Sonic Gene" mentioned in the Economist article is not the only one. I attended university where one of the piano professors has been working on a project like this for many years now.
.mp3s here. This has been a pet project of his, and it's definitely worth checking out. His personal site is available here as well.
His name is Brent D. Hugh, and he has downloadable
Happy listening!
Now you tell me. I just hired nature last week. She told me she had loads of experience coding on big projects.
Do not try to read the dupe, thats impossible. Instead, only try to realize the truth
What truth?
There is no dupe
"Save the whales, feed the hungry, free the mallocs" -- author unknown
There is left over viral DNA from millions of years ago still left in our junk dna areas.
No, more like a poorly programmed AI with a limited rule set.
SB
It's old. The more humans I meet, the more I like my cats. At least they are honest.
Perhaps DNA is more akin to highly optimised compiler output, as opposed to the source code.
It doesn't matter how elegant your implementation is, once an optimising compiler has done it's business the results aren't going to be very pretty to look at (or easy to understand).
As soon as a talented group of software engineers develops a useful decompiler/dissassembler for them, the geneticists will start to be freed from the low level detail overload and some of the elegance of the design will no doubt become more apparent.
While the DNA code has been likened to spaghetti code, keep in mind it's only had one developer working on it since life began. This developer is pretty adept at manipulating the code, even if only at a slow rate.
I wonder how stable the code will be when we patch it with our changes (given the past behavior of our scientists this seems inevitable). If genetic programming is ever allowed, maybe testing should take generations to complete rather than receive the relatively light review of the FDA.
After all, the current maintainer seems to have a knack for working out the bugs... er..
Everybody knows only bad programmers write spaghetti code. Nature clearly writes fusilli lunghi code. Just look at it!
Machines take me by surprise with great frequency. -A. Turing
Not alleged theft, but well established, and admitted. Maurice Wilkins gave Watson and Crick the keys to Franklin's lab, and the locked drawer where she kept her X-ray photos. Of the DNA that she grew. Using the X-ray camera she designed and built herself .
In their own defence, they tried to dismiss her as a mere "lab tech" (with a Ph.D. and several publications? I don't think so!) and then put her down in their book The Double Helix by wondering repeatedly, in print, whether she'd look any more attractive if she did "something more interesting with her hair."
READ ABOUT IT HERE
Maybe it's just like obfuscated C and we're to stupid to understand it.
Dr. Linda Long had been doing something similar with Music of the Plants and Music of the Body.
Does that mean that Men are from Real, Women are from Microsoft?
That isn't very efficient. Microsoft did the same thing with the Windows codebase in only 20 years
Seriously, though, I don't think this statement is as arrogant as some of the posters before me claim. Nature IS a bad programmer. Its arsenal consists of trial-and-error and brute force.
Given the scale nature works on (billions of years) it's not a bad way to go about things. A few million years testing out a given design seems slow and ponderous to us but from the point of view of evolution itself it's no big deal. Plenty of time to try again.
There's apparently been plenty of time for nature to develop a sense of humor.
I dont know that I could imagine a worse metaphor. Anyone that has ever studied the tendencies of human beings to be insanely ethnocentric and myopic should appreciate what I mean. To make an analogy that the simplistic beauty of DNA is anything like "spaghetti code" is hilarious. You're comparing a bad algorithm method with an incredibly complex (yet very beautiful in its simplisitic design) and far more brilliant system. Most programmers cant write code to do one simple task without having some sort of bug or malady arise, whereas DNA is able to manipulate individual molecules and chemical reactions in order to create a system magnitudes above anything the most brilliant human could think to design. Its like comparing apples to books if you ask me.
J
Beer, now there's a temporary solution -- Homer Jay S.
Not alleged theft
Alleged as in a legal sense.
Did anybody else read this and think:
"Realsoft and Microsoft might not be too happy being called bad, spaghetti code programmers!"
Eh?
Then I understood that it meant "You can listen to it in RealAudio or Windows Media." But I think my version is more interesting....
Irene KHAAAAAAN!
Some things you just have to recompile as root:
# gdna -O3 -pedantic-errors -Wall -Werror HumanGenome.dna
Most programmers cant write code to do one simple task without having some sort of bug or malady arise, whereas DNA is able to manipulate individual molecules and chemical reactions in order to create a system magnitudes above anything the most brilliant human could think to design.
As a molecular biologist/computer progammer, I think you are giving DNA too much credit. Just as a single error in a piece of code can cause it to crash, a single base mutation in an organism's DNA can either a)cause it to abort during development or b) give it any of a thousand different diseases, from the annoying (myopia) to the deadly (Cystic Fibrosis, Huntington's, Cancer, and so on). The genetic code is a hack; a hack developed over 4 billion years that works just well enough to keep making more copies of itself.
This doesn't mean that life isn't incredible. Biological systems may be kludges, built off the remnants of older versions of itself, out of countless imperfect parts (like DNA which accumulates mutations, or proteins which can be misfolded or poisoned), but it has produced organisms that live in every concievable niche, including one that's trying to figure out how it works!
Computer science is still in its infancy. Right now, we're just learning how to make redundant, parallel systems that don't have to work perfectly with a 100.0% uptime to do their job. My guess is that if we someday develop artificial intelligence, it will use many trillions of small programs, none of which will work perfectly, but which will work in tandem with each other to make amazing things happen.