Future Tech - What It Really Means for Software to be Relevant

January 5, 2021

In today’s rapidly changing digital world, do you feel like you need a combination of a crystal ball, tea leaves, and tarot cards to know what will be the next “big thing” in technology and what you should invest in? How do you know that the platform you build on or the tools you utilize today won’t be outdated or no longer supported tomorrow? As technology becomes further integrated into all aspects of our lives, and we embark upon the Fourth Industrial Revolution, technological change is happening at an even greater rate. Keeping up with it and its possible obsolescence has become an even larger challenge.

Well, you might say, “I know that I can’t tell the future, but what is all this buzz that I have heard about future-proofing my technology? That sounds promising. Future-proofing is a term utilized across industries, and it refers to a product, service, or technological system that will not need to be updated as technology advances. In reality, it is almost impossible to ever 100% future-proof any technology. The future does not change at a set pace, we make predictions about the future based on what we know today, and there are often unprecedented events, just look at 2020. Future-proofing your tech, like the concept of waterproofing, suggests keeping the future at bay. This is an entirely futile effort. The technology and processes that are currently working today may not exist tomorrow. It is the very nature of technological innovation; some things will become obsolete over time.

A Flash In The Pan

Adobe announced that the End of Life (EOL) of Flash Player would become effective at the end of this year. For over 20 years, Flash led the way in the training realm and played a crucial role in interactive content, animations, video, gaming, and more. In 2016, 80% of desktop users utilizing Chrome visited a website with Flash daily. In 2019, usage declined to 17%. What are some of the reasons for its ultimate demise?

  1. Lack of Support

In 2010, Apple CEO, Steve Jobs, announced that the tech giant ended its long-standing relationship with Adobe Flash Player. Just some of the reasons that they listed for the break were users being unable to access Flash videos on the web and that the long decoding process caused significant power drain on mobile devices.

  1. Proprietary

While many people thought that the availability of the “free” download of the Adobe readers and players made them “open,” they were always closed source and only available from Adobe.

  1. Security

The Center for Internet Security (CIS) noted that Adobe Flash was riddled with security concerns and was a frequent target for hackers.

  1. Designed for PCs

Flash was designed 20 years ago for desktops, not for our touch screen, mobile-driven environment. Flash websites use ‘’rollover” pop up menus that are not well suited to touch screen interfaces.

Lessons Learned

What is the lesson to be learned from Flash’s story, a once well-loved technology that had its challenges, fell out of favor, and became obsolete?

Your primary takeaway should be to shift your focus from future-proofing or keeping the future out to constantly seeking ways to remain relevant, embracing innovation, and seizing the future, or in other words, become future-ready.

How To Be Future Ready

Be Adaptable And Open To Change

As change is a constant, organizations that are flexible and have agile teams are the ones that will be ready for what comes next. Surround yourself with people who are inspired by challenges, see the opportunity in the what-ifs, and can pivot quickly as technology changes.

Watch What Works

While everyone wants to be an industry leader, you also want to be in it for the long run. Think of the process as a marathon in which you can pick up the pace when needed. Being future-ready often means letting others take the risk on the latest technology advances. Market leaders will become apparent over time.

Be Open

The utilization of open-source software (OSS) or code designed to be publicly accessible—anyone can see, modify, and distribute the code as they see fit can also help your project be better future-ready. OSS is developed in a decentralized and collaborative way, relying on peer review and community production. It is often cheaper, more flexible, and has more longevity than its proprietary peers because it is developed by communities rather than a single author or company. Longevity, by its nature, is a critical factor in remaining relevant.

Be Plugged In

Just as using OSS helps you ensure that your software remains relevant, so does allowing plug-ins and extensions. James Dixon, of Pentaho, shares in a Forbes Council Post that “Having an open system that can be configured with different components and plug-ins allows both one-off customer requests to be handled cleanly, as well enables incremental replacement of core modules. This provides tactical and strategic advantages.”

Follow Industry Standards

Great technology follows the best and highest industry standards. Once something has become an industry-standard, it's likely to receive more comprehensive support, and technologies that have earned a strong community of stakeholders tend to remain useful for longer. Adhering to accepted standards provides you stability and will allow you to proceed more easily with updates when required.

Scalability

It is important that your tech has the ability to not just meet the needs of your organization or client base today, but next year, in five years, or even ten. If you neglect to take into consideration how well a solution can scale, it could cost significant money, time, and effort in the future.

Document Everything

As you iterate through your development changes, you won’t remember your original thought process. By carefully documenting how the team approached the coding, implementation, and maintenance of the software, you will extend its future success.

Flexibility

Once we realize that change is inevitable, keeping up is key. Maintaining a focus on flexible, modular design allows you to edit system components rather than having to rebuild an entire program.

Your Future Ready Stack

So as your startup focuses on the near-term and hopefully long-term future, how do you know how to choose your tech stack to ensure that you are future-ready?

What are you looking to build? Is it a mobile app? Will it be Android or iOS? Will it be a web app? Or both a mobile and web app? What type of product are you building? A client-only application? Are you building an advanced AI algorithm? What you’re making and where it will run will drive most of the tech stack discussion. Next, you need to estimate how many users you will need initially and how many you expect as you scale. Figuring out your expected load will help you determine what framework should be used. Lastly, you should outline your initial project goal. Are you looking for a proof of concept or an MVP? This will determine how robust your framework will need to be.

Sample Startup Tech Stacks

PHP, Python, JavaScript, Java, Go, Ruby, C/C++, Kotlin, Objective-C

Risks Of Choosing The Wrong Tech Stack

Utilizing the wrong tech stack can:

  • Make fixes and bugs more difficult and costly
  • Make it harder to find quality talent
  • Expose you to legal and regulatory risks
  • Expose you to security risks

Additionally, you can risk having to rewrite code once you are well into the development process, costing you valuable time and resources. For example, you pick a particular technology. After working with it for over six months, you begin to face challenges at 10,000 users. The only way around the problem would be to rewrite the entire codebase in a language that scales more effectively.

It's All Relative

So how do you build a strategy that works towards planned durability vs. planned obsolescence and build the most relevant technology?

Regardless of what you are creating, it is critical to your startup’s success to develop products that are current, easy to maintain, and easily expanded upon so that new features and functionality can be added as necessary. This is accomplished through; being flexible and open to change both organizationally and with the tools that you use, and staying abreast of the direction of the industry and key standards; what tech is working, how well it is supported, how well it will allow you to scale in the future. Users will always want easy to use products and better experiences. What works for them today will be different next year. Taking these steps will help you be future ready when change happens again, and again, and again.

TAGS
#SOFTWARE DEVELOPMENT
#ENTREPRENEURSHIP
#FUTURE-PROOF