.NET vs PHP in the Enterprise (comics strip)
codeclimber.net.nz
codeclimber.net.nz
And DAL's do matter for big apps. Ironically I advocate NHibernate as the ORM basis for a DAL, which is a port of a Java technology, so that doesn't make me much of a .Net-ist. And, sure, Doctrine ORM is coming for PHP.
I can understand mocking .Net in favor of the Java EE stack, or Python, or Ruby with RoR. But PHP? Really? PHP has a community supporting it - but is it really a language any of us would deliberately choose to write in, if not for its market share and ease of use for tiny starter projects?
A limited interpreted language that's unfriendly to serious architectural patterns, but that's just got so much market share because it's supported by a lot of infrastructure and because newbies can build toy projects in it easily - doesn't that sound like a typical anti-VB 6.0 rant from a few years back? It's just that now Microsoft happens to be on the other side of the argument.
Short, pointless projects: use PHP
Big, expensive corporate disasters: use .Net
Unscalable trainwrecks: use RoR
Anyway it reminds me of what Borges said about Argentina and the UK going to war over the Falkands/Malvinas: "Like two bald men fighting over a comb."
(disclaimer: I make my money doing .Net work, no matter how hard I try to escape)
You repurpose business logic to different environments by maintaining good separation of concerns, which is definitely doable in PHP despite the prevalence of crappy PHP code out there. That's a community problem.
Faulting PHP for not having "compile-time type checking" is like faulting a car for not flying.
The solution for PHP performance is opcode caching. You certainly aren't going to write novel Monte Carlo simulation code in PHP, though - that's not what it was designed for.
You have to evaluate a language/platform against its design goals, and failing to do that just broadcasts ignorance.
Any other questions?
Corporate types love .NET because it provides a comfortable buffer of bureaucractic bullshit that makes them look busy without actually producing anything. The whole Microsoft infrastructure just keeps people busy upgrading, fixing, reinstalling, documenting, and arranging project scehdules. It's just pure Dilbertware.
Personally I prefer PHP. I could probably state reasons why and a .NET fanboy would come through and say .NET does all of those too.
And the world keeps spinnin'.
That leads to more inexperienced people landing at PHP and staying there.
Pick a few random pages out of http://msdn.microsoft.com and see for your self that Microsoft is just a marketing/sales company.