I’ve written before about how to get into mobile app development, but I’ve recently been asked more and more about getting into tech period. One of the most important aspects of getting into tech is thinking about where the tech is going and where to devote your time. You hardly want to get into a field that will disappear next year!
In that spirit, I’d like to discuss some technologies that are going to be big and some technologies that are not.
The Next Big Things
Mixed Reality (aka MR)
Mixed Reality is perhaps based on some other familiar concepts, but has far more potential to change how we interact with the world. To understand why, let’s first take a look at what those other concepts are.
Virtual Reality, or VR, is total immersion in a virtual world. When you put on a VR headset, you can’t see the real world around you, you only see the virtual world that the headset displays. So putting it on in your living room means you’re risking a trip over your coffee table, and doesn’t provide you any direct information about the real world. It’s still cool though, as it allows you to be completely removed from your current location. For examples of what this might be like, check out Oculus Rift.
With Augmented Reality, virtual elements are overlaid upon the real world, which you can still see around you. It allows you to ‘augment’ your experience of the real world with virtual information; imagine looking at the sky and having the forecast overlaid, or going to a party and having people’s names automatically displayed next to their face in real time. Google Glass (for all its flaws) was an example of an AR headset.
MR differs from VR or AR in that it allows for the interaction of the real and the virtual. A mixed reality object is no longer simply displayed over the real world, it behaves as though it’s a part of the real world. It can be occluded by real objects, you can walk around it, or it can ‘sit’ on an object in the real world.
And that’s HUGE. This technology has the potential to replace all the other tech you carry around with you: your laptop and your smart phone, and if you have one, your smart watch. Why? Because with mixed reality, it’s no longer necessary to bring physical objects with you. When you can display a keyboard on any surface, why bring a laptop with you? When you can display any content anywhere, why have a physical screen?
MR will drastically alter the tech landscape. Almost everything in the tech world will have to adapt to it. In the same way that the web changed to deal with smaller mobile screens, so must it change to deal with displaying a screen over the real world. Mobile apps, as we know them, will disappear (because no one will be using a smartphone). Entire new design flows will have to be developed and discarded. MR is a paradigm shift.
What this means for developers: Right now, there’s nothing you can do but wait (unless you’re building APIs, in which case you’re more or less safe from the coming wave of disruption and don’t have to worry about it). But when app stores for MR devices start opening up, get on it, and fast. There’s huge upside potential here.
Artificial Intelligence (AI)
AI is another paradigm shift, and it has perhaps even more potential for change than MR. We’re talking about rapid obsolescence for whole sectors of our economy, and all the instability that could come from that.
AI is all about teaching computers to do certain kinds of complex tasks at least as well as humans can. Google, in particular, is leading the way on this, and has created some really impressive AI systems. From predicting what you’re going to search for to self driving cars, there’s already exciting stuff on the horizon.
Let’s take the case of self driving cars. Google (or whoever does it) doesn’t need to create cars that never crash; all they have to do is create cars that crash less than humans do. If they can do that, then it’s easy to imagine replacing human truckers with AI truckers: they can drive all day and all night, you don’t have to pay them, and they’re more reliable. And the transport business is a huge part of the US economy. What happens when all those people can’t find a job?
And it’s not just blue collar type jobs at risk: anything you can train a human to do is at risk. And that includes programming. Once we create an AI that can program better and more reliably than a human, you can bet tons of programmers will be out of jobs. And perhaps more importantly, at that point we’ll be able to create more powerful AIs at a faster rate, increasing the number of industries threatened.
On the other hand, there are a ton of benefits to this. If AIs are better at driving, we can reduce auto mortalities. If they’re better than us at just about anything, we can lower the cost of goods and services. There’s a lot of good that can come from handing the reins over to robust learning algorithms.
So there’s a lot of thinking we need to do as AI becomes more and more developed. Luckily, we have some time, because as it turns out, building AIs is hard. Like, really hard. Some of the greatest minds of our generation are working on this and only slowly making headway. It’s not a field that it’s easy to be at the forefront of, and currently, it isn’t well developed enough to have mass applications. But the machine learning algorithms we do have are already producing valuable results, and knowing how to wield them will be a skill that only appreciates with time.
What this means for developers: This is a solid investment in time, but right now it also requires a lot of time. If you have that time, then go for it. There are definitely resources out there you can use to get a leg up and do some cool things, but AI isn’t exactly plug and play ready. Unless you have a background in some pretty heavy duty algorithms, you may want to wait on this.
The Internet of Things (aka IoT)
The Internet of Things is not quite a paradigm shift and has been creeping up on us slowly (rather than the explosive revolution that its proponents have been predicting). The concept here is that we can connect pretty much any object to the internet. Your washer, your dryer, your fridge, your windows, your lights, your AC, your doorbell, your car… all of these can be integrated into the internet and controlled automatically and/or from a distance.
Now, to be fair, IoT has been the ‘next big thing’ for a couple decades now. And there are a lot of issues with it. And yet, slowly but surely, it has been taking hold. One of the more recent success stories has been the Nest Thermostat. It saves you money, and it’s super simple to use. On the other hand, there are some pretty silly smart devices being developed as well, like the Vessyl, a ‘smart cup’ which tells you what you’re drinking. Yes, please tell me that I’m drinking the thing that I literally just poured into you.
But what’s especially exciting to me about IoT are the possibilities of combining it with some of the other tech trends I discuss in this article. Combining IoT with MR allows you to do magic: imagine turning on a light by pointing at it, or changing the channel on your TV by waving at it. Combining IoT with AI allows you to make Jarvis from Iron Man a reality. And who doesn’t want to be Tony Stark?
There’s a dark side though: more connected devices means more things vulnerable to hacking. Which is an excellent segue into the final big tech trend, as it happens.
What this means for developers: Play with Raspberry Pis and Arduinos in your spare time. If someone comes to you with a good idea with a really, really solid business case, then maybe go for it. But otherwise, wait until the market starts picking up.
As more and more of our world becomes digitized, more and more of it becomes vulnerable to hackers. This can be incredibly dangerous. Imagine a hacker taking over your car on the interstate, or messing with your pacemaker. These aren’t just scary possibilities: they’ve already happened. There is already an increasing need for security professionals, and the bar for finding security holes is relatively low.
What this means for developers: Right now this is the wild west. There’s a lot of money to be made, and a lot of demand for talent. But it can also be a risky endeavor, legally, if you’re not working for the man in some respect.
Dead End Tech
Chat bots, like those announced by Facebook recently, allow ordinary users to chat with (you guessed it) bots on some platform such as Facebook Messenger or WhatsApp. The dream is that a brand like Pizza Hut could create a chatbot that Messenger users could message and order a pizza from it by just typing in what you want.
It’s a bit of a bold claim to say that chat bots are a dead end. They’re all the rage right now, and perhaps, two years from now, I’ll be eating my words. But frankly, I hate typing. Always have, always will. So taking things I can do by clicking/tapping and turning them into things I do by typing sounds like an awful idea to me. And I can’t imagine I’m completely alone in that.
What this means for developers: Don’t bother learning how to make these. I’m certainly not. (Though I must admit, I have thought of some hilarious joke chat bots.)
Don’t get me wrong. Mobile apps have a few good years left. There are plenty of opportunities to be had in business apps, a few consumer niches, and mobile app security. But the mobile market has been slowing down for a few years now, and it’s only going to get worse. The time of the breakout consumer app is over (more or less). Mobile phone innovation has slowed, which, in part, is driving this trend: there are fewer new, exciting phone features to take advantage of, so there are fewer new, exciting apps for consumers to feverishly download. On top of that, regular consumers have been burned enough, or at least over-hyped enough, that downloading a new app no longer has the charm it used to. New apps have become so ubiquitous, they’re boring. No matter what you build now, it’s old hat.
And if that weren’t enough, once MR hits mainstream, mobile apps will be obsolete.
What this means for developers: You can still make a lot of money as a mobile developer, but don’t work for equity. Odds are, unless there’s a ridiculously good business case, you’ll end up with nothing. Make sure you get paid for your work!
Websites (and front end web)
Websites are in an even worse predicament than mobile apps, since much of its utility has been eaten up by mobile, itself a technology on a long decline. Most consumers prefer using an app to a mobile website, and given all the extra functionality you can get from an app, there is often little point in building a mobile site in addition to an app (unless you have money to throw around).
Moreover, in the same way that desktop computers are dying, so are websites designed for them. You may have noticed that most of the new websites out there are just landing pages. In fact, there have been some pretty good parodies of the format. Kids These Days™ use their mobile phones a lot, and the apps thereupon, so unless you’re building for certain markets, more often than not you won’t need a desktop version of your site. And even if you do need a desktop version, it’s likely that you’ll ALSO need a mobile version (or more often than not, an app, instead). In which case you’ll probably want to architect your site using microservices, and build a single API that your desktop site, mobile site, and mobile app all use. With all the emphasis on mobile, many companies are choosing to leave the desktop version by the wayside, or in the least, not invest a ton of money in it.
And as I’ve described above, MR will completely upend front end design and implementation as we know it.
What this means for developers: MR will still need the data that many websites provide. This leads me to believe that the most stable place to invest your time is in API development, rather than front end technologies.