
Ewww, You Use PHP?  - equilibrium
http://blog.mailchimp.com/ewww-you-use-php/
======
slinkyavenger
I wouldn't want to go back to programming PHP due to its many issues[1]. I
especially wouldn't want to work somewhere that spends development energy on
BobX[2] to make PHP easier to work with. That means I have to use two
technologies that won't give me any way to advance in the industry, and will
most likely hinder me at this point.

[1] [http://me.veekun.com/blog/2012/04/09/php-a-fractal-of-bad-
de...](http://me.veekun.com/blog/2012/04/09/php-a-fractal-of-bad-design/) [2]
<http://thedailywtf.com/Articles/We-Use-BobX.aspx>

~~~
krazymelvin
People really need to stop posting that fractal article. Any PHP dev worth
their salt would be able to tell you that guy clearly has no major experience
with PHP (or any understanding of OOP for that matter).

Here's a few discussions on just how wrong [1] and clueless he really is [2].

[1] <https://news.ycombinator.com/item?id=4177516> [2]
[http://forums.devshed.com/php-development-5/php-is-a-
fractal...](http://forums.devshed.com/php-development-5/php-is-a-fractal-of-
bad-design-hardly-929746.html)

------
jd007
I have no doubt you can do a lot of powerful things with PHP, provided you
have the experience and put in the man power + time. But this does not justify
the use of PHP now (for new projects), it just means that if you happen to be
stuck on PHP because of legacy code, you could make it work.

~~~
krapp
But to be fair, wouldn't you also have to put in the manpower+time to get the
experience to learn to do it in another language?

PHP is not all procedural spaghetti code, it does have modern frameworks, some
of which are quite nice. And despite it's flaws (yep... someone posted
Veekun's thing, everybody take a shot) there are reasons for choosing it, such
as low overhead for deployment, and ubiquitous availability.

~~~
slinkyavenger
Yeah, I posted Veekun's thing.

Low overhead for deployment and ubiquitous availability are definite
advantages for the beginning of a project. Unfortunately, those two advantages
disappear when your site becomes successful. For a large user base, there's
more overhead involved in keeping a PHP webapp running smoothly, and by that
time you won't need ubiquitous availability because you'll be, hopefully,
running and configuring your own servers.

~~~
krapp
I can only assume you're right because I have no experience with having a site
that's successful by anyone's standards (much less doing it in Python or
Rails), but to me that still leaves a lot of room at the bottom of the pyramid
for sites and apps that might not have any reason to expect such a large
userbase.

------
bdcravens
What I'm confused by, is why is this even a conversation? PHP is possibly the
most used language in the world. I'd presume that there's tons of highly
qualified engineers to choose from, who are already bought in to the value of
the language.

~~~
qompiler
There is a lot of stroke inducing legacy PHP code out there in the wild. A lot
of people have had a really bad experience working on projects that used PHP.
The ease of entry allowed flocks of inexperienced software developers to grow
PHP projects like mushrooms throughout the world.

I think it's largely bad rep due to the ease of misuse and dodgy frameworks.

------
rkv
So if you replicated their special and custom 'platform' in Ruby or Python and
it exceeded PHP's performance by miles what would their reasoning for
continuing to use PHP be?

~~~
yareally
Because they're costs in replacing an entire infrastructure that go beyond
simply making the choice to switch to something else.

\- How knowledgeable your current employees are with it (and willingness to
adapt and switch, as well as how long it will take to be as productive after
the switch)

\- Time taken redo all your servers to support it and pay someone to do it

\- Subtle bugs that may appear related to the platform switch and not being as
knowledgeable about it at first.

\- As someone else mentioned, they may actually like PHP. That may seem hard
to understand for some, but heck, there are even people like that like Java.
We might not fall under either case, but for the same reasons people like
other things that people may find inferior (certain car brands, TVs, PCs
components, etc), people apply the same logic to programming languages.

~~~
rkv
>Because they're costs in replacing an entire infrastructure that go beyond
simply making the choice to switch to something else.

I'm assuming that they don't have to worry about any of that and are given
three platforms (PHP/Ruby/Python) that, for the sake of my argument, all do
the same thing. Then we ask the question, which would they choose and why?

~~~
yareally
While it's a worthy question to ask, it's not applicable to them outside of
theory, since they have been using PHP since they started some years ago. If
you rephrase the question to a company just starting out, then it would be
more fitting :)

If you look at the larger companies that do switch platforms, the ones that
generally make the leap usually do so without replacing the entire stack (Java
to jRuby or Java to Scala, etc). Not always the case (since the language can
still be hurdle itself), but the cost to switch in those sort of cases is far
lower than jumping off the jvm/clr/etc.

I'm sure if you asked Facebook now (and got an honest answer) that they would
totally agree they would have picked another language and platform than PHP to
build on given what they have had to go through since. However, PHP is what
the developers knew starting out and sometimes it's better to go with what you
know than learning something entirely new as building something from scratch
is already a huge undertaking that can wear you down. Adding the burden of
learning a new language/platform at the same time can lead to taking on too
much and slow progress/motivation as well as lead to procrastination or
distraction. It might lead to regrets later, but the greater regret is not
building at all than choosing the right platform.

------
epoxyhockey
This article was written in Oct 2010, but it looks like they still use PHP.

