The DNA has been often called the code of life. Indeed, it stores in its strands the instructions to build proteins as well as instructions "when" to build proteins.
From the point of view of an engineer it is not that different from a tape with coded instructions in the form of A-C-G-T letters rather than 0-1 (actually one should say that the basic unit of information in DNA is a triplet of pairs, but the concept is the same).
Hence, one could imagine to use the DNA to code information of any other kind. As long as the code is agreed upon and one has the appropriate coder and decoder DNA is as good a transistors made in silicon.
Actually, for certain usages it can be better. We can recover the information of extint species through fossil DNA after million of years. None of our storage systems can last this long (although there have been a few studies in using crystals to permanently store information).
Hence it should not come as a surprise the news that Microsoft has bought 10 million strands of DNA to experiment on its use for storing information.
DNA is not just extremely resistant over thousands of years. It can also pack an amazing amount of data on the head of a pin. Microsoft researchers have managed to store an MP3 file onto a DNA strand achieving a density of 2.2 PB on a single gram. And now they are looking at storing at a density of 1 billion TB per gram!
The DNA strands are synthetically produced and there are now tools that can be used to change the bases in the strand to code whatever information you need.
Be aware though, that although you can store an MP3 file with an unlimited (for all practical purposes) lifetime, you want be able to play that MP3 file directly from the DNA strand since it takes quite a bit of time to read the strand, a few minutes at least. To long to listen to music! So, do not expect to see a futuristic iPod running on DNA.