
When I was younger, my father and I played a computer game called Myst. In Myst you take the role of an unnamed character that discovers a book containing a world. By touching the image on the first page you are transported into the world described within that book. Throughout the series of games (and subsequent novels) you learn that an ancient society developed the ability to write worlds into books with a special language that made words into reality. I remember when it first occurred to me that the authors of this video game had accomplished the same feat that the ancient race had — the ability to create worlds.
I soon learned that I too could make worlds that were only limited by the scope of my own imagination. The tool for building these worlds was a computer and a programming language. I wanted to become a maker of worlds for a video game company, but soon found that the tools were difficult to acquire and even more difficult to learn. So, I looked for a way to build up my knowledge and found HTML and CSS — languages for websites. I couldn’t produce 3 dimensional worlds, but I could create very useful 2 dimensional ones. This is what I still do today. I’ve watched and attempted to catch up with all of the progress that computers have made since my early days of web development. What I and many others have noticed is that it doesn’t stop, it gets better, and it gets better faster.
Our ability to create virtual worlds with pure information and increasing complexity, resolution, and speed, ultimately leads us to some questions:
- What can we do with these virtual worlds?
- Will we be able to make worlds or characters that are indistinguishable from real ones?
- Is it possible to manipulate reality with pure information, in the same way that we do with virtual realities?
The best I can do is make educated guesses about these questions, but there are three paradigms likely to happen in the near future that could shed some light on them.
The first paradigm is augmented reality. In the near future almost every product will have a computer in it. Soon after that, all of those objects will be hooked up to the internet. We will use this internet of things in combination with virtual reality programming to create an augmented reality with additional information about the world overlaid seamlessly onto it. It’s useful while considering this to imagine your computer screens are windows into a virtual world. Now take away the screen, but leave all of the information. While walking down the street, you will be able to see or know what your coordinates are, or where the nearest coffee shop is. This isn’t surprising, we already have these capabilities in our cell phones. Augmented reality takes that two inch screen, blows it up full size, and disappears in the process.
Beyond overlaying virtual information, there are potential ways to create physical objects with programming. Cellular biology and engineering — the second paradigm — each study the relationship between DNA (the program) and the cellular components (the hardware). Cells are programmable constructors — they build physical parts from information in the DNA program. In computer terms, that would be like writing a program, burning it onto a CD, and then watching the CD build a computer around it, autonomously . DNA programs can be written and then executed in a similar way to computer programs, but the results are physical (and incidentally alive). As we speak, scientists are reverse engineering the mechanics of thousands of life forms. Research into genetic programming is well underway, and we are already starting to see the possibilities of coding for physical construction.
The cellular engineering revolution will give us a leg-up on the third paradigm, nanotechnology. As mentioned above, we are reverse engineering the parts built by millions of years of evolution to make our own molecular machines. However, the real breakthrough will be creating our own nanotechnology from the ground up. (I won’t go into it here, but there are some serious doubts about the viability of some nanotechnologies.) If we can overcome the inherent dangers and difficulties of nanotechnology, we will have the ability to transform reality with pure information. Nanobots will be able to recreate almost any object with raw material and information to atomic precision. This is possible because a nanobot is simply an atom mover. It can pick one up here and put it there. When atoms can be rearranged with information, virtual augmented reality and actual reality will intermingle and become indistinguishable. Software and hardware will merge.
It’s difficult to predict when these advances might happen. Computer programming of virtual realities is already possible. Current desktop computers can create very convincing special effects that can quite easily pass the scrutiny of the average human eye. The genetics revolution is in it’s infancy but is already showing enormous promise. It would be wise to watch genetic engineering closely as it’s advances will tell us much about the timetable for advancements in nanotechnology.
We are in a unique position in history. We have the power to create worlds, and our powers are increasing exponentially. Consider how lucky we are to be given that privilege. Computer programming is becoming the language, and we the authors of reality.