In a recently published article by Lee et al. the genome of a lung cancer tumor was sequenced and compared to normal tissue. The number of single nucleotide variants (SNV) in the tumor was over 50,000. It is insane amount! The patient had smoked 25 cigarettes a day for 15 years, which makes about one mutation for every 2.7 cigarettes! The study also shows that the rate of mutations is lower for expressed genes compared to non-expressed genes. So, something is reducing the amount of mutations in those areas. It could indicate the presence of a repairing mechanism or maybe the mutations affecting actively expressed genes make the cells non-viable. I recommend reading the excellent blog entry commenting the article.
All this reminds me of a comparison between Linux call graph and the transcriptional regulatory network of E. coli bacterium. DNA can be considered as a source code of life or an operating system of life. Also, genes can be considered as functions in software code. Genes (and functions in Linux) can be divided into three categories: