OTOH, Java runs on every major (and deverão minor) operating systems and hardware platforms, from humble feature phones to large mainframes, to the Hadoop clusters that process some of the largest datasets ever collected. C# code runs on Windows machines and, with some effort and courage (one may describe it as recklessness) on Mono.
When people say Java, I almost always think about mobile and enterprise applications. While true you can build desktop apps with Java, that's not a common usage.
And, mind you, you forgot the platform almost every internet connected server runs.
C# isn't really my cup of tea, but I've had reasonably good luck running (well-written) third-party C# code on Linux and OS X using Mono. What are some of the issues that make this reckless?
Mono had some issues with memory management that appear to make it less reliable for very long-running processes - I don't have first hand experience with that. The size of the community may also be an issue, since there are not many companies deploying enterprise applications on Mono and you may experience issues completely unique to your stack and have no other way to solve it than to redeploy on .NET.
10 comments
[ 13.3 ms ] story [ 144 ms ] threadhttp://xamarin.com/platform
Dow Jones
Tesco
Microsoft
Bosch-Siemens
Direct Energy
Ara
Sennheiser
Kimberley-Clark
Xactware
National Instruments
To pick just the people on http://xamarin.com/customers
And, mind you, you forgot the platform almost every internet connected server runs.