BioSec 2012: Daniel
Daniel's BioSec Notes
These are just some general thoughts... Overall I feel I have a pretty shaky handle on a lot of the minute details of these systems. I'm having increasing trouble making analogies to computer security (or computer science in general) as things progress. I've approached this page as a summary of my 'take-aways' from the course so far.
If I could have any influence in the progression of the course from here on out it would be more structured and have a little bit more guidance in terms of what to focus on, and how to frame it in a familiar way. I feel that reading the biology and then trying to form abstractions that relate it to computer science isn't straightforward for someone with my background. It would be easier to start with the security analogies or some abstractions and then try to read the biology to fill in the gaps or appreciate the merit of the comparison.
Food (ATP?) for thought.
If there is a way to do something, biology does it that way in some cases. Optimization occurs only when it's required, imperfect solutions are not always imperfect. Even when they are there might not be an evolutionary gain to be had by improving it. There seems to be common patterns similar to a design pattern language that are used in several different areas and systems. A good example of this is the idea of a feedback loop, when too much of something is produced it feeds back into the production subsystem to limit further production. This is seen in photosynthesis as well as other metabolic pathways.
I notice that there is a strong emphasis on the decentralization of things. I see parallels between the Unix philosophy of having small components tailored for doing one specific thing really well, and chaining them together to achieve complex tasks or to wring out all possible energy. A good example of this (from my perspective) was cellular respiration. The three stages of cellular respiration (glycolysis, the citric acid cycle and chemiosmosis) each wring out a little bit more ATP that was missed by earlier stages.
The pattern matching approach taken by biology seems to recur frequently. I think of cellular communications and the challenges it faces as similar to those found in distributed systems. Dealing with highly concurrent processes it is very difficult to maintain and transfer state or to synchronise very complex communications between parties. Biology seems to have taken a spray and pray approach that is coupled with feedback mechanisms to deal with overloading of signals.
The broadcast nature of cellular communication makes it difficult for us to develop a drug highly tailored to a specific receptor or cellular subsystem that does not affect other receptors/cells. This property is fundamental to how the immune system is able to recognise threats quickly by a sort of aggregate sensing ability. This comes back to the difference between the way we engineer systems by adding pieces one by one to accomplish a goal and the way that biology/nature seems to have connected everything and removed connections that were superfluous or harmful.
The theory about eukaryotic cells having developed through the absorption of smaller prokaryotic emphasises the component based approach to the development of complex systems. I think about it in terms of the modular development of operating systems, you may start with a unified memory and then later add a component that presents that sort of model to individual processes through virtual memory but in reality has a highly complex individual purpose (isolating processes).
Chapter 10 — Genetic Recombination
- Diversity of protocol implementations
- Similar to genetic diversity?
- Minor differences in spec implementation that eventually accrue into entirely separate instances?
- Genetic diversity arises from minor copying errors shuffled into different combinations
- Bacterial Conjugation
- need to bring together the DNA of two cells into close proximity
- Using a ‘sex pilus’ one cell sends a copy of part of it’s DNA across a cytoplasmic bridge
- Is this like a .patch diff being sent from one person to another?
- Conjugation is one means to transfer DNA/achieve recombination in bacteria
- Two other ways: transformation and transduction
- Biology doing things different ways, again…
- Two other ways: transformation and transduction
- In transformation, bits of DNA from dead cells gets ‘picked up’
- In transduction, bacteriophage (viruses that infect bacteria) inject DNA
- Viruses end up transferring bacterial DNA from hosts they killed to newly infected bacteria
- These bacteria don’t die because they are injected with bacterial DNA not viral DNA
- Meiosis - reduces chromosome count in half
- otherwise reproduction would be doubling # of chromosomes in each generation
- Handled by specialized machinery - producing gametes and spores (depending on animal/plant/etc)
- Not meant to produce “sameness” that helps contribute to the body/mechanisms that make them
- The ‘halving’ process achieves compression in the sense that each zygote/spore has half the required chromosomes
- Chromosome ‘values’ differ -> alleles?
- Sexual reproduction as an ‘optimal’ strategy
- In that it increases genetic variability
- Offspring have better chances of having combinations of alleles that will be successful