Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

I am interested to know how many real world web application servers are hosted by windows?

I am going to learn C# and ASP.NET and want to convert my self from an embedded developer to a web app developer.

My friends told me that there are ways more Linux based servers than windows servers. He also mentioned the Java skills stack is much more useful than .NET in the world of web application.

My experience of Java and C# are rougly the same. I am an experienced C++ developer though.

Can anyone give me some suggestion about it?

Many thanks

share|improve this question

migrated from stackoverflow.com Oct 5 '11 at 17:51

This question came from our site for professional and enthusiast programmers.

closed as not constructive by Walter, Wayne M, ChrisF Oct 6 '11 at 13:09

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.If this question can be reworded to fit the rules in the help center, please edit the question.

    
@home -- Why this mania for closing questions on this forum? Its a question to programers about programming and its possible to give pretty specific answers about the pros and cons without recourse to a flame war. –  James Anderson Oct 6 '11 at 10:26
add comment

4 Answers

up vote 14 down vote accepted

In contrast to @John Fisher (+1) I'm a Java guy.

I am always jealous of the Windows/.Net world because everything seems to be much more integrated, at least for someone who is not familar with all the details and pitfalls.

The Java place is a bit more chaotic, therefore it produces a number of fairly innovative ideas (think of hadoop, Spring, etc.) outside of the JCP which promotes the official JavaSE and JavaEE standards. As the JCP is driven by a bunch of different (commercial) organizations it's sometimes far behind (e.g. lambda functions in Java) as it simply takes time to find agreements between all the different participants.

There are a number of pros and cons for both sides. Nevertheless, from a technical point of view it does not really matter whether to do Java or .Net as web development is much more about thinking in scalability and the overall complexity when it comes to e.g. 10k concurrent users accessing your system.

From a software architecture point of view .Net and Java (EE + frameworks) are fairly similar, they both provide APIs to solve all the common problems (e.g. MVC, Rest, JSON, Persistence, messaging - just to name a few) we're facing in today's world.

To conclude - have a look at both concepts and pick one. It's not a decision for lifetime.

share|improve this answer
2  
+1 You're right it is not a decision for a lifetime. I actually make it my goal in life to learn as many different programming languages and environments as possible. IMHO it gives me an understanding of programming irrespective of the language. I'd almost suggest people should learn both. –  James Khoury Oct 6 '11 at 1:32
1  
@James Khoury: Wise words, I have 'learing .Net' on my agenda for 3 or 4 years now - problem is finding a slot and I guess this is a challenge for all of us. I just stepped back from the 'overblown' enterprise frameworks and moved over to the functional world - something I learned years ago at university, but never applied in real world scenarios. –  home Oct 6 '11 at 11:27
    
+1 for its not a decision for a lifetime. –  Badar Sep 18 '12 at 0:18
add comment

I'm not sure the number of servers really matters. What does matter is: Can you accomplish the goals reliably, quickly, and cheaply enough with {x}?

As far as .NET is concerned, it would be rare to get a "no" answer to that question. (I'm not a java person, so can't help much there.)

Linux vs. Windows servers is not quite relevent, either. You can develop .NET web apps to run on Linux servers, using Mono.

share|improve this answer
1  
+1 for "linux vs windows is not quite relevent". –  James Khoury Oct 6 '11 at 1:30
add comment

Well having worked extensively in Java and a little in .NET, I would say categorically and absolutely that .NET is a much nicer environment to work in.

Its a much more coherent and integrated programming environment and the ".NET" framework is complete. Java is much more like a treasure hunt there are good libraries and frameworks out there but you need to actively search and evaluate almost everything you need for a practical project, just getting a development environment set up correctly can take days.

There are a lot more *nix servers out there than windows server (and they are cheaper to rent) but not many of them host a J2EE server -- so the server count is irrelevant. Its much more a case of .ASP vs PHP.

The main reason to favor Java over .NET is that many of the Fortune 500 companies have standardized on one of the big 2 J2EE platforms: IBM's Webshpere or Oracle's Weblogic. Outside of this, admittedly gigantic, niche Java as a web application platform seems to have fallen out of favor.

share|improve this answer
add comment

These days the debate is more php vs asp.net than asp.net vs jsp. I don't see many jsp/tomcat solutions these days. Anyhow, why not learn both asp.net and jsp? They are similar ideas and I think jsp lays a good framework for understanding asp.net. I agree with @John that linux vs windows is really irrelevant. .NET runs fine in linux and apache. If you know JAVA then maybe spend a couple weeks writing some JSP code and then transition over to asp.net and c#. See which one you like and go from there.

share|improve this answer
add comment

Not the answer you're looking for? Browse other questions tagged or ask your own question.