In these AI days, it was just a matter of time before the computer starts doing the job of the software developer. Computers are already thousands of times better than us to play chess for instance. Chess is a problem of “perfect information”, so is creating software.
In chess the objective of the game is to check mate the opponent. Describing this objective to a computer is easy – And once you have accurately described your objective to a computer, its intelligence can always outperform humans in all cognitive tasks, as long as it is a task with “perfect information”. Implying if you can accurately describe your objective as a software developer, a computer can outperform any software developer easily, and implement your software much faster, much more accurate, and literally completely bug free. Describing the objective for a software system is actually not that much more complex than describing the objective in chess. It’s really just a task of having a formal way to communicate specifications.
I have created a software system that creates software systems. I refer to it under the name of Camphora Five, and it’s one of the modules in Phosphorus Five. It allows you to declare your data, for then to have the computer create your code. You can see an example of usage in the video below.
An acquaintance of mine, which is a really skilled developer for the record, once bragged about how he had created something resembling the above system in 12 hours. 12 hours to implement the above is quite impressive for a human being. A qualified guess would be that most developers would need weeks to implement something similar. However, my software system does it in 2 seconds, after I have created the specification – And it takes me 2 minutes to create the specification for it! The result becomes functioning code, 100x more responsive, with a fraction of the bugs a human being would create.
The above example of course is only the beginning. Currently my system can only create simple CRUD web apps, with one database table, and some charts to display statistics on your data. However, all problems that can be accurately and formally described, can be accurately implemented by a computer – In a couple of seconds! Implying the future for software developers is destined to change, and I intend to prove it, by creating hooks for all the most common specification types that exist, for then to let my computer implement these types of systems automatically. It’s simply the destiny of Hyperlambda.
Camphora Five even creates rudimentary documentation, an API, extension hooks, “UserControls” (widgets as I refer to these as), and everything you’d normally only expect a human being to be capable of creating. And it creates 2000 lines of code, in 2 seconds, without producing as much as a single bug in the process!
For a decade I have tried to make software development so easy that “grandma could create software”. Not realising that in the process, as I were about to succeed in my goal, this task also became so easy, that even a computer could do it. Leaving the software developer with only simple customisation tasks to apply after the system has been generated – Effectively eliminating 98% of a developer’s workload.
It looks like software developers are to finally get some work/life balance … 😉
If you’re interested in helping me in this process, feel free to submit a ticket suggesting a formal specification type for me here …