Dear Developers, Don’t be Afraid of New Tech: An Open Letter
We see new tech comes out every day, whether it’s a new way to manage your servers, a new programming language or a new framework that claims to improve the quality of your project by a huge leap. By the nature of developers, we are excited, but also sceptical, some of us will give it a try, some will simply keep an eye on it, or forget it’s existence after a month.
The majority won’t even give it a try.
I know what you’re afraid of. We’re all busy, we don’t want to waste time on some mumbo-jumbo. And some new thing will never take off. Hello, Dlang users, how’re you feeling today? Good? How about you, UWP developers? Oh, by the way, how’s your Silverlight project going? Switched to Flash at the end? Good for you and welcome to mobile! Have you chosen to write Xamarin projects for all mobile platforms? It’s good you didn’t choose PhoneGap.
The tech world is always moving forward, and there’s a reason for that, ancient tech is a liability… an expensive liability. Software is never a done deal. It requires constant maintenance. For example when IBM has to fix a bug in S/360, or when Microsoft has to issue a security patch for XP, you can see tears in their team members’ faces, and it’s not because of joy.
With processor becoming more powerful every day, and with more and more knowledge shared on the internet, we keep developing a new tech which we hope will liberate us from tedious works. We often take things for granted, but consider all the beautiful animations in your pocket computer, aka, phone, it has been built on layers of abstractions of layers of abstractions, we only need to write application to describe what size of a view we need, which colour it should be and it translates to another layer, then another layer, and at the end, carefully calculated pixel lights up or dims down in a result. Without abstractions, a simple task – like drawing a view – will take months. And these layers got build by constantly moving forward.
The software world is such an amazing world in which you can easily find everything you need and create something entirely new. That’s why we see new things that might be created by a million-dollar company or by a single individual in the most remote corner of the world coming out every day.
Remember, the core of your capacity is to fix a problem, build things, not the syntax of a language, or a method name in a framework.
Yes, the new tech you’re trying might fail someday, but you learned new ‘tricks’ along the way. Your Haskell skill maybe didn’t help you to find a new job. So what? You learned how to do functional programming that you can use in so many fields. Your preferred packaging management tool might have lost the battle with big names, but by comparing them, you know the pros and cons of each one of them, when cons of that big name finally come to haunt you, you know how to pivot.
Microsoft is killing Silverlight. So what? With all the things you have learned about browsers, devices, and graphics, every team will be glad to have you on board. You’re familiar with Docker Swarm, but now you have to move to Kubernets, guess what, the concepts are similar, you can acquire new skills within a day or two. Or maybe you’re an early Swift adopter, and now you need to do server-side application development, you’ll find Rust/Kotlin/Scala/Java somehow familiar.
The world is moving forward, learning new things is a necessity. Being a qualified developer means being a life long learner. It’s hard for some people, but if you’re an early adopter of new tech, or someone who’s willing to try new things, you’ll find your job becoming easier every day, not the other way around.
Follow Mingyu on THRESHOLD.