The near-future of programming
Tags: futurism, javascript, webdev, programming
Published: 2020-07-08 03:04:15

*Predictions for the years 2021-2031* :rocket:

### SOFTWARE

#### Web
WebAssembly is finalized with easy to use libraries for DOM access. The tyrannical reign of JavaScript is dead. Other compiled languages become popular for making new websites. JavaScript remains a solid contender due to huge amount of packages and documentation already built out, as well as a large community. But due to the increased competition JavaScript has to become more innovative - it starts merging more sorely needed libraries into its featureset. For example, I bet Typescript will become part of JavaScript, or natively supported by browsers[^1]. 

[Web components](https://meowni.ca/posts/web-components-with-otters/) (think easily shareable custom html elements) become popular. They have recently become supported by all browsers so you can already start using them!

A new frontend framework becomes the new hotness, replacing React. React is still commonly used, but framework X is the first choice people turn to when designing new projects. This framework may use the same react-style intermingling of HTML & CSS within JavaScript. I don't have any specific reasons for this prediction, but I know that frontend tech evolves at a rapid pace. Frameworks can only stay in power for so long.

Progressive Web Apps become a popular choice for building cross-platform apps that work on desktop and mobile. They already [support most of the basic native features](https://whatwebcando.today/) and can be published to the play store. Companies [have had success](https://www.pwastats.com/) with them so it's only a matter of time before they get more popular.

#### General

AI improves, but there is no singularity, to the disappoint of futurists everywhere. AI does not replace human intelligence, but instead complements it. We have already seen this with smart speakers and services like [Kite](https://kite.com/) or [Tabnine](https://www.tabnine.com/). The number of fields AI can be effectively applied to will continue to broaden. Computer Scientist Garrison Price says, "Everyone thought that ML would overtake people in decision making and problem solving. The world is slowly realizing that isn't happening. Human-Machine teaming will be the future. In the short run you'll see ML/AI boosted workflows that allow for people to be more productive and skip the tedium."

Devops continues to be increasingly automated. Large enterprise companies _finally_ finish migrating most of their stuff to the cloud. [Kubernetes](https://www.digitalocean.com/community/tutorials/an-introduction-to-kubernetes) becomes widely popular.

[Rust](https://www.rust-lang.org/), ironically, gets better over time. More and more people use it over C++ / C.

Linters become more comprehensive. Linters today fix a few code smells and that's about it. Linters of the future would also catch bad design patterns, overcomplexity, security flaws, and a comprehensive set of code smells and bugs. Basically code quality CI tools would become available as editor integrations.

Code becomes easier to evaluate on the fly. Live unit testing becomes a popular feature of major editors. Tools for rapid prototyping like [AREPL](https://github.com/Almenon/AREPL-vscode), linqpad, [repl.it](https://repl.it), jupyter notebook, and [live-php](https://github.com/ziishaned/live-php) become more popular, although real-time coding remains a novelty. 

Software becomes even more integrated into mission-critical hardware like cars, rockets, planes, and more. As a consequence of that security breaches and bugs can literally be deadly. 

Live OS patching and oauth along with security linting described above result in a safer internet. Security flaws become less common. However, when security flaws do happen they tend to be exploited in big ways. Nation-states go to extreme lengths to create hacks and when they get in they exploit vulnerabilities and privilege escalation to the fullest. Basically, less minor hacks, but the hacks that remain become more serious.

Half-Life:Alyx proved that major video game publishers can have massive success with VR, in addition to [adding hundreds of thousands of players](https://www.roadtovr.com/steam-survey-vr-headset-growth-april-2020-half-life-alyx/) to the VR market. Other major game studios decide to jump in on the market, planning triple-A titles for VR. After years in development they are released to massive excitement. Along with VR hardware upgrades this motivates consumers to buy VR, in turn expanding the market for VR software. This creates a feedback loop and a VR software renaissance as it becomes the new hot market similar to mobile apps.

CGI for the average TV show becomes on par with full-budget movies today. No more uncanny valley effect!

Python finally settles on a package management framework as pip gets the ability to have fully pinned and isolated dependencies ala npm. Many python packages start typing their code, leading to a python typing renaissance. However, the type system lags behind typescript in terms of features and ease of use.

A brand new language starts becoming popular. There's so many options here ([Crystal](https://crystal-lang.org/), [Elm](https://elm-lang.org/), [Elixir](https://elixir-lang.org/), [Skip](http://skiplang.com/)...) there's no way I'm going to guess the right one. I could pick the last thing I read about ([V](https://vlang.io)), but as long as I'm going to be wrong I might as well be wrong with style! [Rockstar](https://codewithrockstar.com/) inexplicably becomes popular in the year 2027.

### HARDWARE
NVM SSD's become commonplace, offering speeds over double of that of regular SSD's. No more video-game loading screens or long waiting times while moving files around! OS boot-times become near-instant as well.

Quantum Supremacy is conclusively demonstrated[^2]. Quantum computers scale up past the research stage into commercial products offered as cloud services. They still require near-absolute zero temperatures to operate, so they are beyond the reach of the average consumer. People start moving to styles of cryptography safe from quantum attacks, but some are slow to upgrade and get their secrets stolen by nation-state actors with access to quantum computers that can break many kinds of classical cryptography. 

<!--
Quantum computing links:
https://www.fujitsu.com/us/Images/Lidar-FLATS.pdf
https://techbeacon.com/security/waiting-quantum-computing-why-encryption-has-nothing-worry-about
-->

[Moore's law](https://en.wikipedia.org/wiki/Moore%27s_law) says that the number of transistors doubles every year. It is already weakening as each jump gets more expensive and miraculous. It sputters and dies on the year 2027, when 2 nanometer chips get released a year later than expected. Improvements are still made, but not at the insane pace described by Moore's law. Eventually one nanometer chips are released, but scaling down further becomes extremely difficult. One nanometer is roughly just ten times the size of an atom - at a certain point you hit a atomic barrier. Unfortunately [Wirth's law](https://en.wikipedia.org/wiki/Wirth%27s_law) states that many applications will get more bloated as programmers use hardware upgrades as an excuse to be lazy about speed, so don't expect programs to run any faster.

VR-capable graphics cards become the norm. Also Microsoft finally get its act together and announces a wireless VR headset for the Xbox. With the graphics hardware out of the way millions of consumers finally bite the bullet and buy VR, expanding the customer base for VR software exponentially.

A AR headset is released for consumers. Although it will remain a novelty this decade next decade will have some exciting changes!

### SOCIETY

A generation of people who grew up playing minecraft and making mods for it enter the workforce as Java developers. Some convince their elders to transition to [kotlin](https://kotlinlang.org/), a increasingly popular alternative.

VR becomes far more popular due to the changes in hardware and software mentioned above. Old people decry VR as being harmful to youngsters and the moral fabric of society, just as old people have done for every new thing since the dawn of time. In some cases they are right - a few use VR as a way to escape the world around them, staying on for unhealthy periods of time. 

Level 3 Driverless mode for highway driving becomes a standard feature of new cars. Ride-share services start offering fully autonomous (level 5) highway rides. Some cities start to transition their highway bus routes to autonomous vehicles as well. Street driving remains in the research stages. Even in its limited form autonomous driving has a huge effect on society[^3]. People simply have more time in the day to do things. Transportation becomes cheaper. Traffic accidents decrease. Commuting becomes better. Teenagers without drivers license have an easier time getting around.

But most importantly, it expands the middle class. People in pedestrian-unfriendly areas (like most of the US) without access to cars gain a lot more freedom and flexibility. They don't have to beg a friend to drive them and can go anywhere the highway takes them. What was previously a hour-long uncomfortable bus ride becomes a time in which they can study or simply destress. Overall this allows millions of people to have a better life and get better jobs.

A vaccine for coronavirus is released, but working remote is here to stay. Many employees prefer it to avoid a long commute, while managers realize that employees are just as productive, in some cases even more so. Some companies use a flex model where people work remote part of the week and come into the office the other part.

The number of people in the digital workforce continues to increase worldwide, especially in developing countries. Space-based satellites like [Starlink](https://en.wikipedia.org/wiki/Starlink) and [Loon balloons](https://www.theverge.com/2020/4/22/21231205/alphabet-loon-internet-balloons-commercial-launch-kenya) bring internet service even to the most remote of areas. In the cities 5G brings a massive increase in speed to mobile networks. With more people online, managers in developed countries have a larger talent pool to draw from when outsourcing. So when remote workers in the US call for crazy things like 'liveable wages' or 'benefits' managers start outsourcing from the cheaper international talent pool. Countries like Ghana or [Nigeria](https://medium.com/outsourceglobal/making-nigeria-a-premier-outsourcing-destination-a-chat-with-amal-hassan-ceo-of-outsource-global-776c39c125b1), with a large english speaking population, could become outsourcing hotspots like India.

![Global internet usage](https://upload.wikimedia.org/wikipedia/commons/thumb/2/29/Internet_users_per_100_inhabitants_ITU.svg/1280px-Internet_users_per_100_inhabitants_ITU.svg.png)
*As you can see above the percentage of internet users increases over time and has a lot of room to grow.*

This also applies to programmers. The percentage of programmers outsourced in the US will increase. However, time zone issues, culture issues, and the square mile of paperwork required remains a significant problem. Most companies will continue to hire within their own countries.

Gender Ratio in Tech: Without a significant change in the media and cultural perception of programmers, the percentage of women in computer science in the US remains extremely low. The patriarchy is too entrenched into computer science to be easily removed. It would take some sort of major push to completely change the dynamics, not anything I could easily predict. Maybe a great work of media (like Lord of the Rings or Harry Potter) has a female programmer protagonist, leading to more female programmers in the media and encouraging more women to join the field? Or maybe programming becomes a basic skill taught in schools such that all genders are equally exposed to it? Or a cyberwar leads to a massive push on all genders being recruited as programmers for more recruits? I'm spitballing here.

## FUNZONE

*I started writing this article before 2020, so some of my predictions have already turned out incorrect, or correct for a quite different reason than intended:*

> The rise of international programmers makes remote workers more attractive to corporations ... Company culture regarding remote work changes too - formerly strict office-only corporations allow people to work from home sometimes. This is a much needed change for office workers with hour-long commutes.

✔️ *Coronavirus already did this one for me, making remote work the norm*

> Not to be outdone by valve's announcement of Half-Life:Alyx for VR, other major game studios release triple-A titles on VR.

❌ *No triple-A games were released right after HL:A. This makes sense - it takes years to develop such videogames.*

> Tools for rapid prototyping like [AREPL](https://github.com/Almenon/AREPL-vscode), linqpad, [repl.it](https://repl.it), jupyter notebook, and [live-php](https://github.com/ziishaned/live-php) become commonly used. 

❓ Could still be right but I doubt it. At least not AREPL - it's user growth has stagnated and I am pessimistic about its future.

---

[^1]: I could be wrong about this. I have a pro-typescript bias and when the question was asked [here](https://www.reddit.com/r/typescript/comments/bbnbyf/will_typescript_eventually_be_obselete_with/) people did not think it would happen.

[^2]: Google claims to have already demonstrated it, but [IBM disputed this claim](https://www.ibm.com/blogs/research/2019/10/on-quantum-supremacy/).

[^3]: I'm dreaming big here. Maybe street driving is required for a large effect, not just highway driving. Either way I'm looking forward to it.

<!--
Create discuss post asking about future of programming?
Todo: Flesh out article *slightly* more. Don't go overboard.
-->