Disruptive Trends Every Software Professional Must Watch Out For
Written on
Understanding Current Trends in Software
In recent years, there has been a noticeable shift in the licensing models of popular open-source projects. Major tools like ElasticSearch, Grafana, Akka, MariaDB, CockroachDB, Anaconda, and Docker are either transitioning to or planning to adopt more restrictive licensing. While I don't take a stance for or against this movement, I believe it’s important for software professionals to brace themselves for such developments.
You may need to allocate a budget for these new fees or seek alternative solutions. It’s a worthwhile exercise to compile a list of the software you currently utilize that might follow this trend.
Section 1.1: Cloud Native vs. Cloud Portable
The internet is rife with articles advocating for a cloud-native approach. The rationale is clear: serverless architecture has transformed application development by removing the need to manage the underlying infrastructure. As serverless solutions have evolved, they have started to align closely with container technologies. According to the 2022 Datadog Serverless Report, serverless application usage is on the rise.
As a user of these services, it’s crucial to distinguish between cloud-native and cloud-portable applications. For instance, if you're developing an application solely for internal use (like typical IT business systems), opting for cloud-native technologies is generally advisable. However, if your goal is to create a product for customers, considering cloud portability during the design phase is essential.
Frameworks such as Spring for Java can facilitate this portability, but be aware that these frameworks may also adopt restrictive licensing in the future. Achieving complete portability isn’t mandatory; even a slight adjustment in your code structure can make a significant difference.
Subsection 1.1.1: The Importance of Green Software
There is an increasing emphasis on minimizing carbon footprints across various sectors. Previously, I authored a guide titled "Climate Change Combat Guide for Software Engineers," which outlines how software engineers can contribute to combating climate change. Many governments are now requiring enterprises to report their greenhouse gas emissions.
As a software vendor, be ready to develop applications that can clearly showcase the carbon impact associated with their operation or use. It’s likely that, alongside software features and pricing, companies will begin to choose software based on greenhouse gas emissions.
For more resources, consider exploring the Green Software Foundation’s projects. I've previously mentioned a project that can assist in measuring the carbon footprint of the cloud services you utilize.
Chapter 2: Embracing Change in Software Development
The video titled "Systematic Selling with Intention with Jim Pancero" highlights strategies for adapting to disruptive trends in the software industry. It provides valuable insights into how professionals can effectively navigate these changes and maintain competitiveness in a rapidly evolving landscape.