3 ms·
In 2040, computer programming as we do it today will be completely automated. There will be two main groups of software developers: those who develop machine le
by p1esk 6y ago
In 2040, computer programming as we do it today will be completely automated. There will be two main groups of software developers: those who develop machine learning models that generate computer programs, and those who translate business/product requirements into a design specification and then translate the specification into a plain English description, which is fed into a machine learning model. Entering the plain English product/feature description into an ML model will be an interactive process - the model will ask for clarifications whenever something is not clear enough to implement. At that point writing Python code will be just as arcane and tedious as writing assembly code today. ML models will generate better Python (or Rust or whatever) code than most human programmers, just like today a C compiler generates better assembly code than most human programmers. Eventually ML models will be trusted enough to produce machine code directly, making human readable programming languages obsolete.
I predict we will see first systems like this within 5 years, but it will take much longer (up to 20 years) for these systems to become reliable enough to be adopted on a mass scale. This will be similar to the adoption of self-driving cars.
p.s. this view assumes there is no AGI developed by 2040.
- coolvision 6y agoI'm no sure that anyone would use a machine-written code from a specification for a fusion rector, spaceship, or industrial robot software...
- p1esk 6y agoWould anyone use a neural network to drive a car on a freeway? Oh wait...
- thorin 6y agoPossibly, not sure how long you've been the business but people have been saying this at least since COBOL and 4GLs were being introduced in the 80s. Some kind of programming may become less popular but data manipulation and wiring will still be required as well as tooling to facilitate these new models.
- p1esk 6y agoCould those people do something like this with their COBOL: https://twitter.com/sharifshameem/status/1284421499915403264 https://twitter.com/sharifshameem/status/1284421499915403264 ?
- sdevonoes 6y agoDebugging those ML models will be a nightmare!
- p1esk 6y agoIt already is :)
- pjnz 6y agoYep, I've been thinking along these lines. We're going to be gathering a huge amount of data from source, program execution and other sources and applying machine learning to this.