HACKER Q&A
📣 thephyber

What will the far future of programming be like?


I recently watched the 2003 Bezos TED talk about "the internet is currently in the 1906 of electricity". I think current programmers are still designing factories around the water wheel + drive shaft paradigm, but with newer technology + innovations (cloud/distributed computing, CICD, neural nets), we should start to redesign the "factory" of software around these industry changing technologies. Elon Musk likes to say that there is more design and engineering that goes into the factory than the things made by the factory.

What do you think the far future of programming will be like (on say a 50 year timeline)?

Examples:

- How will we enter requirements/specs? - How will we write documentation? - What classes of tools are we missing now that are yet to be developed? - What new Human Interface devices will become common for programmers? - What business processes will have to change to get us there? - How will we tame increasing the complexity of computing systems? - How will we hack our bodies/minds?

My prediction: I tend to think programmers will define a strategy (class/function interfaces, types, unit tests) and a new generation of IDE/compiler will generatively write the code which fulfills these requirements. This is already available for AutoCAD (they call it Generative Design).


  👤 EmptyAbyss Accepted Answer ✓
I've seen a lot of guys talking about how some flavor of visual programming (the flavor they're developing) is the future, and those typewriters that everyone uses are the stone age of human-machine interfacing. They clearly don't want to write code quickly. Keyboards are good enough, and better for experts. There are pros and cons to both point-and-click and move-finger-and-press flavors of interfaces, so in the long term, I can see both becoming usable to view and write the same code. But really, that's superficial.

Things will become easier to use, architectures will become better thought out, and integration of technologies will become tighter. Maybe speech-to-text (or thoughts-to-text) with eyetracking will become all the rage for writing code with a new-age Vim, I don't know. There will probably be newer better programming languages, and possibly AI-based tools for converting between languages.

My prediction is about more and more choices being deferred to the computer and to runtime. Having both human-written code and learned portion of code will just be a normal thing. Programs will be able to change without humans having to do anything, though only in ways explicitly programmed in by humans. Researchers will research more and better ways to write down the computer-usable everythings that replace the old somethings, and it will slowly trickle down to other people's cultures. Eventually, slowly, we'll figure out how to make every part about software automatically learnable end-to-end, including learning, and then we'll say "we are singularity now, boys" and "fuck, go back" then repeat.


👤 AnimalMuppet
I think the future will continue the trend of better and bigger building blocks.

I don't think that programmers can manage more complexity. Part of the answer is better designs and architectures. But I think even more of the answer is better pieces to build from.