Future of programming is not written, just like no future is. But it will be shaped and created how we want it to be. What is interface problem and how solving it will change the future of programming. Let’s talk about that.
Interfacing with machines
We use many digital devices everyday like our phones, laptops, ATMs, car infotainment and so on. The way we communicate to these machines is called interfacing. There are different ways we interface with machines. Through touch for example. We use gestures like tapping, scrolling and swiping, we write texts, we use mechanical buttons and Sometimes we use voice commands. there are other ways of interfacing as well but the thing is they are slow compared to what ways we could interface with machines. Like using our thoughts instead of our thumbs.
Interfacing is a little different for programmers
Programmers write text to explain their ideas of how a program should be to the computer. When we write code, we think about what we want different components of a software to do then we put it into code. We lose a lot of time putting our thoughts into code. The entire programming is based on this approach to use writings (code) to explain our purpose to a machine. Hence we have programming languages that are text based.
Other ways of Interfacing for creating a software
Some may say this is a good approach. I think it’s the best approach we have right now. But we all know it’s a slow process to interface with a machine through code (text). And because of this problem (slowness), there were other solutions or attempts to make this process faster by going away from interfacing through code (or text). This is why we have WYSIWYG services. There are services like website and application builders that allow developers to ui elements to interface with the machine and communicate their thoughts on how that application should be. But these services are not fixing the problems, they’re using a different type of interfacing which is still not directly communicating the developer’s thoughts to the machine.
It’s fair to say that WYSIWYG services have their own problems. They have their use but they are much much less reliable than programming languages.
Interfacing directly
By Direct interface I mean we think and the machine interprets that. We don’t need to learn a language to speak to the machines. And they don’t need to learn our language to understand what we want. We just interface with them through our thoughts directly. Thoughts are much faster than writing code. Of course it will not just revolutionize programming but also our daily use of machines. we may no longer need keyboards or touchpads and touchscreens anymore.
Let’s even go further
Imagine if you could directly interface with an AI. but not in a way that only the AI can understand your thought but you can understand AI as well. Both your thoughts will be in sync. Imagine the power we’ll have to create or do anything. We will have 10 times the power and ability to create and achieve what we can achieve today. Software ideas can be implemented in a fraction of what costs us today. Many development problems that we have right now will not exist anymore and The world will certainly progress much faster.
Final words
We will make the Future. Our thoughts and imaginations will create the Future of programming. In this post I only talked about how solving a single problem will revolutionize programming. But there are many other problems to be fixed and many other ideas to be implemented. Write in the comments what you think the Future of programming would be like