Tuesday, April 1, 2003

C# and Open Source

I've heard talk in private from quite a few Java professionals that .Net will one day replace Java. They point out that C# is a comparable language and most of the open source API�s are being ported to C# (and therefore to the rest of .Net). Microsoft obviously has more market pull than Sun (who rarely even gets respect from Java programmers). I can, in some ways, understand the fear.

Of course in reality, there isn�t anything to worry about. Java will not disappear. Porting open source projects to .Net will only help a handful of .Net programmers. C# will still fall behind Java in the area of cross platform support, vendor independence and effective use of the open source feedback loop.

Why doesn�t it help to port open source Java projects to .Net? Because Microsoft won�t directly support them, and lack of vendor support will make the projects useless. Very few companies will choose a development environment other than Visual Studio for their .Net development. Its very unlikely Visual Studio will have integrated Ant support. Microsoft will provide their own APIs for XML parsing, logging, preferences, etc. Most companies who choose .Net will ignore any open source project which improves on these APIs for the same reason they choose .Net in the first place: these companies want end to end tech support for their entire system; they want a single company to be responsible for the environment they use; these companies WANT a closed homogenous environment.

Why is Java safe? Because the companies that use Java today simply don�t have the same requirements as the Microsoft shops. Java and C# may be very similar languages, but they exist in completely different environments. Both environments have their pros and cons and both will flourish over the next 5-10 years.

Labels:

0 Comments:

Post a Comment



<< Home