My article on this major issue was published as Cutter Email Advisor.
This article is general. I will put this shortly in Hebrew with more insight about the Israeli market where .Net is much more dominant.
Five to seven years ago, Java versus .Net was a hot topic. At that time, many organizations were at this important crossroad. Now, they have all made up their minds. But some are reconsidering their previous decision.
Putting it very briefly, .Net currently is more common in smaller, front-end projects, where integration with the desktop is essential, while Java is more common in larger, back-end projects, where legacy platforms run the core business applications and where integration with legacy systems is crucial.
While revisiting this issue, I have made the following interesting observations:
1. It is possible for Java programmers to convert to .Net. However, the reverse -- .Net (mainly C#) programmers that convert to Java -- is not trivial or is even impossible economically for many programmers.
2. Many clients consider Java as a more difficult language and is associated with less productivity than .Net. While our research was not able to prove this, it does appear that Java has more options than .Net. Performing specific tasks or requirements in .Net in many cases is more obvious or straightforward than in Java, where there are many ways and many options to perform the same task. This means that Java organizations have to invest more in standards, guidance, architecture, and software infrastructure. Also, the technical management in these organizations requires more experience and should have more control.
3. A well-known pain point of .Net, and Microsoft solutions in general, is backward compatibility. When upgrading to a new version or technology, there are a lot of rewrites. The Java environment is more mature in this respect, although backward compatibility is always an issue and the acquisitions policies of leaders in the Java ecosystem, such as Oracle and IBM, do not contribute to backward compatibility either.
Conclusion
It is very interesting to return to a specific dilemma and to see how things have evolved over the years. No technology is here to stay forever, though legacy technologies such as Cobol have remained much longer than anyone anticipated.
The latest trend to shake the IT world is cloud computing. While considering Java versus .Net for cloud applications, Java has several advantages. Cloud entrepreneurs try to build their applications on open source that offers much freedom and less expense. However, it appears that many cloud applications are not built on Java but with other languages, such as PHP, Python, and Perl, or even such proprietary languages as Apex from Salesforce. Microsoft also exists in cloud environment with its "S plus S" (software plus services) initiative and Azure Platform.
On the other hand, Oracle's purchase of Sun Microsystems will influence the future of Java. Sun has kept Java part of the open source community. Oracle has less commitment to open source, and it remains to be seen how this will influence Java and its adoption
This article is general. I will put this shortly in Hebrew with more insight about the Israeli market where .Net is much more dominant.
Five to seven years ago, Java versus .Net was a hot topic. At that time, many organizations were at this important crossroad. Now, they have all made up their minds. But some are reconsidering their previous decision.
Putting it very briefly, .Net currently is more common in smaller, front-end projects, where integration with the desktop is essential, while Java is more common in larger, back-end projects, where legacy platforms run the core business applications and where integration with legacy systems is crucial.
While revisiting this issue, I have made the following interesting observations:
1. It is possible for Java programmers to convert to .Net. However, the reverse -- .Net (mainly C#) programmers that convert to Java -- is not trivial or is even impossible economically for many programmers.
2. Many clients consider Java as a more difficult language and is associated with less productivity than .Net. While our research was not able to prove this, it does appear that Java has more options than .Net. Performing specific tasks or requirements in .Net in many cases is more obvious or straightforward than in Java, where there are many ways and many options to perform the same task. This means that Java organizations have to invest more in standards, guidance, architecture, and software infrastructure. Also, the technical management in these organizations requires more experience and should have more control.
3. A well-known pain point of .Net, and Microsoft solutions in general, is backward compatibility. When upgrading to a new version or technology, there are a lot of rewrites. The Java environment is more mature in this respect, although backward compatibility is always an issue and the acquisitions policies of leaders in the Java ecosystem, such as Oracle and IBM, do not contribute to backward compatibility either.
Conclusion
It is very interesting to return to a specific dilemma and to see how things have evolved over the years. No technology is here to stay forever, though legacy technologies such as Cobol have remained much longer than anyone anticipated.
The latest trend to shake the IT world is cloud computing. While considering Java versus .Net for cloud applications, Java has several advantages. Cloud entrepreneurs try to build their applications on open source that offers much freedom and less expense. However, it appears that many cloud applications are not built on Java but with other languages, such as PHP, Python, and Perl, or even such proprietary languages as Apex from Salesforce. Microsoft also exists in cloud environment with its "S plus S" (software plus services) initiative and Azure Platform.
On the other hand, Oracle's purchase of Sun Microsystems will influence the future of Java. Sun has kept Java part of the open source community. Oracle has less commitment to open source, and it remains to be seen how this will influence Java and its adoption
אין תגובות:
הוסף רשומת תגובה