C#/.Net vs Java

November 15th, 2002 by Hen

Some thoughts of mine in response to a post on why Java lacked easy XML tools and .Net had them:

******
This is becoming quite a common occurence it seems. Someone pointing out how Java is missing something .Net has. Often the person points asks why Sun can’t manage it when MS can?

Now. I’m no Sun fan, they’re too controlling etc. Java isn’t Sun now, but it still is kinda.

The reason MS have got a lot of things right that Java currently hasn’t is because MS had the advantage of looking at Java feedback and bug reports and fixing them beforehand.

Anyone in that situation should be able to make a better language, and C# does probably edge Java at the moment.

What will be interesting is the process over time. MS and Sun are not in new modes of work, Sun still are the same company who smashed around in the early 80 unix wars. MS are still the company who released an XSL processor in their browser based on a beta spec that wasn’t released fully for another year(?), and changed heavily.

What will the .Net community be like? No one really knows. Will it just be lots of freeware apps and shareware, or will a real open-source community happen. Will MS drive .Net solely, or will other companies help to steer it. This is the real question for .Net vs Java.

******

And I think that is true. [and no surprise to many I’m sure.]

C# is better than Java at the moment in terms of a pure language. Its library has some nice fixes. It failed to add in real-time support, Mixins, Generics/templates though, which the Java world has been calling for for ages. I don’t recall seeing a Matrix or Complex number class. So .Net still missed some blatant obvious things.

In a couple of years? Where will MS have dragged C#, and will it have a real strong open source community. I’m not aware of a massive open source VB community, so will be interesting. At the moment I think there’s just a lot of Java people playing, and some real projects like Nant, Nanning, others. I dunno though.

One Response to “C#/.Net vs Java”

  1. Steve Says:

    Interesting thoughts… I’m not sure anyone will _WANT_ to contribute to .Net’s direction other than M$ tho’..

    Java is free to play with. It feels more open because Sun/Javasoft (J$) released the free JDK for most systems, but also released the API specs, VM specs and even their source code. I don’t think M$ will do that with .Net and hence it won’t feel so open. J$ even allows committies to steer the java language.. I can’t see M$ allowing that either.. Thus I think the buy-in to the tech by the users is likely to be lower..(?)

    It’s interesting to note that there are OSS communities surrounding almost all ‘open’ languages (like schemers.org, cpan.net, various javas like jakarta.apache.org, etc).. but not with VB, Delphi, Vis-Foxpro, Oracle: pl-sql, etc.. and I think there are more evangelists for the ‘open’ languages: more people are enthusiastic about them..

    Perhaps M$ will make the MSDN good-enough to create a real community feel (hence increasing user buy-in and enthusiasm), but I still cannot believe folks will spend 100’s of [insert monetary unit here]’s on a compiler/IDE & make their work available.. hence I don’t think there will be much the same commitment to .Net by their users..

    Without the user-enthusiasm (and input this generates) will .Net become “purer” ‘cos it’s not designed-by-committie. Or will it become stale and entrenched in what M$ want it to do?