[PLUG] Facebook & PHP - massive speedup

Randal L. Schwartz merlyn at stonehenge.com
Thu Feb 4 23:36:58 UTC 2010


>>>>> "Carlos" == Carlos Konstanski <ckonstanski at pippiandcarlos.com> writes:

Carlos> Absolutely agree with Wes. There are a host of commonly-used
Carlos> interpreted languages today that are slow because they are
Carlos> interpreted. BASH, perl, python, ruby, javascript, vbscript. Are more
Carlos> examples needed? Let's see the list of counterexamples. FB is making
Carlos> their PHP run faster by compiling it. Why would they do that if the
Carlos> slowness of their interpreted language, and the benefit gained by
Carlos> compiling it, is a myth?

You're both wrong, but I'm not going to waste my time trying to convince
you otherwise.

The speed of a language has very little to do with "interpreted" or
"compiled".  There's a lot more going on, far more variables than that, like
whether the language has early or late binding, or expensive flexible data
types.

That's the myth I'm talking about.

For example, bash's slowness is because it has to do a lot of forking.
Nothing to do with "interpreted".  I could go down that list and explain each
one of those.

But I won't, because you've already made up your mind.

The fact that even after converting PHP to C++ only sped up the results by a
factor of *2* should be ringing alarms at this point.  It's *NOT* the
language.  It's *not* whether it's interpreted or compiled.

Besides, these days, we should be talking "results per programmer hour",
because that's the most expensive part of the equation.

It's the *real* reason Facebook is still coding in PHP, and not C++.  (Even
though I think PHP was a bad choice.)

-- 
Randal L. Schwartz - Stonehenge Consulting Services, Inc. - +1 503 777 0095
<merlyn at stonehenge.com> <URL:http://www.stonehenge.com/merlyn/>
Smalltalk/Perl/Unix consulting, Technical writing, Comedy, etc. etc.
See http://methodsandmessages.vox.com/ for Smalltalk and Seaside discussion




More information about the PLUG mailing list