Viewpoints-The Battle for the Enterprise26 Feb 1998
Ever since Java came out, there has been a lot of talk that it will some day become a potential threat to the Windows Operating System. There has always been a long standing debate going on, with the Sun loyalists on one side and the Microsoft loyalists on the other, each camp trying to outdo each other and literally slugging it out.
Over the past couple of years, there has been a lot of applications that have been developed using Java. Each of these have tried their best at emulating the familiar look and feel of the Windows environment.
Java is an excellent and an extremely powerful language. Java enables developers to write secure applications faster. Cross-platform compatibility and Security have been the two most highly touted aspects of The Java programming language. The language as a whole is still evolving into maturity and there has been a lot of major revisions to the language as a whole.
However, we are yet to see really large and powerful applications entirely developed using Java. If one were to live by the 100% Java slogan, applications have to be cross-platform compatible. This will also mean that these applications may execute slower than code which uses native binary code. One of the first companies that caught on to the Java bandwagon was Corel. It’s Java Office Suite package somehow never saw the light of day. Lotus’ E-Suite sounds promising but no one knows how it will look like when it finally ships.
Windows and Microsoft are very strong on the desktop market. Instead of wasting their resources on trying to emulate Windows or killing it, wouldn’t it be a better corporate strategy for the creators of Java to concentrate on the server side? If they are trying to make significant inroads, they may have to fight it from the server side where incompatibility rules. This is Java’s home-turf! If we need compatibility, this is the place where more than anything else we need it most. Microsoft is not as strong on the server side as it is on the desktop.
Java is an excellent distributed programming language and a runtime environment. The server is one place where Enterprise JavaBeans will play a major role. ( For those who do not know, Enterprise JavaBeans is a set of specifications for developing distributed Java components). This will probably allow developers to create highly secure, imaginative server-side software that addresses and resolves complex incompatibility issues. Tools and Servers written to this spec should help developers build stateless server-side components, as well as persistent business logic and data objects that are portable across platforms. It will probably help standardize Java as a corporate server platform standard.
So, what has Microsoft been up to these days? Why hasn’t Microsoft done anything on the server side? Well, you might be in for a surprise here. Microsoft’s Transaction Server is the equivalent of Sun’s Enterprise JavaBeans. MTS has been released for some time now and is now in version 2 while Enterprise JavaBeans is still a spec, yet to be released. So, am I saying that MS has a fully working implementation even before Sun has even released it’s specs for server side development? I’m afraid that I am saying exactly that.
However, we do have an excellent battle on our hands here. Whoever prevails, the end-users are the real winners. Let us hope that we as developers bet on the right horse and see our fortunes grow.
The slogan should always be “Don’t expend energy trying to kill it. Overcome it…”