The alternative technologies, sometimes called third generation sequencing are nanopore based (PacBio and Oxford Nanopore technologies), they work by pulling long DNA molecules through tiny holes and read the sequence directly, more specifically, they read a couple of base pairs at a time and infer the sequence from the current between the sides of the pores. This is very error prone and the (around 1 in 10?) random errors are corrected by sequencing every part of the genomic area of interest multiple times.
To be clear, most sequencing experiments (in research and in the hospital) are designed to look at variations we can understand and thus the "words" (we call them reads) are aligned against "the" reference genome (as opposed to assembling de novo), which is the genome for as far as we understand it (the last official version is from 2013 but is updated regularly with new parts). Typically, a significant portion of the reads a sequencer produces cannot be mapped to the reference, probably as a results of unmapped regions indeed or perhaps deviations between the patient and the reference genome, this is of course even worse in patients with tumors with unstable genomes. This field still has a lot of challenges to tackle.
Nope, not randomly. Having a random error profile is the best case. In reality these machines suffer from systematic errors, especially the Illumina ones. That means that they always fail to read through certain pieces of DNA, or make the same error every time.
On a tablet, I highlight and pull down. It grabs it all and I can then read it. It is a very awful workaround that impacts the site's usability.
Imagine you have a string of length 3 billion made by randomly choosing from 4 characters. Like this
you get to randomly sample 1 billion[3, page 7] overlapping substrings of length 200[3, page 7] with .1% of the characters randomly changed[3, page 8]. Trying to find the original string from this is technically an undecidable problem. If there's a sequence 400 characters long that repeats multiple times, how could you know if it repeats 5 times or 50 times? (this would be unlikely to happen with random.choices() but DNA isn't random). This is called sequence alignment and it's one of the hard problems in bioinformatics[4].[0] https://docs.python.org/3/library/random.html random.choices() was added in Python 3.6
[1] http://www.biology-pages.info/B/BasePairing.html source for `weights`
[2] https://en.wikipedia.org/wiki/Human_genome source for 3_234_830_000 (python ignores underscores in numbers)
[3] http://sci-hub.io/10.1111/j.1755-0998.2011.03024.x illumina is the most popular producer of genome sequencers
[4] https://news.ycombinator.com/item?id=5123377