The first is XML. XML is only a markup language for adding details to text documents, but it has the virtue of being a standard. This alone is a major departure for the IT industry and it is to be hoped that the next decade will see a far bigger emphasis on the use of standard and open systems. We need a real commitment, not the "lip-service" of the 90's.
It will be another five years before XML-based document servers and editors replace word processors and file servers, so that the major impact of XML will not be felt yet. However business-to-business (B2B) e-commerce requires data to be interchanged in standard formats. The fixed formats of existing EDI systems are too inflexible and so the new generation systems are addressing the issue by adding metadata (data about the data) to data messages. They have recognised that an invoice or an order form are text documents, albeit short ones, and have adopted XML as the language to define the metadata, aided by application specific schema. Because there were no earlier defacto products, the whole IT industry has taken to XML for marking up data messages.
The second important concept to mature is the use of Java as a server-side technology. A portable standard should be a requisite for the future and proprietary solutions have no place in the next decade. Despite still being controlled by Sun, Java has become the industry standard for new systems by everyone except Microsoft. After a few iterations, the server-side technology is beginning to centre on Enterprise Java Beans (EJB). The EJB concept is applicable to "pure" Java applications with direct access to relational data via JDBC or SQLJ. However Java and EJBs are not yet mature enough and in any case e-commerce demands integration with legacy data processing systems. But EJBs, with support for interfacing to TP monitors, transaction messaging, etc. is the ideal technology for an "integrating" application layer today. It will mature to full application development eventually, but it is already the only way forward for Web-enabling legacy systems.
But the third maturing concept will have the biggest impact on the IT industry, right across the board. That is Open Source Software (OSS). The front-runner is the OSS operating system, Linux. Already it is dominating the Intel hardware systems outside of enterprise computing; it is already making serious inroads against NT in the corporate world as a Web server. This is only the beginning.
The basic concept of Open Source Software is completely foreign to IT professionals. For years the IT industry has taken products from suppliers who promise maximum support and a guaranteed future. Or that was the theory. Today everyone knows (and to my amazement, accepts) the fact that PC software crashes regularly. There is no way apparently that anyone can get any solution to these problems from the supplier. So what is the problem with accepting OSS products? Microsoft have rewritten the rules for product support while charging premium prices. OSS will in fact offer better support at lower costs, a fact which makes it inevitable!
It will take some time yet for OSS products to reach maturity. Nor will products mature at the same rate, so some long term planning is needed. Already Linux is a better OS than NT and Apache a better Web Server. But the desktop applications are very immature as yet. In any case the next generation of office software should be Browser-based and not PC-based. In contrast the server software will mature very quickly, particularly as Java and XML tools appear.
The immediate impact of OSS will be felt by the current PC software vendors, who's future is extremely troubled, but it will also impact on the whole IT community. This is yet another chance and another challenge. The next decade is all about how best to exploit OSS products and how to migrate from today's legacies.