Get Ready for Software 2.0
Meet Software 2.0, a method of using AI and machine learning models to solve classification and recognition problems without any human input.
Software 2.0, a term coined by Andrej Karpathy, a computer scientist and former senior director of AI at Tesla, is a new type of software that, according to its creator “is written in [a] much more abstract, human-unfriendly language.
Software 2.0 is all about the transition from people writing code to automatically generating code based on observing lots of data, says David Menninger, executive director, software research, at global technology research and advisory firm ISG, in an email interview. “That’s an oversimplification, but it represents the fundamental concept of Software 2.0.”
The mechanics of generating the code are based on artificial intelligence and machine learning, specifically neural networks, Menninger says. “The designer identifies what they would like to accomplish,” he explains. “Then, by examining the correlations between past successful outcomes and various data points, a model can be created.”
Software 2.0 is distinct from conventional software in that it includes the outputs from machine-learning algorithms, such as neural networks. “The idea is that these outputs aren’t written by people, as with Software 1.0, but are instead written by computers,” says Joe Anderson, an associate director at business consulting service Stax in a recent email.
Potential Benefits
Software 2.0’s most obvious benefit is enhanced productivity. “If the code can be generated, it can save many hours of work,” Menninger says. A second benefit is range. “When code is written manually, it only represents the scenarios coders can imagine,” he explains. “If the code is generated, it can represent all the scenarios that are included in the data.”
Yet another Software 2.0 benefit is its ability to learn and change over time. “Since the code is generated from the data, as more data is observed or as the data changes, the models adapt and adjust to the new scenarios that are encountered,” Menninger says. “That’s why it’s referred to as machine learning.”
Software 2.0 isn’t limited to any particular type of application, as long as there are enough data points available to draw inferences about what produces a successful outcome, Menninger explains.
Software 2.0 also promises enhanced flexibility. “For example, you don’t need to reprogram a large language model, like ChatGPT, from scratch if you want it to adapt to new text inputs -- you can just import the text and Software 2.0 will modify the new results in a new version of ChatGPT,” Anderson says.