In 2011, Marc Andreessen penned the now-iconic essay, "Software is Eating the World," where he pointed out how software companies were poised to take over large swathes of the economy. His vision has largely come to pass with software subsuming an increasing percentage portion of the knowledge in a large number of industries. However, as we stand at the cusp of a new decade, there's a new trend worth noting: AI is now eating software in a way that is accelerating this trend by 100-times. Here’s why that's both fascinating and revolutionary.
Traditionally, when setting out to build software, the mantra has been to focus on the MVP - the Minimum Viable Product. The idea is to determine the core features required to gain initial traction in the market, create a product, test it, gather feedback, refine it, and then roll it out. This step-by-step process involves a lot of stages, from gathering feedback to designing, building, testing, and deploying the final product.
Enter the era of Large Language Models (LLMs). With LLMs, the game has completely changed. No longer are developers confined to the rigidity of defining every feature and functionality. Instead, these AI systems come with the promise of infinite flexibility, which equates to infinite features.
The new approach? Building robust backend systems – microservices – which expose their capabilities through APIs. The frontend isn't a conventional user interface but an AI-driven interface powered by an LLM.
You might ask, “So, the interface is now chat or voice-driven. What's the big deal?” The revolution isn't in the interface but in the inherent functionality. LLMs enable software to automatically provide endless features that the software programmers never even considered. Users simply communicate their needs, and the AI translates this into actions, interfacing seamlessly with the backend to perform those actions.
The promise of LLMs is profound. It means that every user can potentially have their personalized version of the software without the developer having to manually code each variant. Let's delve into a practical example to truly understand this.
Example: Splitting a Restaurant Bill
Consider a scenario where you've designed software for handling all sorts of payments. A user wants to split a restaurant bill using your software. The sheer number of ways to divide a bill is mind-boggling: even splits, uneven splits, itemized splits, covering someone’s split, tipping considerations, and so on. Designing such a comprehensive system conventionally would be an exhaustive effort.
User: “I want to split a $60 restaurant bill with Bob and Frank. Bob is paying a 20% tip in cash. Frank and I will split the remaining amount, with him covering 40% and me 60%.”
AI: “Alright, Bob will handle the $12 tip. Frank owes $24 and your share is $36. Would you like me to process the payments?”
This interaction exemplifies how AI can instantly provide solutions to complex problems, no extensive UI/UX design required. More importantly, the software designer didn’t have to worry about the 1,000+ ways to split a restaurant bill, the AI client handles them all and then breaks this down into simple steps for the backend to execute.
This AI-powered shift has groundbreaking implications:
Software will continue eating the world, but now AI is eating software. AI enables almost unlimited functionality on Day 1 of the software’s launch. As developers and businesses, it's crucial to understand and harness this power. In a world driven by customization and real-time adaptability, AI isn't just an advantage; it’s a requirement. Those who do not adopt this approach will be replaced by the new generation of software that does.
The world is being reshaped, not just by software but by intelligent, learning, and adaptive software. It's a brave new world out there, and AI is leading the charge. MPH International designs and builds winning software and they are pioneering the use of AI to address the long tail of features.
Mike Hogan
September 1, 2024