5 ms·
Biology is completely different from Computer Science and metaphors between the fields build no understanding and can only be misleading, every time I hear some
by stiff 13y ago
Biology is completely different from Computer Science and metaphors between the fields build no understanding and can only be misleading, every time I hear someone comparing DNA to a computer program I fall into pieces. I recommend "Molecular Biology for Computer Scientists" instead for those willing to learn some actual biology:
http://www.biostat.wisc.edu/~craven/hunter.pdf http://www.biostat.wisc.edu/~craven/hunter.pdf
I think it's the first chapter of this book:
http://mitpress.mit.edu/books/processes-life http://mitpress.mit.edu/books/processes-life
I once considered going into bioinformatics, and did an intense three weeks sprint trying to learn some molecular biology, ending in a seminar presentation to other people explaining the basics. I used this book back then which I also recommend strongly to those interested:
http://www.amazon.com/Bioinformatics-Molecular-Evolution-Paul-Higgs/dp/1405106832/ref=sr_1_1?ie=UTF8&qid=1387141666&sr=8-1&keywords=bioinformatics+and+molecular+evolution http://www.amazon.com/Bioinformatics-Molecular-Evolution-Pau...
It covers all the basics of molecular biology very understandably and at the same time the scientific/computational content is interesting even for a computer scientist. Still, learning this stuff takes hard work, you have to rehash some relevant chemistry first or you get nowhere, than biologists use a lot of both chemical and biological lingo which you have to understand, and only then the actual biological content becomes clear. Once you do understand it, however, it's beautiful, beautiful stuff, one of the most beautiful things one can learn in general I think, of which you unfortunately won't get a sense from reading this article, or in general from trying to understand it by sloppy metaphors. Do yourself a favour and try to understand this for real.
- dekhn 13y agoSo, you would say that information theory has nothing to do with biology? Because that's what your first sentence implies.
- Datsundere 13y agoNot if our universe was a simulation of a computer program
- ramsaysnuuhh 13y ago> Biology is completely different from Computer Science and metaphors between the fields build no understanding and can only be misleading, every time I hear someone comparing DNA to a computer program I fall into pieces. That's the kind of attitude that pushes competent programmers away from bioinformatics. End result? Almost all bioinformatics software is a steaming pile of crap.
- mtdewcmu 13y agoThe problem is probably that you have to train in two separate fields to be competent in computer science and biology, and that's not going to be common.
- ramsaysnuuhh 13y agoBut the quality and sophistication of software in, say, astronomy makes bioinformatics software look like it was written by 14 year old spammers in the former soviet bloc. The real problem is that biology went from being essentially a liberal art, more like history or sociology than a science, to an extremely quantitative field in only a few academic generations. You can get a PhD in Molecular & Cell Biology from Berkeley without ever having taken a statistics, linear algebra, multivar calc, or CS course. Biologists need programmers more than the other way around, so they should start by taking a few courses with actual numbers and stuff and learn the bare basics first.
- nl 13y agobioinformatics software look like it was written by 14 year old spammers in the former soviet bloc So it's pretty damn good code, then? (Having worked with plenty of coders from the former soviet bloc: they have a pretty low tolerance of crap code)
- ye 13y agoDNA is not just a sequence that encodes proteins. We just found out there's a secondary higher level code in it: https://news.ycombinator.com/item?id=6896779 https://news.ycombinator.com/item?id=6896779 And then there's RNA, which can fold and form structures, sort of like proteins. Anybody who has ever seriously dealt with things produced by evolution knows that evolution "cheats" and optimizes when constrained by resources, producing structure upon structure upon structure, crazy indirection and non-obvious side-effects, as long as it helps the goal (survival and reproduction usually). That's why I don't think human brains will be understood any time soon. We might figure out all the layers, but to figure out all the hidden structures would take a superhuman AI. EDIT: Example of circuit design by evolutionary algorithms: http://hforsten.com/evolutionary-algorithms-and-analog-electronic-circuits.html http://hforsten.com/evolutionary-algorithms-and-analog-elect...
- charlieflowers 13y agoYes. Evolution is the ultimate "three star programmer": http://c2.com/cgi/wiki?ThreeStarProgrammer http://c2.com/cgi/wiki?ThreeStarProgrammer
- timr 13y ago"DNA is not just a sequence that encodes proteins. We just found out there's a secondary higher level code in it" So, I don't want to rain on anyone's parade, but we didn't "just" find this out. We've known for quite a long time about secondary (and even tertiary!) "codes" in DNA. That HN article was the result of a press-release about something that was interesting, but certainly not earth-shattering new theory. The reason it was in Science was because they did an extremely large-scale test of a whole bunch of different codons on thousands of different gene promoters, and directly quantified the impact of rare codons. That was an impressive way to settle an open debate. Anyway, it's good to know that there are higher-order interactions encoded in DNA than just DNA -> RNA -> Protein, but you should realize that this is an old/deep area of research. This is pretty much what bioinformatics is about, actually: deducing the higher-order structures in DNA, RNA and proteins.
- badger288 13y agocircuits reference reminded me of this - http://www.damninteresting.com/on-the-origin-of-circuits/ http://www.damninteresting.com/on-the-origin-of-circuits/
- dnautics 13y ago>Biology is completely different from Computer Science and metaphors between the fields build no understanding and can only be misleading, every time I hear someone comparing DNA to a computer program I fall into pieces. What? As someone who can write code in several different languages and who has also made de novo designer modifications to proteins at the low level (biological equivalent to assembler, if you will: http://ityonemo.github.io/acs2013/#/ http://ityonemo.github.io/acs2013/#/, if you're curious) I can attest to the metaphor between the two. It's not totally simple and not one-to-one, but in many situations it has helped me. Hopefully it keeps helping me as I move into my next stint (http://indysci.org/projectmarilyn http://indysci.org/projectmarilyn) If your idea of "biology" is "going into bioinformatics", well then no wonder your perception of the metaphor is skewed. Bioinformatics is more like "big data on biology"; what is more analogous to computer programming is Synthetic Biology. Now, I would happen to disagree with many of the metaphors in the OP (and have, as a practitioner of both, better ones in mind that I use in my work), but that there are no connections is, I think, misguided.
- stiff 13y agoI would not consider every digital code immediately a program, and even treating DNA just as a digital code can be confusing, since there is so much chemistry and physics happening until DNA is expressed as a protein, that you can't just expect that whatever you encode will really come out exactly as encoded. The nice simple mathematical models and metaphors we use for man-made artifacts fall on their face when applied in biology. One can understand this better by looking for example at the difficulties encountered by people who do actually base computations on the DNA: http://en.wikipedia.org/wiki/DNA_code_construction http://en.wikipedia.org/wiki/DNA_code_construction
- dekhn 13y agostiff, you've got multiple people who are experts in either fields (including people like me, who are experts in both fields) telling you your posts are full of crap. It's not clear to me what your link about the DNA code construction really means. Consider instead: 1) people can encode terabytes of digital information in DNA and retrieve it using molecular techniques. To do so accurately enough requires coding. 2) Crick, who helped figure out many of the basic information coding mechanisms, widely acknowledged being influenced by the theory of information as proposed by Shannon. 3) both computer scientists and biologists frequently use the theory of control mechanisms (feedback, etc, also known as 'cybernetics' when I studied under David Huffman) to understand how their systems work, and engineer new ones. 4) you can make a computer out of DNA< and you can put computers into biological systems; they interact according to the laws of information theory, entropy, thermodynamics, etc. The relationship between computing theory- as practiced today- and what biology has managed to spontaneously developed- are intimately related at the most basic levels of physics. Understanding that is KEY to being a productive biologist or computer scientist, and escpeially so for bioinformaticians.
- mtdewcmu 13y agoYou have to understand things on their own terms. A lot of times you can find a biological process that resembles something in computer science, but you shouldn't take the analogy too far. Nature doesn't know what a computer is, so any resemblance between a natural process and a computer is incidental. You can't conceive nature as an engineer and talk about how sloppy and random its designs are. You have to bear in mind that nature has made things that we can scarcely comprehend, let alone engineer, so if you're critiquing its designs as if you can read its mind and see what it was trying to do, you're probably missing the point. It pulls off incredible things, so nature is the master and we're the student.
- delian66 13y ago>>You can't conceive nature as an engineer and talk about how sloppy and random its designs are. Why not? We can talk about how sloppy something is from a given perspective; we do it all the time, and then try to improve things (there will be no progress otherwise), and if we succeed/fail, learn more ... >>as if you can read its mind Nature/evolution is not a sentient being, thus has no mind. Do you have evidence to the contrary ?
- mtdewcmu 13y agoWhen you look at something designed by a person, you can intuit what they were doing and judge it as good or sloppy. Nature requires a completely different type of thinking. It's ultimately unhelpful to anthropomorphize nature.
- yshklarov 13y agoA correction: The chapter at http://www.biostat.wisc.edu/~craven/hunter.pdf http://www.biostat.wisc.edu/~craven/hunter.pdf is actually the first chapter of "Artificial Intelligence and Molecular Biology": http://mitpress.mit.edu/books/artificial-intelligence-and-molecular-biology http://mitpress.mit.edu/books/artificial-intelligence-and-mo...
- jokoon 13y agoI don't think you should take this really seriously
- zaras 13y agoThis is an interesting question. I have always though that computational models are the most interesting description of genetic mechanisms (DNA primary sequence, epigenetics, transcriptional control, etc.) and singaling networks (RNA, proteins, metabolic networks, etc). They abstract away complexity and give us tools to make powerfull predictions. What you are suggesting here is that biology is more than a universal Turing machine. What makes you believe so?
- stiff 13y agoThe statment "biology is a Turing machine" does not make any sense to me, so I won't discuss whether it is true or not. Just pursue the analogy of DNA as a program for a few steps more and you will see how it goes. If DNA is a program what would be the computer? Ribosome? The universe? What would be the outcome? I guess the protein. But then the result of the computation is dependent on hundreds of factors outside of both the DNA and the ribosome. The "result" immediately gets distorted by whatever physics applies to it, the "instructions" might have different effects on the "computer" depending on position in the strand and on hundreds of external factors etc. What insights does this metaphor give you beside endless confusion? The "computational" models that have been successfully used to model the DNA have nothing to do with treating it as a description of a computation, they are only computational in the sense that they use mathematics and computing for making predictions about biological phenomena. Those are mostly probabilistic models that treat the DNA as a string of discrete symbols, and encode the physical and chemical complexities associated with this approach in various ways, one good example is Hidden Markov Models, where the probabilities might encode physical or chemical knowledge: http://en.wikipedia.org/wiki/Hidden_Markov_model http://en.wikipedia.org/wiki/Hidden_Markov_model