Great piece, continuing to consider
By Samuel Greengard, Commissioned by CACM Staff, March 1, 2022
The history of computing is rife with advances that have made things easier for the common user. Graphical user interfaces (GUIs), the computer mouse, drag-and-drop functionality, and Web browsers are just a few examples of how complex processes have been simplified. Yet for decades, software development has remained largely outside the mainstream. Because most people lack the knowledge and ability to write computer code in C++, Python, Java, or other languages, they typically find themselves locked out—or they must hire someone to create the desired functionality.
That is beginning to change. No-code platforms are on the rise, including in areas such as automation and artificial intelligence (AI). The appeal is not difficult to understand. "No-code democratizes software development. It provides value in many areas where custom code is too expensive, slow to develop, and hard to maintain," says Isaac Sacolick, author of Driving Digital and CEO of business consulting firm Star CIO.
Behind the Lines
The idea of using visual elements to generate code is not particularly new. In 2003, WordPress introduced a drag-and-drop interface for building Websites. Not surprisingly, the concept has continued to evolve and expand. Today, no-code platforms such as Google's AppSheet make it possible to build Web and mobile apps in hours or days without any prior coding knowledge. Of course, coding continues to take place, though the process happens in an automated way behind the scenes. While the need to understand data structures and how to generate a useful app have not gone away, there is no longer a need to wear a data scientist hat. No-code platforms can grab data, classify and encode data, and use machine learning to spot relationships.
"No-code changes the game. With the popularity of smartphones and the Internet, there is a need to develop mobile apps and Websites quickly," says Ruben Martins, an assistant research professor at Carnegie Mellon University. "No-code frameworks aid individuals, but also help businesses build applications that can increase customer satisfaction and lower the cost of development."
Today, people are turning to these platforms to manage a wide array of tasks, including scheduling, claims and paperwork, tracking deliveries, viewing sales prospects, and checking job boards. No-code applications can handle text classification from unstructured data and scan financial transactions for fraud. In addition, "No-0code can do things like data cleaning and data transformation," Martins says.
Out of the Loop
One way to view no-code is that it's simply another level of abstraction from machine language. Just as punch cards gave way to coding languages that could handle various tasks through software, no-code pushes the boundary further. It's also fundamentally different than low-code platforms that require coding knowledge, but automate code generation.
"It is the next logical step in extending software development to a much broader universe of users and use cases," says Jonathon Reilly, co-founder and chief operating officer of no-code platform Akkio. "The idea isn't to address every need and all corner cases. The goal is to make a lot of common tasks simpler and easier and empower more people."
Akkio is one of many companies looking to gain a foothold in the no-code space. It focuses on AI and automation, which typically require technical expertise to develop. For example, with drop-down boxes and various clickable elements, a user builds an app to, say, flag negative or positive reviews as they pop up with a 90% or even 95% level of confidence. The platform pulls data from spreadsheets, customer relationship management (CRM) applications, and databases, and applies machine learning to deliver a finished app.
No-code is not suitable for every situation or environment, Martins says. The biggest issue is that no-code platforms, at least for the foreseeable future, limit what users can build. These tools provide a limited set of choices, they are typically not scalable, and users do not have access to source code. "Developers will always be needed, since complex tasks cannot be automated. However, no-code and low-code platforms could help developers have more time for ideas since they can automate repetitive tasks," he notes.
Nevertheless, the evolution of no-code marches on. Martins also is exploring more advanced ideas such as program synthesis, a framework that advances no-code further by using natural language and other inputs to automatically generate code that matches a user's intent. For example, one program, Copilot, lets a person write what he or she wants to do in plain English, and the AI framework handles the coding. It's essentially a no-code framework for programmers.
Concludes Martins, "Until recently, the idea of having a computer program write another computer program was seen as a dream. It is now becoming a reality. …The end goal is to empower everyone with the power of programming."
Samuel Greengard is an author and journalist based in West Linn, OR, USA.
No comments:
Post a Comment