
Originally Posted by
bcasabee
In my opinion, I think the reason why java is more popular is because of flexibility and freedom from vendor lock-in. A .net application means buying almost everything from microsoft.
Your java program can run on almost every available OS in the market like Linux(free), Windows, Unix, Mac, etc. While a .net application only runs on Windows as far as I know.
A java based web application can run on many servers like tomcat(free), orion etc etc. But an ASP (microsoft) based web application I think only runs on IIS which is still from microsoft and you buy it.
A java based distributed application can run on may application servers like jboss, websphere, etc etc, and many of these application servers are free.
In .net, the application server is already integrated into the OS where the .net framework is installed, and no doubt, this OS will be only windows, so again, no other choices for you.
The tools available for creating .net applications are also microsoft centric. As far as I know, only visual studio (still from microsoft) is the only decent tool which can be used for creating .net applications and its not free, you can pirate it though at your own risk. With java, there are many tools to choose from, you can have eclipse(free), netbeans(free), JDeveloper, WSAD, etc etc. And many of these tools are free and can run on free OS like linux and some Unix variants. And most start up companies who are so particular about their budget would rather choose the free than buying microsoft products, thus the reason why java is leading.
So if your a windows fanatic, want to donate to Bill Gate's Foundation, and want to be lock-in to microsoft products, choose .net.
If you want something free and have freedom of choice, choose j2ee.
But with regards to which tool(j2ee or .net) can solve best a customer's business problems, all will actually depend on the software engineers who are designing the system.
our .net framework can run on linux + apache

.net is supposed to be platform independent... dont know with M$ lately, mostly when your programming you have targeted systems too. most applications have different builds depending on its OS so its out of the question. if you just stick to the native .net framework.. then you can be assured that it will also run on linux
Bill Gate's strategy of monopolizing the market is so blatant. I wonder why other people still can't see this? I don't mean to offend anyone but shouldn't we all be contributing to the open-source community where tools are not being monopolized?
MS strategy is to make it extremely easy to develop applications that even non-programmers can make them. They actually take the "studying part" from you. The one where you actually exercise your resourcefulness and eliminate laziness. And once they get you hooked, you're locked in to them. And you can't do any further developing without buying their other products.
Personally, what pisses me off is that people support this because Windows environment is a lot easier and oh well - I don't have to study hard about those things... And Bill Gates feeds on this laziness.
thats why there is technology, to make things better and easier. why not code in ASM? java makes you lazier than using ASM.

, also why adopt OOP it makes you more lazy because of code re-use

heeheh. in our field where change is a must the fastest to adopt to change survives