One of the great moments in the history of computing, was the incorporation of graphical interfaces as a mode of interaction with users. This took some time, and actually it was the sum of several scenarios which made this milestone as an important one. For example: computers were beginning to make large scale and because of this, they were cheaper; that allowed Bill Gates’s idea “A computer in every house” to begins to became a reality.
This is also important, until that time the computers were controlled mostly by command line interfaces. Like it or not, this limited lot the use of computers. Today we can say that it was only attainable by “nerds” or “geeks”. I prefer to add it in context and say, those people used to interact with a PC had to know commands, and besides those commands a lot of command arguments. Also was necessary to have a good technical knowledge on how computers worked so they can get to an abstraction level which allowed the to work.
Note: Hackerman was ahead of his time.
So well, graphic interfaces started to became mainstream and everything changed significantly. Once a user understand the concept of windows and buttons, everything was more easy. A color palette picture in a button, probably took us to an application to “paint and color”. If you knew what was a printer, you only had to find the printer picture and you’ll get to the print queue. This time, it was also that took the first step to begin to “bury” all those Mainframe applications. Many of those applications were controlled from a console, and they were not buried. What usually happened is someone created “layers on top of them” to make life easier to users.
This brief summary focus, is all this user interaction with computers was a 2 dimensions user experience. We could probably named these new GUIs as 2D Graphical User Interfaces. For a few years, and thanks to advances in hardware, we started to see that we have access to 3 dimensions user interfaces. Virtual reality and augmented reality devices, like Oculus Rift or Hololens, open us a new range of possibilities to be able to interact with computers.
Although, the change towards them 2D GUIs is produced during a period of several years, I think the change to the 3D GUIs will be much more faster. Today world is moving faster and the speed with which emerging new options will make this a reality long before what we think.
Within 2-3 years anyone who create apps which interact with users will need to have 3D knowledge
Caution, I don’t mean 2D apps will not exist any more. We will have a coexistence period , maybe a long time for 2D and 3D worlds at the same time. However, the future will be 3D apps. In my own life, I dedicate some daily time to improve my skills in Unity3D. Unity3D is a tool that was initially thought to create games and which today allows us to create many different types of user experiences: games, education tools, control panels, etc.
Bonus: 2D and 3D apps will continue to live side by side for a long time. As an example, today we can see how we live between 2D apps and command line tools. The geek devs likes to use GIT and prefer to use it from a console. Also, some PowerShell IT managers use PowerShell directly from a console. And it’s been over 30 years since the born of 2D GUIs.
It most likely in 2020 we will a device like the Hololens to work. We will interacting with gestures with 2D and 3D apps, and maybe a wireless keyboard to continue doing in a console of GIT commits.
Greetings @ Toronto