The Defense Advanced Research Projects Agency (DARPA) is a US agency behind some of the world’s most spectacular and sophisticated military technologies. A few years ago, DARPA has sponsored the development a cheetah robot and published a video of it showing a metallic four-limbed machine galloping on grass field. The video soon became viral on YouTube and raise debates about the moral aspects of deploying such beast in a real battlefield. But that is not our topic today. What I am going to share today is yet another crazy and seemingly impossible project undertaken by DARPA, developing software that doesn’t require an update for a century!
As users of computers, we think of software updates as a fact of life. Just like a living being, any software from an anti-virus to a video game has expiry date which can only be extended with an update. Software updates, nonetheless, wouldn’t last forever. Once the developer loses interest in the software, it wouldn’t be long before it becomes outdated and soon cease to function on new platforms.
DARPA, however, wants to change that by making software systems that can function for more than a century without getting updates from their developers and despite of upgrades in hardware. The four-year research has been recently announced by the Pentagon’s mad science department which is intended to figure out what algorithms are needed to build such software that can dynamically adapt to changes.
The project, which was named Building Resource Adaptive Software Systems (BRASS), is expecting to be built from the ground up and is going to be one of the agency’s biggest challenges. If succeeded, the project could pave the way for a whole new area of programs with longer lifespans and easier maintainability.
According to DARPA, the main purpose of the BRASS project is to realize the fundamental advances in the design as well as implementation of survivable, long-lived and complex software systems that are robust to changes in the logical and physical resources provided by their ecosystem. DARPA has begun accepting several research proposals for every aspect of the project from which the agency will find the most promising to fund.
DARPA is hoping that the project will ultimately lead to the development of military computers that don’t need to stop running for updates, as the process can be costly. This might seem like a terrifying futuristic idea(just like the cheetah robot), bearing in mind that it aims to create software that can evolve on its own (just like those villainous programs and robots in movies).
As a developer, I don’t find BRASS as terrifying but rather a very interesting and revolutionary concept. Since antiquity, we’ve been building things that have survived for centuries such as bridges, aqueducts, castles and other structures. If some of these structures can survive for decades with little or no maintenances, why wouldn’t software do?
The answer is; software are not intelligent enough. If we look back at modern history and see how computers evolved from giant insanely inefficient machines to compact and sophisticated devices, we will realize this evolution of computers will continue as long as we are live. Therefore, the chances that outdated systems (no matter how intelligent they are) can adapt to new technologies are next to impossible, if not impossible at all.
Software after all is not like a dumb aqueduct or a bridge, it has a human element engrave deep within it and as far as we know, human mindset, ideas and knowledge are in ever continuing change.