Tech predictions for the next decade
Tags: predictions, programming, future, trends
Published: 2022-06-05 13:50:26

I've been reflecting on trends in tech for the next few years and wanted to share that in a post to share what I've encountered and to start some discussions.

Some of this is based on what I've come across in videos and articles, some is my opinion based on what I've seen happening in the last few years.

Here we go...

- More uses for robots in everyday lives and more complex, smarter, safer, faster robots.
  - Robot butlers like Tesla's [Optimus](https://www.thenationalnews.com/business/technology/2022/06/03/tesla-optimus-what-we-know-so-far-about-the-robot/)
  - Drones which deliver packages, watch over us, spy on us, fight wars... maybe controlled by AI. And more entertainment like to provide aerial displays like planes at airshows or be used to film videos such as this [music video](https://www.dronethusiast.com/ok-go-music-video-filmed-using-drone/).
  - Robot assistants like those from [BostonDynamics](https://www.bostondynamics.com/) which perform boring or dangerous tasks in places like warehouses and oil refineries
  - [Robot cars](https://www.online-sciences.com/robotics/robotic-cars-self-driving-cars-advantages-and-disadvantages/) aka self-driving cars which are electric. Possibly controlled by a central brain like an air traffic controller sending and receiving messages with all - letting the cars act like a hive of ants with a queen.
  - Then naturally more software engineers and mechatronic engineers to keep up with the demand. Likely more AI and robots available in schools and universities and in hobby "maker" spaces.
- [Dapps](https://ethereum.org/en/dapps/) aka "distributed apps" are going to continue to rise as Web3 and blockchain technologies mature and get adopted. This may be a bubble waiting to burst but in the meantime you can get work and build projects around this.
- JavaScript
  - Data type annotations are coming to JS as a builtin feature I've read, which means you won't need TypeScript to compile your TS to plain JS (Python allows type annotations in this way). I don't know what you'll use for typechecking though.
  - Using abstractions is going to continue. Next.js is on top of React, so maybe another layer on top of Next.js or a replacement. Next.js also does a _lot_ of stuff and may become too complex to use or maintain, so we might get some smaller specialist libraries to use instead.
  - Alternatives to React like Vue and Svelte are going to continue to grow in popularity, especially for new projects or developers starting out.
- Rust so far is a most-loved language with low adoption as it is unusual and low-level. As more developers get familiar with it and there are more packages available, Rust will get adopted more - it is already great for low-level code and where are speed and memory optimization are important (like for games, machinery, and micro-controllers). 
  - Go is more practical for general use-cases and web development. It's a lot easier to learn and generates a portable binary format. It gives arguably similar performance to Rust. So Go will continue to be adopted. It might overtake Rust and even Python in popularity. Especially as Python is a few decades old while Go is much younger and has a concurrency added from the start with "goroutines".
  - More event-driven architecture for reliability in distributed systems. More queues. More serverless applications and platforms - which can scale instantly and you only pay for what you need. We've already seen Netlify provise easy-to-deploy Functions which wrap the AWS Lambda feature. And we have databases like AuroraDB from AWS which turns your DB into a managed serverless DB without changing your schema or queries.
  - More code running in containers especially locally.
  - NoSQL databases will continue to be mature and new ones will come up. SQL will still be around for a long time.
  - Web developers will become more multi-skilled. Fullstack already tends to include DevOps and CyberSecurity aspects, which makes dev teams less reliant on other teams and more independent. 
 - Some developers like myself who have done fullstack for a few years will want to specialize in backend or frontend again. As having to keep up with new tech in the backend (around shell, databases, Python/Java/C#/C++) and the frontend (around HTML, CSS, JS) can lead to fatigue and always feeling behind with shallow knowledge.
  - No-code platforms will continue to rise. People who can't code love to use WordPress or Wix and there are newer platforms which let you build websites and mobile apps in a similar way.
  - More use-cases for AI and machine-learning in coding and in business. More engineers in this area. We may see a bubble burst in the tech if we reach a ceiling in the capabilities of AI or there are restrictions from politics or legal areas that restrict development. Elon Musk has also called general AI far more dangerous than nuclear weapons, so AI will hopefully become more regulated and countries will have to agree how to use AI and how far to take it. Some countries will do their own thing undercover to gain an advantage in war or economics though.
  - We've already seen a rise in technologies which let you build mobile apps for Android and iOS using a single codebase. Such as using Flutter in Dart (which didn't catch on as much as some hoped) or using Node-based packages. So I think there will be improvements on those or newer alternatives. We'll still people writing Java/Kotlin and Swift code for native devices for a while and that may never disappear. At least until Google and Apple decide to use something else as their mobile operating system.
  - More remote work - work in a different city or country to get your work done and still live where you want.
  - Hybrid work with a mix of office and work-from-home has risen and been demanded by employees during Covid19, so it looks like this is hear to stay, for IT and other industries.
  - We'll rely less on the computing power of our laptops for development - the computations will be moved to the cloud. We've already seen GitHub bring out [CodeSpaces](https://github.com/features/codespaces) where you get an IDE and processing in the cloud. So you can easily switch between laptops and you can have a cheap laptop that offloads work to the GitHub servers. We might see the same trend for computers and phones offloading computations - especially with Moore's Law showing signs of slowing down as we reach a physical limit of how small we can make a components on a motherboard.

Anything you want to add to the list? Disagree with any points? Comment below.

## Credits

[Cover image][] courtesy of Unsplash.

[Cover image]: https://unsplash.com/photos/0E_vhMVqL9g