I'm wondering, why would one (consider it not just a single developer, but a company) prefer C# or Java for web applications? What's their considerations regarding the question. I mean, a company, has an assignment to make a web-site for customer, or online game, or web-portal, how does the project management or/and the software architect (and the core team) came to the conclusion - "we will do it in ASP.NET MVC" for example? I know it's specific, but what are the common reasons? Especially, why instead of PHP? As PHP is purely designed for web. Maybe if it is for a single web-site, there are much CMS's where the customer is familiar with, but let's say PHP also has a lot of CMS's, and most of the ASP.NET ones are as spaghetti as wordpress is. Also, as I'm aware, the common webserver is a windows webserver, back in the days I started with computers, everyone was saying the administration in windows is worse than in unix-based platforms.

I really don't see the point. For me is just like waste of resources, I think you will need twice better machine running on Windows for the same achievements. C# for desktop - thumbs up, but for web - why?

Same for JSP. Its common server is cross platform, so no need of Windows, but still isn't it also waste of resources? And the question is the same as the paragraph - how a company would decide to use JSP.

The question was raised, because of lots of the sites rising in ASP.NET nowadays. To be honest, I have seen too few sites in JSP.

P.S.: Sorry, I didn't find the relevant tag for this, so I tagged the languages and the involved stuff

closed as primarily opinion-based by gnat, m3th0dman, thorsten müller, TZHX, Kilian Foth Oct 14 '13 at 9:57

Many good questions generate some degree of opinion based on expert experience, but answers to this question will tend to be almost entirely based on opinions, rather than facts, references, or specific expertise. If this question can be reworded to fit the rules in the help center, please edit the question.

  • Throw JRuby into the mix and I wonder why you'd even consider any of the platforms you mentioned. – davidk01 Oct 14 '13 at 7:19
  • @davidk01 JRuby or the Rails platform are using the Ruby language, which I think is different style of programming that the others. Well, I don't understand why using it aswell, but I think it's because a bit different than the others. In syntax and endpoints, C#, PHP and Java are all the same for me. Some people are blaming C# for just "stealing" the Java syntax :D Mentioning only these three platforms with strictly these lanaguages, is just because, for me, doing web apps with them, has no differences in code side – Royal Bg Oct 14 '13 at 7:28
  • 1
    Maybe they already have a very large MS infrastructure with MS servers, MS databases, MS ERP and so on, plus teams that are experienced with MS technology stack. Plus they like lots of documentation and lots of training courses to choose from giving them certified developers. Stuff like that sounds very, very nice to management. – thorsten müller Oct 14 '13 at 8:32
  • 2
    Many people consider PHP ... to be not so good (me.veekun.com/blog/2012/04/09/php-a-fractal-of-bad-design). Also, if you have some back-end that is already written in C# or Java and only want to build a website on top of it, it may make integration easier. – Cephalopod Oct 14 '13 at 9:47
  • 1
    Maybe they just like gorillas, and they think that the ability to stay warm in the winter is preferable to sharks ability to regrow teeth. Did you ever think about that? – Jimmy Hoffa Oct 14 '13 at 14:51

For the employment opportunities.

ASP.NET/Java is much more common in business environments, and people who know or even simply have the right buzzword on their CV, will get a pick of many jobs. PHP jobs are out there but are rare in comparison.

The technical aspects of both can be debated forever, and effectively doesn't matter - you can code up a website in any of them. Many people with that luxury will choose the technology they're most comfortable with, or want to learn - hence the website written in Ruby when it was the coolest, or node.js when everyone was raving about it.

  • Maybe the technical aspect was the one I was wondering. If ASP.NET/Java is better paid than PHP, then why would a company will make a certain project in ASP.NET, when they will need to hire developers on higher salary than PHP ones, and maybe they will need more machines for servers, software and system administation? P.S.: Like the answer :) – Royal Bg Oct 14 '13 at 8:04
  • Thanks. See my comment about Casablanca. I think MS saw how much money they were spending on cloud infrastructure and decided they really needed to make the software stack as efficient as possible. Until recently, we've had a mindset of 'my desktop has a quad core CPU with gigs of RAM so it can be bloated but easy for developers', server-side that's not the case. Trouble is, PHP is even more inefficient than ASP.NET/Java, but I'd say it is quicker to develop in (YMMV). – gbjbaanb Oct 14 '13 at 12:47

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