Yesterday I was thinking about advantages of Microsoft .NET solution. I have tried to find out why I should potentially use .NET platform for any of enterprise solution. During the finding time I found more limits than advantages. I think that one of the biggest one is Runtime environment .NET Framework. .NET Framework you can run only on Windows machines. In short way NO UNIX systems support. So at the first you lose freedom in that way. The fact is that this will also affect your customers. You can let them be dependent on Microsoft's products.
Other fact is licence conditions. What about developers environment ?
You will have to pay, again, again with never ending. What about documentation ? do you think, it's free ?
I really don't know if same problem you will have by JAVA platform usage. You are able to find so many free things and the fact is that documentation is available at most of cases.
I would decided for .NET solution only if I have all my system written in .NET. No other times. I think that lot of programmers/people will agree with me but main problem is sometimes people who are making decision...



Hi Miroslav,
I've thought of this issue for quite a time. Here's my 0.02$.
1. Most of time it's the customer who decide whether to use Java or .NET solution, not the developer (me or you). As the famous Ted Neward put it: "I use a variety of languages, tools, and OSes, and my choice of which to use are all geared around a single end goal: not to promote my own social or political agenda, but to make my customer happy."
2. IMHO, MSFT may produce a bad OS but it's actually pretty good when it comes to dev tool :). There're millions of .NET developers in the world, and they all use one single dev tool: Visual Studio. The fact that MSFT manages to keep all of the users happy should imply that they're doing something right. On the other hand, we have a few dev tools in Java world: Netbeans, Eclipse, and IntelliJ IDEA. Does this mean that none of them is good enough to be "the ultimate dev tool" for Java as MSFT's VS for .NET?
3. I agree that it sucks for .NET dev to have to pay for documentation. However, MSDN again got almost everything that a .NET developer would want to know. I have yet to see documentation with the same quality and quantity for Java (Google doesn't count:D! ).
I think the point here is not which side is right or better than another. There're many take aways that both side can learn :).
Posted by Teera on May 20, 2008 at 07:55 PM CEST #
Hi Teera,
I have blogged about it because conclusion could help to people which have interest to understand. Same like you I have experience with both and here are my comments :)
add 1) Of course, customers happiness is very important in the business ! I have worked for long time on customers support side. But I found out that sometimes customer has level of misunderstanding to the differences between technologies. Sometimes could be Java solution better than MS ones. The fact is if the customers is on the begin of his IT solution I could recommend Java technology. Because Java isn't so limited as MS.
add 2) You have mentioned a bad OS. I could agree with you but I have one note. Windows XP wasn't so bad for customers but in the other hand MS Vista little bit different :). Fact is that if you choose MS .NET platform the best development tool will be for you VisualStudio, of course :). It's understandable. MS doesn't offer documentation to his products, so no other developers could develop better tools :) It's very good license politics and tactics. Otherwise your customers lose freedom in so many ways, they will be limited only by MS.
I know there are many developers tool for Java, but in some ways they are same. None of them is the best. So selecting the IDE is on company politics. With every of Java IDEs you can create very high quality application !
Summary: You will do same decision like in MS case but the fact is with JAVA you have a choice compare to MS no choice only VisualStudio. With quite same bugs like Java IDEs have, but you have to respect them you have no choice! On this day Java IDEs are really good and similar in many ways (NetBeans, IntelliJ, Eclipse ...).
add 3)As I mention above, it's not only about documentation. It's about whole philosophy how business should works. No freedom only pay for licenses because licenses are making moneys !
One philosophy note: People like to be limited. Limitation offered to them feeling of safety. And sometimes they don't want to study other choice because they scared what they could found out.
Thanks for you comments :) Have a nice day.
Posted by Miroslav Kopecky on May 21, 2008 at 08:52 AM CEST #
All the differences come down to one main thing: Java is community driven, .NET is vendor driven. Thus, Visual Studio is the IDE for .NET development because there is only one vendor providing a complete .NET implementation: Microsoft. I think that is more issue than it being so supremely fantastic that no-one wanted to develop their own .NET IDE.
In contrast, Java is not focused on Sun. The platform specifications are developed by committee through the JCP (which could admittedly be more open). Sun recently released their reference implementation under the GPL, so there are now three competing implementations, all Free software, not to mention the existing ones from IBM and Apple that are licensed from Sun and adapted to their systems. The reason there is multiple IDEs is because the platform is open enough for others to develop one. You may get more uniformity with a single vendor controlling everything (and this is helpful in documentation), but do you really want to be solely dependent on one vendor and whatever licensing terms they dream up in the future?
Posted by Andrew John Hughes on May 21, 2008 at 09:45 AM CEST #
I think SUN will use same licensing terms in the future. I think that SUN doesn't want to change it. Why? Some comments to to MS VisualStudio. I think one of the main reason why there aren't other .NET IDEs is MS doesn't offer materials to do it.
When I worked like Windos 2000 administrator and I wrote network installation. I had all possible documentation to this OS but I missed lot of information there. I think it could be problem. MS wanted to sefe his knowledge even if you pay money for documentation. Other fact is who wanted to do concurency to MS ? :) Who is so strong to do it ?
Posted by Miroslav Kopecky on May 21, 2008 at 06:29 PM CEST #
Hi guys, i really liked the "Java is community driven, .NET is vendor driven" description.
Different business models but almost the same technology.
Posted by alper on August 19, 2008 at 03:11 PM CEST #
That's right. Everything needs to have right strategy of results pressentation. And give to potential users explanation around advantages of the usage.
Posted by Miroslav Kopecky ( Owner ) on August 21, 2008 at 01:31 PM CEST #