So, for everyone here who hasn't studied molecular biology,
The flowchart in the human body from DNA to protein goes like this: DNA -> pre-mRNA -> mRNA -> polypeptide sequence (protein).
It is strangely similar to a computer system. The DNA is similar to the 0s and 1s of binary of data (except it is base 4), the pre-mRNA is a chunk of data from the DNA which is sent off to processing into mRNA. The mRNA is then translated into proteins via codons in the sequences (sequence of three DNA monomers representing one amino acid, think of an 8-bit character from ASCII). Proteins are the physical workhorses of the cell and are similar to compiled objects in an object oriented language. The big difference is that there's no human programming language for gene or protein construction; evolution works stochastically so it's not necessary.
Anyway. What I'd like to talk about briefly is the process of turning pre-mRNA into mRNA. pre-mRNA contains sequences of exons and introns. Exons contain expressed series of information, while introns are generally excluded from being translated into a protein by being cut out of the pre-mRNA by intracellular machines known as spliceosomes. Think of it like a Mad magazine cutout. To get the punchline, you have to fold over a big chunk of the image. That's what your cells do to pre-mRNA when they splice it to become mRNA which is translated by ribosomes into protein.
Cells are smart creatures thanks to millions of years of evolution and use this to their advantage. Let's say a piece of pre-mRNA has a sequence 1EEEEE 2IIIII 3EEEEE 4IIIII 5EEEEE 6IIIII 7EEE, where I represents introns and E represents exons. It was orginally thought that this sequence would only yield one protein, in which the exons would be joined after the removal of introns to give 1EEEEE 3EEEEE 5EEEEE 7EEE. But that's not what usually happens. Instead, the multiple series of sequences actually can be processed in other ways to yield different mRNA, like only appending either 5EEEE or 7EEE at the end. This gives two different proteins in a form of data compression very similar to file compression algorithms like zip. Large multicellular organisms take great advantage of this: the gene Dscam from fruit flies, critical for brain development, can code for over 38,000 different proteins (termed isoforms). Occasionally, even introns can be become translated (especially in the case of cancer cells). This is why the human genome, when compared to microscopic organisms like Amoeba Dubia, may seem very small. In actuality, it is very highly compressed and refined.
This intelligent splicing is all regulated by the trans- and cis-acting elements. Trans-acting elements are external factors such as binding proteins which cause a piece of pre-mRNA to be preferentially spliced or avoided (activation or repression), while cis-acting elements are sequences of ribonucleic acid inside the piece of pre-mRNA which promote or diminish splicing (enhancers or silencers). For instance, by binding to a trans-acting binding protein, a given sequence of pre-mRNA behaves in a cis-acting fashion. At a detailed level the regulation of pre-mRNA splicing becomes fairly complex and there is still a large body of research that needs to be conducted before a precise understanding is established.
So, why's this all important? It's believed that 15-50% of human genetic disease is resultant from errors in splicing. For instance, a single amino acid mutation in the intron for the gene of TPH1 (tryptophan hydroxylase type-I) is highly correlated to the development of schizophrenia. While not being a part of the actual translated protein, it may serve as part of a cis-acting strand in the pre-mRNA that regulates the splicing of the gene. Incorrect splicing is also strongly implemented in the development of cancer.
Further reading:
Understanding alternative splicing: towards a cellular code