So, my teacher said C# and Microsoft is a dying breed

but if either of two languages are more likely to die, it would be Java

Java has been "dying" for a decade now. Fact is, the jvm supports more platforms then any other language. (c/c++ has a lot more, but it's a compiler, not a vm). It also supports more languages running on the vm then any other. It has more open source libraries, just for the fact of being around longer.

The vm and garbage collector for Java are still more mature, feature rich and preformant.

Depending on which site you look, it's been in the top 5 languages (and has been for a decade). Also depends on source, but it has been in top 5 fastest growing languages for last decade.

Java is "pure", it has very few license problems. Microsoft/C# licenses a lot from Oracle (previously Sun). C# has a lot of Java in it.

Languages that are open and vendor neutral tend to do better (in terms of longevity) then those that aren't.

Java is actively maintained by developers from dozens of companies (oracle, IBM, google, apple, etc) and has hundreds of full time open source developers that contribute to it. C# has 3 vendors that contibute to it (and Microsoft rejects a lot of their patches). C# has only 1 full time open source developer (all others are part time).

Java has been vendor neutral and open since 1995. Depending on your definition, this status for C# is 5 years or less (and some are debating the what and whys, claiming foul on Microsoft in certain areas).

I'm not saying C# is dying. I bet it has a long life ahead.... but think if any of the two die, Java will hold on for longer. In almost everything, it is many times (if not tens of times) bigger than C#.

/r/csharp Thread Parent