2. The JVM offers enormous ecosystem
of products, libraries and tools
Kalense Kid http://www.flickr.com/photos/sharman/4935276033/sizes/z/in/photostream/
Coming from .NET background .NET in Rafael Worked in MSSee/made mistakes in choosing .NET in past few projects (xsights, IAF, CodeValue)
anything from fast and efficient serialization to tooling for map/reduce to memory data grids to application servers and communications A lot of them are open sourced an free with permissive licenses
The Java platform is much more rich than the .NET one No need to reinvent the wheel – more time to focus on building business advantage E.g. ESBAuthenticationAuthorizationMediationService RegistryAudit TrailLoggingTracing.Net / Java interoperability Rule engines NoSQL databases (Cassandra, Hbase, MongoDb, Redis…)
Windows and Linux Reuse code between engines and servicesIncreased flexibility (l
No vendor lock-inE.g. Hadoop ClouderaIBMMaprEMCNetappMellanoxHortonworksEven Microsoft is working on one
Even Azure supports Javahttp://www.microsoft.com/windowsazure/interop/
Microsoft itself never fully adopted .NETOffice, Windows, SQL all have .NET interoperability written in C++Windows 8 has WinDiv winning over DevDivWinRT (COM is back) C++11 (C++0x ) has a lot of power (lamdas, closures, type infernece etc.DevDiv “lost” a lot of leaders to other groups e.g. Scott GuthrieAzure is taking a lot of resources