why don't big companies use PHP ?

Page 2 - Seeking answers? Join the AnandTech community: where nearly half-a-million members share solutions and discuss the latest tech.

n0cmonkey

Elite Member
Jun 10, 2001
42,936
1
0
Originally posted by: kamper
Originally posted by: n0cmonkey
Originally posted by: jbourne77
PHP does not scale well for enterprise applications. Furthermore, unless you are operating under very strict development standards with a very well-disciplined team, PHP does not lend itself well to large group development. Lastly, it doesn't separate well the various roles of components in a web application.

It's good for small tasks and rapid development, but for the reasons mentioned here (and others I surely missed), enterprises look elsewhere for a solutions platform.

Just like you wouldn't use J2EE to develop a clan website, you wouldn't use PHP to develop the next Amazon.com.
What makes a language more suited to group development?
Something with better type-safety and more rigidly defined interfaces so that you don't get a big blob of unmaintainable spaghetti-code. Something compiled is nice so that you have a computer to catch a large portion of your mistakes. How are the available unit testing frameworks for php? Any mainstream enterprise-aimed language will have numerous solid options.

Isn't one of the reasons programmers program in groups so that they can smack each other on the back of the head when they write something "unmaintainable?"
 

kamper

Diamond Member
Mar 18, 2003
5,513
0
0
Originally posted by: n0cmonkey
Originally posted by: kamper
Originally posted by: n0cmonkey
Originally posted by: jbourne77
PHP does not scale well for enterprise applications. Furthermore, unless you are operating under very strict development standards with a very well-disciplined team, PHP does not lend itself well to large group development. Lastly, it doesn't separate well the various roles of components in a web application.

It's good for small tasks and rapid development, but for the reasons mentioned here (and others I surely missed), enterprises look elsewhere for a solutions platform.

Just like you wouldn't use J2EE to develop a clan website, you wouldn't use PHP to develop the next Amazon.com.
What makes a language more suited to group development?
Something with better type-safety and more rigidly defined interfaces so that you don't get a big blob of unmaintainable spaghetti-code. Something compiled is nice so that you have a computer to catch a large portion of your mistakes. How are the available unit testing frameworks for php? Any mainstream enterprise-aimed language will have numerous solid options.

Isn't one of the reasons programmers program in groups so that they can smack each other on the back of the head when they write something "unmaintainable?"
Yes, but one programmer's views on 'maintainable' are entirely different than another's. After the head-smacking the philosophical argument starts, then the manager steps in and says "Stop wasting time, don't fix the bad code, just write more code as fast as you can."
 

n0cmonkey

Elite Member
Jun 10, 2001
42,936
1
0
Originally posted by: kamper

Yes, but one programmer's views on 'maintainable' are entirely different than another's. After the head-smacking the philosophical argument starts, then the manager steps in and says "Stop wasting time, don't fix the bad code, just write more code as fast as you can."

So that's a social issue, not a technological one?
 

kamper

Diamond Member
Mar 18, 2003
5,513
0
0
Originally posted by: n0cmonkey
Originally posted by: kamper
Yes, but one programmer's views on 'maintainable' are entirely different than another's. After the head-smacking the philosophical argument starts, then the manager steps in and says "Stop wasting time, don't fix the bad code, just write more code as fast as you can."
So that's a social issue, not a technological one?
Mostly it's a management issue, because management doesn't consider any code to be unmaintainable. There's never time for refactoring or anything that doesn't produce an immediate noticeable difference in functionality/performance.
 

Stuxnet

Diamond Member
Jun 16, 2005
8,392
1
0
Originally posted by: n0cmonkey
What makes a language more suited to group development?

Something suited to modularized design at the object level. For instance, each team on my staff consists of different levels of Java developers. For a medium-sized project, a few guys will lay out the framework via UML, interfaces, and abstract classes, while their reports implement the model.

This keeps things very structured, maintainable, reusable, and scalable. While I'm not a PHP expert by any stretch of the imagination, I really don't see how you could accomplish these goals nearly as easily using it instead of something like J2EE or .NET.

 

SelArom

Senior member
Sep 28, 2004
872
0
0
www.djselarom.com
Originally posted by: oog
while php allows for pretty quick development, it also makes it too easy to build spaghetti code

I'd have to say this is the biggest reason, but imo development is WAY quicker using asp.net than php. .net has code behind and such features lend themselves to the needs of businesses than php.

-SelArom
 

Stuxnet

Diamond Member
Jun 16, 2005
8,392
1
0
I've actually been playing around with C# and .NET for awhile and I like it. The RAD of VB, the OOP of Java, some of the flexibilities offered by C++... I like it.

I don't much care for the platform dependance that .NET comes with, but Java has plenty of its own shortcomings. Yeah, you get "platform independance", but varying levels of implementation conformance - especially with respect to J2EE - are a nightmare.
 

kamper

Diamond Member
Mar 18, 2003
5,513
0
0
Originally posted by: jbourne77
Yeah, you get "platform independance", but varying levels of implementation conformance - especially with respect to J2EE - are a nightmare.
J2EE interoperability is like cross-database sql compatibility. There's no way it'll happen without careful porting work, but the main value delivered by the spec is just the transferrable experience that the programmers gain.
 

n0cmonkey

Elite Member
Jun 10, 2001
42,936
1
0
The biggest problem I have with .Net related stuff is the fact it isn't platform independent. php and perl pretty much run everywhere. :p
 

yoda291

Diamond Member
Aug 11, 2001
5,079
0
0
Here's my theory:

The reason is because there are few, if any, standard practices in php. Pluck 2 random php programmers and ask them how they do error checking/handling, and odds are you'll get two wildly different answers. Ergo, everyone has their own "style" of doing things and seems to get an ego that their way is better because no one unified body has established a generally well accepted way of doing things.

Add to that the fact that about 70-90% of the php programming community picked it up without knowing a thing about basic algorithms, writing easily readable and maintainable code, or even how to properly test and check their code. Therefore, the pool from which you draw your talent is flat out mostly incompetents. Most other programming languages, while owning up their fair share of horrible programmers, have a higher ratio of people with at least a base competency.

Add to that php's steep learning curve(steep implies it is learned faster, shallow implies it is difficult to pick up), its "inline with HTML" style that every beginner's guide seems so fond of, and the fact that everyone and their grandmother can use a different OS and ide to write it, most php applications end up looking like a hodgepodge garble of mixed up code, odd line breaks, weird formatting and generally just becomes unmanageable.

Add to that the fact that microsoft enterprise support is excellent in every respect while php has no equivalent therein.
 

kamper

Diamond Member
Mar 18, 2003
5,513
0
0
Originally posted by: n0cmonkey
The biggest problem I have with .Net related stuff is the fact it isn't platform independent. php and perl pretty much run everywhere. :p
I think that's pretty much the trend when comparing any commercially designed platform vs. an open source platform.
 

ShadowBlade

Diamond Member
Feb 11, 2005
4,263
0
0
you cant just copy and paste the url and have it work on another computer
which would piss me off to no end if a company like newegg did that
 

Nothinman

Elite Member
Sep 14, 2001
30,672
0
0
you cant just copy and paste the url and have it work on another computer
which would piss me off to no end if a company like newegg did that

If you mean with PHP, sure you can. If you can't do that then the site is written poorly.
 

xtknight

Elite Member
Oct 15, 2004
12,974
0
71
Originally posted by: Nothinman
you cant just copy and paste the url and have it work on another computer
which would piss me off to no end if a company like newegg did that

If you mean with PHP, sure you can. If you can't do that then the site is written poorly.

oh GOD!!! I HATE THAT! there's nothing like manually digging into the code and reverse-engineering their POST commands. Or using Ethereal.