Guest Column | March 14, 2016

What I Learned From Working In Failed Platforms

By Brian Rinaldi, Developer Content Manager, Telerik

Recently, Adobe announced the end of Flash (sort of), as well as the end of their Edge tools and services. This marked a milestone of sorts for me — the end of a number of products that played important roles in my career.

This presented an ideal opportunity to discuss the often hard-learned lessons experiences like these have taught me about the most important skill a developer can have to thrive in this industry — adaptability.

As developers, we’re a passionate bunch, and as a group, we’re much more intense about our work than the average person. This passion is part of what makes the developer community so exciting, but it also can lead to a belief that my platform is the best platform. But what happens when this all goes south and the technology (or technologies) that you’ve tied your career to, your title to, and perhaps even part of your identity to, suddenly becomes inviable?

Lesson #1: Be Open-Minded

Pitting technologies against each other can be fun, but it’s important to be good natured. As even as you advocate for your preferred platform/language/technology, you should also keep a healthy skepticism about it.

In other words, the other options don’t “suck” and other people aren’t “stupid” for using them. It means that you understand that every developer and organization has a different speed at which they are comfortable adopting new technologies — and no one is an “idiot” for being a couple versions behind or for not updating to the latest, hottest framework.

When the Flash changes came and Adobe stopped developing Flex, the community effectively split into three groups: 1) those who were prepared to move on to web standards and did so quickly; 2) those who were taken by surprise but gradually made the transition; and 3) those who were angry and refused or fought the transition. I can practically guarantee that the first two groups fared better in the long run.

Lesson #2: Try New Things

Frequently, we fall into a choice and then rationalize that it is the best option after the fact. Once we become immersed in a particular solution, it can be hard to see its shortcomings or the benefits alternatives may offer. This can make us myopic and put us at risk if the day comes that our best option is no longer viable.

However, you don’t need to be an expert in everything, but you should venture into new territory. For example, create a small, fun side project in a language you don’t know. Try working through the getting started guide of a framework that you’ve been hearing a lot about. The goal isn’t to change your mind, but to keep you aware of how the landscape around you is changing.

Trying new things can also prevent us from getting overly dogmatic about our choices, which can help lead to a successful career. For instance, I have spoken at one of the main ColdFusion conferences, cf.Objective(), which is now dev.Objective(), over the years, even long after I’d basically stopped doing ColdFusion. Many of the speakers and even the attendees at that conference in recent years were ColdFusion developers who had found great success in areas outside ColdFusion development. Their willingness to try new things opened the opportunities for this success, while still allowing them to maintain the ties to a language and community they still love.

Lesson #3: Don’t Paint Yourself Into A Corner

The most important lesson I’ve learned is to not let your career and identity become tied to a single technology. I used to believe the depth of my knowledge about a single tool/language was a competitive advantage. Today, I think that, while this depth of knowledge has its merits, these can be more than offset by how much it limits your options. I rely upon my ability to learn more about whatever I need to know rather than rely upon my encyclopedic knowledge of one topic.

You want to be able to go wherever the best options are available, regardless of the technology. Today, everything seems to be moving to JavaScript. But, even as it may seem hard to believe today, there was a time when Java seemed equally unstoppable. I thought that I’d have to learn Java if I ever wanted to have a decent job down the line. Fast forward to today and, while there are still plenty of Java jobs, I think that it’s safe to say that few people are arguing that Java is the future.

By not painting yourself into a corner, you also give yourself the option to not follow the trends. There are needs for a lot of different types of developers and, if you’re open minded and willing to try new things, you’ll be prepared for whatever opportunities might come your way.