Track your comments!
[x]


When you register, comments on your articles and replies to your comments appear here. Register Now!

Sign in to your account
[x]

Not a Scientific Blogging member yet?

Register Now for a Free Scientificblogging.com Account

  • Customize your profile with pictures, banner, a blogroll and more.
  • Leave comments on articles, add other members to your friend lists, chat with people on the site.
  • Write blog posts that can be seen by hundreds of thousands of readers.

It's free and it only takes a minute!

Already a Scientific Blogging member?

Sign In Now

Banner
By Michael White | July 14th 2009 12:07 PM | 15 comments | Print | E-mail | Track Comments
.

More Adaptive Complexity articles

All

About Michael White

Welcome to Adaptive Complexity, where I write about genomics, systems biology, evolution, and the connection between science and literature, government, and society.

I'm a biochemist


... Full Bio

Do our genomes look designed? Let's address this point, hoisted from the comments of this post:

Actually, shared genetics between chimps and humans is agnostic with respect to evolution or "intelligent design". In software engineering, you often find shared code (or even junk code) in the source of various projects as it develops from "Product 1.0" to "Product 2.0" to "Product 3.0". I.e., it's a strawman argument to assume the "intelligent designer" started from scratch for chimps and humans. That doesn't sound intelligent at all.

Like a software designer, the "designer" would have hacked up whatever existing code base he had to
get him to the next milestone. So the "chimp release" and "human release" of the designer's software
of course share the same bugs, since they are off the same code base.

Note this is not a claim that the designer "just made things look that way" i.e. tried to trick observers;it's based on how things are actually done in software design were there is no intent to trick at all. It's simple basic engineering for large projects--you don't start from scratch each time.


To answer this, we need to get into details. It's easy to make analogies between biology and engineering that look ok superficially, but we need to keep the details in mind - as Richard Feynman put it, "[our] thoughts [in science] are restricted in a straitjacket, so to speak, limited by the conditions that come from our knowledge of the way nature really is."

So let's imagine that all species on earth were made by an amazingly powerful (and long-lived) genetic software engineer. This engineer, as our commenter points out, would be able to reuse a lot of code. In fact, the amount of reusable code is mind-boggling, because most of the basic cellular functions are carried out by essentially the same genetic machinery in all life. Transcription, translation, glycolysis, DNA replication, etc. - so many of the basic processes of the cell are essentially the same in all species.

This reuse of code is fortunate for me, because all of my research is based on the premise that what I learn about a basic process (cell division) in one species (yeast), will help us to understand that same basic process in humans. And in fact this premise has been incredibly successful - much of what we know about cell division in humans was first worked out in yeast.

One can then imagine our intelligent software engineer reusing lots and lots of code - humans and chimps are similar, so they need only a few tweaks in the software to make them different (maybe one line of code out of 100), humans and chickens will have more differences, etc. On this principle, you end up with a pattern of similarities and differences - humans most closely resemble chimps and gorillas, the chicken genome is more similar to the genomes of other birds, etc. And let's not forget mistakes - our designer might be imperfect, and a copying error or design flaw that crops up when programming the chimp genome will also crop up in the human genome when the designer reuses large swaths of chimp code.

Convergent Evolution

But if we look at the details, the software analogy breaks down. One point where the software analogy fails is convergent evolution: places where the designer arbitrarily decides not to reuse code to achieve a given function, and instead uses code written for a completely different purpose. A well-known example is the whale flipper - instead of reusing code that functions just fine to make shark fins, our software designer has taken the code for tetrapod wrists and digits, and awkwardly tweaked that to to make whale flippers.

This kind of thing, (which biologists call convergent evolution) is common throughout nature. And it's not just something that happens on the morphological level - it happens on the molecular level as well. Convergent evolution at the molecular level is everywhere - venom in reptiles, special metabolic enzymes in flight muscle in bats and hummingbirds, color vision in lemurs and humans - there are literally hundreds examples.

In many of these cases, it is very easy to show (especially in cases of molecular convergent evolution) that there is absolutely no functional reason to not reuse code. But for some inscrutable reason, the designer made things difficult and, instead of using similar code for similar functions, took code for a completely different function and rewrote it. Human software engineers do some strange things, but they don't take CD burning software and rewrite it into a word processor.

Non-synonymous Mutations

Another place where the software analogy breaks down: the pattern of mutations in we find in homologous genes (homologous here means the same gene, but in different species). This would be another instance of arbitrarily changing code for no functional reason. Let's take the example of your basic sugar metabolizing enzymes, those involved in glycolysis. These enzymes basically do the same things in all organisms; their function hasn't changed in at least a billion years. And yet there are differences between species in these enzymes - glucose phosphate isomerase in chicken is not the same as glucose phosphate isomerase in humans, even though this particular enzyme carries out the same chemical reaction in all species. More importantly, there are species differences of no functional consequence, called non-synonymous mutations, mutations in the gene that don't change the amino acid sequence of the protein.

The pattern of non-synonymous changes, amazingly, is just what we'd expect if what was going on was the accumulation of mutations over the course of evolution, with today's species being part of one big family tree. There is no reason that kind of pattern would occur under a software design model, unless of course the designer created designs in an evolutionary pattern. That is, before sitting down to write the chicken genome, the designer created some 'common bird ancestor' software, with arbitrary changes of no functional consequence, and then used that software as the framework for writing the genomes of today's living birds. (And I'm oversimplifying here - to really get the pattern right, you would have to hypothesize a series of common ancestor software packages - one for each major taxon in the bird line.) In other words, this designer would not have first written the quail genome, and then tweaked that to make a chicken genome, and then tweaked that to make the turkey genome, etc. - that's not the pattern we see in nature.

A Designer can Explain Anything

Of course, you can hypothesize that our intelligent designer started out with an original cell genome, then tweaked that into making a variety of (now long-extinct) bacterial genomes, and then tweaked those into making an 'original eukaryote genome', etc. That's the beauty of making up an intelligent designer without any operational constraints - it can explain anything. We can come up with some version of an intelligent designer that can explain any pattern in nature (and I've left out a lot of bizarre patterns in nature that we'd have to explain). But the point is that such a designer is not operating by human design principles - that designer most decidedly does not do things the way human software engineers do things.

That's what we're left with in the end. A pattern in nature that is just what we expect evolution to produce, and not what we expect a human-like designer to produce. If you want to hypothesize some other designer, you have to explain why that designer made things (intentionally or unintentionally) look like they evolved - because human design principles don't explain the evolutionary pattern.






Comments

I really liked this article, as it gave a some good insight to the matter. This article still feels a bit like an attempt to prove the non-existance of an intelligent designer, but good reading nevertheless. Anyway here are some thoughts I got about parts of the article:

"But the point is that such a designer is not operating by human design principles - that designer most decidedly does not do things the way human software engineers do things."
Correct. However we must not assume that even thou the God described in the Old Testament created humans in His image, that He does things the way humans do. Even distinct human designers to things differently. And since God is attributed with having all wisdom and knowledge, it sounds very reasonable that humans with limited wisdom and knowledge - like us - may yet be unable to explain His actions.

"If you want to hypothesize some other designer, you have to explain why that designer made things (intentionally or unintentionally) look like they evolved - because human design principles don't explain the evolutionary pattern."
I don't think we have to explain that. We can just hypothesize that such a designer might be omnipotent, have all wisdom and knowledge, and that we (as humans with limited wisdom and knowledge) are unable to fully understand and explain the designers work. So in case we are unable to explain something - does this mean our hypothesis must be wrong? - Of course not.

To sum up my comment, I'd like to quote two beautiful verses from Isaiah 55:8-9:
"For my thoughts are not your thoughts, neither are your ways my ways, saith the Lord. For as the heavens are higher than the earth, so are my ways higher than your ways, and my thoughts than your thoughts."

adaptivecomplexity's picture
I'm not trying to prove the non-existence of an intelligent designer. I am saying three things:
1. God could have done anything, any way, for any reason. God is not a scientific explanation for what we observe around us in nature. (You seem to agree with this.) 

2. What we observe around us is consistent with evolution. We can't make specific predictions about what an unknown intelligent designer would have done (see point #1 above), but we can make specific predictions about what effects evolution should produce. The patterns observed in the genomes of living species could have been different, inconsistent with evolution, but it turns out that they aren't. Scientifically, evolution is an extremely successful explanation, one of the best scientific theories we have.

3. If you believe in an intelligent designer who specially created each species (or genus, or whatever), you've got some explaining to do: why did an intelligent designer make things appear to have evolved, even though they were specially created.


Mr. Anonymous, a member of the asylum, uses a Bible quote to defend his Magic Man.

[Sorry if this is a double post.]

Hi Michael,

I think I see your point about convergent evolution of code--that it's not parsimonious as a designer to create brand new code to perform the same function. IMHO, though, there actually are software engineering equivalents of convergent evolution. The code for Microsoft Word probably looks nothing like the code for Google Docs; yet they were both written and designed (and iterated, or evolved, upon previous versions) in order to accomplish similar functional ends.

I'm not a software engineer, so forgive me if this sounds ridiculous, but let me take the office software analogy further. Let's say as a designer I code a word processor in Language 1. Then once the word processor is somewhat successful, I decide to create a new program that makes presentations, but for some reason I use Language 2; maybe Language 2 is more efficient, or hiring Language 2 programmers becomes cheaper for some reason. Each of these products then has its own evolutionary path for awhile.

At some point, I decide to include a feature in the word processor to make tables, and I realize that it might be useful to include tables in the presentation software, but since the presentation software was written in a different language from the word processor, I have to code it differently. This would be a case of convergent development. You'd see similar structure in the code--e.g. code for cells, inserting rows and tables, headers/footers--just as you see analogous structures in morphology, but it's clear that the presentation software's tables did not share a common code base with the word processor's tables.

Despite this, I completely agree with you that the evolutionary record is consistent with evolution. I just don't necessarily agree with the point that intelligent design in evolution would obviate convergent evolution.

adaptivecomplexity's picture
I just don't necessarily agree with the point that intelligent design in evolution would obviate convergent evolution.

This illustrates the difficult of nailing down a specific design hypothesis. The assumption in the analogy here is that it's the same designer doing everything (and not like Google vs Microsoft), and the same programming language.

Things get even hairier if we're drawing analogies between the genomes of today's species and competition between software companies and different programming languages. In fact, I don't think an analogy between convergent evolution and two programming languages works - in biology, the programming language is the same. The same genes that control the development of fins in sharks also control the development of flippers in whales; they've just been tweaked and regulated differently. The genes are there, the 'programming language' is the same - the genes are just used differently.

Gerhard Adam's picture
The software analogy fails on too many levels because it isn't a legitimate comparison.  Software presumes the existence of hardware that is capable of understanding the underlying instruction set produced by the programming language.  Regardless of the programming language, if it isn't compiled for the proper hardware, or fails to accommodate the hardware architecture, it doesn't work. 

In biology, it's as if the programming language itself gives rise to the hardware on which it runs.  There is no corrolary to a human designed system, so such comparisons create a false sense of understanding.

Gary Herstein's picture
In biology, it's as if the programming language itself gives rise to the hardware on which it runs.  There is no corrolary to a human designed system, so such comparisons create a false sense of understanding.

The Von Neumann machine might be an appropriate analogy, although none such has (to my knowldge -- "Skynet," anyone?) ever been built.

I don't agree. While the analogy isn't perfect, I think it has merit.

In biology, the programming language does not give rise to the hardware on which it runs. It is simply self replicating hardware (replicating based on the instructions of the software) - the instances of which coordinate with each other somewhat like grid computing. Self-replicating hardware also exists in the world of computing (see here for a fun example).

A strand of DNA outside of a cell can't do much. The cell is the hardware with input/output components.

Gerhard Adam's picture
The analogy isn't even discussing the same topic.  A human being isn't simply a dynamically constructed little replica that gets big.  It involves billions of replications which each take on specific assignments, which in turn develop into their own component parts, and then are capable of interacting to provide a sound environment for other critical functions to develop as well as providing a means of acquiring external resources to perpetuate the entire organism.

Inanimate and animate objects are not analogous.  Any resemblance they have is purely coincidental and is likely the result of the engineer using the only working system he has to copy from .... a biological one.

For starters, let me say that I fully agree that there is very strong evidence for evolution - and believe that it has and does occur.

One thing I've always failed to understand though is what triggers the significant changes in species, if it is not, what I'll call "intelligent influence".

Relatively small changes, such as leading to stronger muscle in particular limbs, or keener eye sight, or change in fur color all seem consistent with my understanding of evolution. More or less random mutations that result in these changes lead a species to become more or less able to succeed.

But what about significant changes, such as the invention of an eye or an ear? Does one single mutation lead an eye-less head to suddenly have an eye socket, eyeball, optical nerve, and a brain that knows how to utilize it? I don't think so. But if not, what is the benefit of having even one of those things if not all the others? So why would any of those mutations "stick" on their own, for thousands of years until the others come along?

To me, there's much that those who believe in evolution as the only force at play still need to answer.

adaptivecomplexity's picture
But what about significant changes, such as the invention of an eye or an ear? Does one single mutation lead an eye-less head to suddenly have an eye socket, eyeball, optical nerve, and a brain that knows how to utilize it? I don't think so. But if not, what is the benefit of having even one of those things if not all the others?

There are plenty of 'eye intermediates' that exist right now in living species - you can find living examples of just about every possible evolutionary intermediate eye you can imagine. This book is filled with examples.

Sure, but why?

Why would something that is the beginnings of an eye succeed in lasting long enough to actually become one?

Gerhard Adam's picture
You're asking the question as if this were a half-completed project.  Each iteration is sufficient by itself and represents a complete step.  It is useful in the form that it has, so there is no objective to "become an eye". 

Gerhard Adam's picture
Actually if you're really interested, then you need to read about conserved processes and how such developments occur.  A good book is "The Plausibility of Life".

The problem is that people think that something like an eye occurred in a single roll of the dice, by completely random chance and that there couldn't be any intermediate steps.  This simply isn't true.  One of the things you'll find by examining highly conserved processes is that a basic design works and then is adaptable to a wide range of applications without the need to invent anything from scratch.  Just read about the HOX genes and see the role they play in development (as well as how broadly applicable they are across species).

Gary Herstein's picture
Per Gerhard's note, check out the term "exaptation":
http://en.wikipedia.org/wiki/Exaptation

(No doubt I should be slapped for citing Wikipedia, but it will provide a starting point for research.)

Add a comment

The content of this field is kept private and will not be shown publicly.
  • Allowed HTML tags: <sup> <sub> <a> <em> <strong> <center> <cite> <code> <TH><ul> <ol> <li> <dl> <dt> <dd> <img> <br> <p> <blockquote> <strike> <object> <param> <embed> <del> <pre> <b> <i> <table> <tbody> <div> <tr> <td> <h1> <h2> <h3> <h4> <h5> <h6> <hr> <iframe>
  • Lines and paragraphs break automatically.
  • Web page addresses and e-mail addresses turn into links automatically.
CAPTCHA
If you register, you will never be bothered to prove you are human again. And you get a real editor toolbar to use instead of this HTML thing that wards off spam bots.