AI and software development: let the revolution begin
“Software eats the world”, famous Marc Andreessen observed in 2011. Yet now, in 2021, it’s time to add a new phrase to his famous truism: âand artificial intelligence eats softwareâ.
Obviously, artificial intelligence will change the software industry on every level: how apps will work, how they will evolve, even how they are sold. But probably the most revolutionary of these changes is the way apps are created.
The AI ââtechnology driving this change is called in various ways, but the phrase “AI-augmented software engineering” is as good as any. You’ll see it perched at the top of Gartner’s Emerging Technology Board:
What is AI-enhanced software development? In short: it is a system of development tools and platforms with integrated AI that enables the creation of applications exponentially faster and better than “hand” coding or traditional development tools. .
Among other benefits, the AI-based system does the heavy lifting of formatting the code; it can even predict or suggest code frameworks.
AI and the citizen developer
Perhaps most importantly, AI allows people less tech-savvy to build or upgrade apps. Opening the doors of software creation to non-technicians is a big disruptor – they far outnumber the slim cohort of skilled developers. While skilled developers will move faster with AI, the large number of non-developers could provide a generational boost to innovation.
Note that Gartner places AI-augmented software engineering at the top of âexaggerated expectationsâ. Granted, this idea is (for the most part) still a hope for the future, and has limits even in the best of circumstances.
The problem is, writing software is like any high-end intellectual endeavor: judgment and the nuances of the human mind are required for high-level work. Writing software is creative, as any good developer will tell you. Just as a song cannot be written by a computer (although âsong-like musicâ can), complex new software still cannot be encoded by an AI system.
On the other hand, an AI system “learns” tremendously, so it can suggest paths that might escape the most creative human. AI-enhanced software collects a torrent of data; it acquires knowledge (or at least data) much faster and more comprehensively than humans. It can’t do the âleapsâ of human developers, but it can model and populate decision trees, or even predict future directions.
AI-enhanced software and Low Code / No Code
The development of AI-enhanced software is increasing alongside the rapid growth of the low code / no code market. A low-code software platform provides an easy-to-understand visual interface that allows non-technicians to create or modify applications.
Major low-code platforms are starting to integrate AI, including Google AppSheet and Microsoft’s power platform. AppSheet uses natural language processing (NLP) to allow citizen developers to simply speak commands for application development. Although in its infancy, this use of NLP is a futurist’s dream – creating software is as easy as talking to a computer.
AppSheet uses AI and ML to build predictive models in an app using the app’s own data store. Remarkably, Google claims that this ML intensive task does not require any prior ML experience on the part of the developer.
Likewise, Microsoft’s Power Platform includes Power Automate and Power BI modules to enable a non-technical developer to design and automate in-app analytics systems with relative ease. AI really opens the doors to a whole new group of citizen developers.
This larger group of âdevelopersâ is needed. Embracing the development of AI-enhanced software is a necessity for businesses to stay competitive. Developers are expensive and scarce: Labor statistics in the United States indicate that there was 1.4 million IT jobs that were not staffed in 2020. Companies regularly face challenges in hiring software developers.
Long-term effects of augmented AI
Clearly, AI-enhanced software will dramatically shape the future: When writing software is as accessible as writing a detailed report, the pace of business will change in ways that are not entirely predictable. . Some reasonable assumptions:
Data explosion: Most applications created with AI-assisted tools are likely to extract, manipulate, or present data. Any knowledgeable staff member will be able to find new ways to use data for competitive advantage; your average salesperson will edit apps to learn more about prospects. The end result is that data mining will grow even more parabolically than it is today.
Security concerns: It is reasonable to assume that lower level employees will not be able to code an application that will allow a major cyber attack; to avoid this, AI-enhanced platforms will – we hope – have “safeguards” to block cybersecurity vulnerabilities from novice developers. Yet with so much larger Citizen Developer Brigades building so many complex structures – more and more advanced as AI progresses – it’s likely we’ll see security holes.
AI builds AI: To give AI a boost, AI augmented development platforms will be used to create more artificial intelligence capabilities. The process will fuel self-referential exponential growth: a tool that uses AI will create AI products, which in turn will enable faster and more advanced creation of AI-powered applications. It may be a dizzying prospect. It is difficult to say where the future takes us in this regard. But when futurists talk about âthe singularityâ – when machines gain true independence – then this âAI builds AIâ aspect clearly suggests it.
Democratization of Tech: Certainly, the biggest effect of AI-enhanced software is the democratization of software development and technology in general. Cloud computing has made it possible for small businesses (even startups) to rent a data center and thus compete with much larger companies. Likewise, AI-enhanced software platforms will enable small businesses to build competitive infrastructure at scale.
Conclusion: We will come back to today’s non-AI-based software soon and ask ourselves how did we do anything with these apps?