Every time you watch a video on YouTube, send a text message on your mobile phone, or perform just about any other action involving a computer of some sort, you’re benefiting from a process known in computer science as abstraction. Both the no-code revolution and Sofy are also a result of this process. But what is it? Let’s take a look.
A peek under the hood
When you use an operating system like iOS and thumb through your text messages, you’re not paying attention to what is going on behind the scenes. And chances are that there’s no reason for you to do so—your user interface provides you with the tools you need to complete your task. There’s no reason to think about the ones and zeros happening ‘under the hood’ while doing so, just as you wouldn’t think of the molecules of a spoon as you use it while eating your cereal.
The user interface you’re using to send text messages, receive photos, and view videos are all results of abstraction. While you may not know it, you are impacting complex systems with every choice, reaching all the way down to binary code—and far beyond. And that’s good, because that information is irrelevant when all you want to do is send a text message to a loved one. It would simply be a distraction.
Down the rabbit hole
Abstraction is by no means a new development: While the advent of operating systems like those developed by General Motors (such as GM-NAA I/O in 1956) or the better-known operating systems produced by Microsoft (MS-DOS in 1981 and Microsoft Windows in 1985) make for some of the best-known examples of abstraction, the history of computing can be seen as layer upon layer of abstracted processes. Code itself is an abstraction of more minute processes. Today, what-you-see-is-what-you-get editors, such as those one can encounter on popular website builders, abstract away the need to view code altogether.
In short, abstraction hides complex processes from users while they perform a task, whether it’s watching a YouTube video or producing code with object-oriented programming languages like Python or Java. As computer processes have become more complex and more and more a core component of our daily lives, the need for everyday users (that is, non-specialists) to intuitively direct machines to perform common is increasingly possible. This is all possible because of abstraction.
No-Code Revolution or No-Code Evolution?
A natural outcome of abstraction is the eventual removal of the need for all but specialists to understand any sort of coding process, with users performing advanced and complex tasks entirely by way of human-first interfaces. The benefits of this are many: For one, in terms of automated mobile app testing, the removal of the necessity for manual coding not only greatly reduces the likelihood of human error but also eliminates the need for a team’s specialists to perform these tasks at all, freeing skilled developers up for higher level projects—and saving teams time and money.
While the contemporary rise of no-code platforms has been repeatedly termed the No-Code Revolution, it is just as appropriate to refer to it as No-Code Evolution: As abstraction marches on, developers can expect the process to repeat itself again and again. Sofy itself is a product of abstraction, allowing you and your team to perform automated mobile testing with the speed and efficiency that would have been unimaginable only half a decade ago, and all with physical devices.