4 ms·
> Learning the DNA regulatory code of the genome This is so interesting. I cannot imagine what kind of language evolution chose to build on top of DNA. There m
by proc0 9y ago
> Learning the DNA regulatory code of the genome
This is so interesting. I cannot imagine what kind of language evolution chose to build on top of DNA. There must be some paradigm it maps to, and it's going to be incredibly interesting to see if a compiler/interpreter can be made for DNA, along with higher level languages that compile down to it.
- shaki-dora 9y agoIf you’re interested, much of what you’re asking about is actually known: (some) DNA sequences map directly to protein sequences. Because DNA has a 4 letter alphabet (G, C, T, A), it takes three to map to one of the 2x different amino acids that make up proteins. Proteins, in turn, are the “machines” that work in cells. DNA also contains regulatory segments, errors, “dead” code left over (and carried through generations) long after it stopped being transcribed, DNA once inserted by viruses (both active and inactive) etc etc... If you want an analogy with computer code: it’s most like a spaghetti-code hair ball of assembly coding it’s own compiler, IDE, vim, a few games, and a neural network ten magnitudes the size of anything tensorflow can do. It does it all on hardware that works only probabilistically. And it is constantly starved for resources, leading to hacks such as DNA sequences that code for two completely different functioning proteins depending on reading it either forward or backward, or starting to read at an offset (what’s called a “reading frame”). There’s a thick book on molecular biology by Alberts et al. It’s the most phantastic deep dive into this, any many other, insanities. I believe Larry Page used to recommend it to all new googlers.
- entee 9y agoMBOC is the book you're looking for by Alberts: https://www.amazon.com/Molecular-Biology-Cell-Bruce-Alberts/dp/0815344325/ref=sr_1_2?ie=UTF8&qid=1519168605&sr=8-2&keywords=molecular+biology+of+the+cell https://www.amazon.com/Molecular-Biology-Cell-Bruce-Alberts/... It's standard reading at the very least as intro grad/senior undergrad student in the biosciences. Great book, well written, well curated. Parent commenter is correct, DNA->function is massively complicated. The main wiki article to start with is: https://en.wikipedia.org/wiki/Central_dogma_of_molecular_biology https://en.wikipedia.org/wiki/Central_dogma_of_molecular_bio... As the article notes, there are endless exceptions and edge cases. It links to various examples of those.
- madhadron 9y agoI've stopped recommending Alberts. It's a great cartoon guide to a mythical average eukaryotic cell, but it abstracts much farther than the data can bear and leaves the reader without the intellectual tools to work with the material in it. And so you get computer scientists thinking about assembly language and compiling and physicists building little stochastic models of state transitions without knowing the biological considerations that lead those efforts astray. Not that I have a book to recommend instead...
- entee 9y agoI disagree, it's a decent overview that introduces the major concepts and how they work. It's not intended to be at the cutting edge or to provide all caveats. By definition all textbooks in biochemistry, biology and the like are out of date by the time they go to press. The average MBOC provides is enough of a basic understanding of molecular biology to move on to more advanced work including papers that start to get into the nitty gritty details. Note that many people haven't been even exposed to the basics!
- madhadron 9y agoI'm not worried about it being out of date. I worry about the misconceptions it leaves in the minds of those who learn from it. They can parrot the words, but the mental models that result from studying it regularly lead people astray. At least, that's my anecdotal observation from as a research biologist.
- collyw 9y agoWow that's a blast from the past. I started a Molecular Biology undergrad in 1992 and that was one of the books we had to buy. Mr Alberts must be doing alight if that is a course text on many courses for so many years.
- AllegedAlec 9y ago> If you want an analogy with computer code: it’s most like a spaghetti-code hair ball of assembly coding it’s own compiler, IDE, vim, a few games, and a neural network ten magnitudes the size of anything tensorflow can do. It does it all on hardware that works only probabilistically. And it is constantly starved for resources, leading to hacks such as DNA sequences that code for two completely different functioning proteins depending on reading it either forward or backward, or starting to read at an offset (what’s called a “reading frame”). Not only that, but it's also (quite literally) radiation hardened: the genome has evolved to a state where most changes to the DNA do very little. Or, if the environment is changing frequently, it'll have evolved to a place in the genome space where it has a higher chance to obtain more beneficial mutations (for more info on this sort of stuff, look up articles by Hogeweg, Colizzi or Crombach). As a computational biologist, I can tell you that evolution works in many ways, but most likely not in the way you'd expect it to.
- madhadron 9y agoThis is a common idea among computer scientists looking at biology. They see "sequence of base pairs" and immediately think of a Turing machine's tape or a memory segment in a computer. It leads them astray. There's no reason to think that evolution has or would construct anything resembling a language or a language paradigm. Evolution doesn't introduce abstractions. Now, programmers, by our neurophysiology and training recognize things that look like abstractions in what evolution produces, and near-abstractions are useful to reduce our cognitive load when we're studying biology, but a biologist always keeps in mind a list of exceptions to those abstractions in mind. If you don't know of exceptions, it is almost always a fruitful research question to find them.
- Baeocystin 9y agoI have always found this example of using evolutionary processes in FPGAs (and how utterly bizarre the resulting circuitry) to be very useful in clarifying just how different the biological world is from the CS one. https://www.damninteresting.com/on-the-origin-of-circuits/ https://www.damninteresting.com/on-the-origin-of-circuits/ tl;dr - evolution takes advantage of the entire solution space without any respect the the abstraction layers we've created in our minds.
- thaumasiotes 9y agoThe most interesting (IMO) extract: > after just over 4,000 generations, test system settled upon the best program. When Dr. Thompson played the 1kHz tone, the microchip unfailingly reacted by decreasing its power output to zero volts. When he played the 10kHz tone, the output jumped up to five volts. > Dr. Thompson peered inside his perfect offspring to gain insight into its methods, but what he found inside was baffling. The plucky chip was utilizing only thirty-seven of its one hundred logic gates, and most of them were arranged in a curious collection of feedback loops. Five individual logic cells were functionally disconnected from the rest— with no pathways that would allow them to influence the output— yet when the researcher disabled any one of them the chip lost its ability to discriminate the tones. Furthermore, the final program did not work reliably when it was loaded onto other FPGAs of the same type. > It seems that evolution had not merely selected the best code for the task, it had also advocated those programs which took advantage of the electromagnetic quirks of that specific microchip environment. The five separate logic cells were clearly crucial to the chip’s operation, but they were interacting with the main circuitry through some unorthodox method— most likely via the subtle magnetic fields that are created when electrons flow through circuitry, an effect known as magnetic flux. This nicely illustrates a major advantage of evolutionary processes: they can use any resource in the environment, whether you know that resource exists or not. The program's crippling overspecialization ("the final program did not work reliably when it was loaded onto other FPGAs of the same type") is also typical of evolutionary processes.