Technology Review 2015

Software is moving faster than ever. Time to step back and reason about future developments.

When it comes to software everything seems possible. Of course most innovations in software would not be possible without equal advances in hardware. It is not only that hardware is providing the way for future software development, but also the other way round: software sometimes dictates in which direction hardware is being developed.

In the next paragraphs I want to review some of the current technologies, ranging from frameworks to software packages to languages. I will try to outline want I think will be important and what would be good technologies to keep watching. I won't write about specific industries, such as HPC, instead I'll only list general purpose software.

Apparently I do most of my work in the .NET world. It is a great platform for building web applications, services and desktop apps mainly for Windows. The open-source movement will certainly help to bring .NET to the next level, even though the poor market share on the mobile OS systems is a drawback. The strongest points in favor of .NET are the very attractive languages (such as C# or F#), the powerful connection to Microsoft Azure and the tooling (such as Visual Studio), which is certainly above the competition. I predict that .NET is here to stay, even though I do not see much potential for rising way beyond the current usage. In a world that becomes more fragmented every day, having a stable usage (and providing more possibilities) is certainly desirable.

A largest rival of .NET is Java. Personally I strongly believe that Java as a language is inferior to C#. Additionally the initial promise on "write once run everywhere" is broken in many ways. Nevertheless, the rich ecosystem, the number of options and the run for technologies such as Hadoop provide an ideal basis for future projects. Even though I personally would wish that Java is going away soon, it is certainly not -- too much has been committed and many new (and better) languages have been built on top of the JVM. We will see a regression to the mean in using Java for projects, but the mean for Java is still ahead of most other technologies.

Another framework that is commonly used by big companies is SAP. It is possibly the de-facto standard for business analytics and controlling. The layered system provides flexibility and still captures customers to the SAP ecosystem. Thus - even though there are better, but less known options these days - the technology won't be replaced easily. Novel database approaches such as S4/HANA are state-of-the-art technology that backup the future of SAP for many companies. Also we should not forget that many small to middle class companies provide SAP software or services.

Another technology one might be curious about is SharePoint. This technology will certainly vanish in the next years. When it was released document management was a big mess and companies have been desperate to find a good solution. Now we have Wikis (or other centralized systems) and the cloud. Many existing content creation systems (such as Google Docs, Office 365 and others) already provide a complete document management solution from the beginning. Knowledge systems and on-premise clouds are adding more flexibility. Document storage databases are also eating up chunks here. I predict a decline and movement towards cloud technologies in this sector.

What else should we keep looking at? Currently there is a very sophisticated language movement. I would watch out for languages (and their growing ecosystems) such as Julia and Rust. Machine learning and data-oriented frameworks will become stronger and I feel that many innovations in the field of augmented reality will be very popular. Recent purchases and product announcements emphasize this. A good candidate is the very established R language. Microsoft's recent commitment towards R is also a strong indicator for the importance of data-oriented languages and frameworks.

When we already discuss Microsoft we also have to think about the future of .NET. What technology will be important in this year? I guess that cross-platform and in particular the DNX will change the way we think about .NET. All in all the ASP.NET vNext release, which is a complete, modularized, rewrote of the original ASP.NET will influence many decisions and impact many things - from libraries to code formatting and API design considerations.

In general the open-source trend will continue. Thinking of a particular example I would actually pick Microsoft. Microsoft realized that contributing to open-source by opening their own code-base is actually beneficial. It opens so many possibilities and it will - in the long-run - change the way that Microsoft is perceived.

Created .

References

Sharing is caring!