Should we choose Java over C# or we should consider using Mono?
- by A. Karimi
We are a small team of independent developers with an average experience of 7 years in C#/.NET platform. We almost work on small to average web application projects that allows us to choose our favorite platform.
I believe that our current platform (C#/.NET) allows us to be more productive than if we were working in Java but what makes me think about choosing Java over C# is the costs and the community (of the open source).
Our projects allow us even work with various frameworks as well as various platforms. For example we can even use Nancy. So we are able to decrease the costs by using Mono which can be deployed on Linux servers. But I'm looking for a complete ecosystem (IDE/Platform/Production Environment) that decreases our costs and makes us feel completely supported by the community. As an example of issues I've experienced with MonoDevelop, I can refer to the poor support of the Razor syntax on MonoDevelop.
As another example, We are using "VS 2012 Express for Web" as our IDE to decrease the costs but as you know it doesn't support plugins and I have serious problems with XML comments (I missed GhostDoc).
We strongly believe in strongly-typed programming languages so please don't offer the other languages and platforms such as Ruby, PHP, etc.
Now I want to choose between:
Keep going on C#, buy some products and be hopeful about openness of .NET ecosystem and its open source community.
Changing the platform and start using the Java open source ecosystem