11 ms·
Facebook.
by illumen 14y ago
Facebook.
- drivebyacct2 14y agoI very specifically didn't say that PHP couldn't be used to build real products, but that still doesn't (at least on it's own) make it good or make it the best.
- illumen 14y agoI guess the worlds most popular websites, and the vast millions of PHP programmers must all not really exist. They can't exist, and can't be making good stuff, because PHP is just doesn't work. Here is a list of template languages people on 'real' platforms use: Python. Airspeed, Castalian, Chameleon, Cheetah, CubicTemp, Django template system, Elements, EmPy, Evoque, HRL Powerful macro preprocessor for HTML, Genshi, Jinja 2, Mako, moody-templates, Myghty, Qpy, PML, pyratemp, Spyce, SUIT, Tempita, Tenjin, Template Toolkit, Templite+, thrases, ClearSilver, HTMLTemplate, JonsPythonModules, meld3, PyMeld, Pyxer, pso, Sprite, teng, webstring, XSLTools, PyPa, Genshi, kajiki, htmltmpl, Kid, SimpleTAL, CherryTemplate, AsciiDoc, Markdown, PyTextile, ReStructuredText, txt2tags, PottyMouth, Creole, Ruby. Radius. HAML. cs/Template. ERB, eRuby, Erubis, Galena, Tenjin, Liquid Markup. Ruty, PageTemplate, Amrita, Amrita2, Kwartz, Markaby. Maline. Builder::XmlMarkup, RedCloth, BlueCloth, RSmarty, Tempura, TAL, Curtis / Punk, Erby, RBML, RTALS, Tie, RVelocity, RailTags, Java. FreeMarker, SiteMesh, StringTemplate, Tea, Better Templates for Everybody, jxp, LSP, JCopist, Dynamator, RTFTemplate, Velocity, JByte, Jamon, JDynamiTe, WebMacro, Viento, IKAT, Bluprints, Transformica, Hapax, MiniTemplator, Xtempore, _Not a complete list._ PHP is a pretty good template language, with pretty amazing documentation. To deploy, you just upload a file. You could walk outside now, and start yelling "I NEED A PHP PROGRAMMER!" and you'd probably find someone pretty quickly. There are millions of hosts to choose from at tiny prices, who can provide support because they know the platform.
- talkingquickly 14y agoSaying PHP is good because Facebook use it is kind of like saying phone hacking is good because it was utilised but some of the UK's most popular newspapers... I'd be interested to know if there's any commentary from people high up in Facebook on whether they'd use PHP again if they were starting now?
- nivla 14y agoWhat kind of an analogy is that? It is not only flawed but does not relate to your argument. I guess the point that illumen was trying to make is that PHP can be used in popular real world applications and is "proven" to scale. Just like Facebook, you can look at Wikipedia, Wordpress, Tumbler or earlier days of Youtube all of which was/is written in PHP! Be comfortable with the language you prefer and quit whining about the rest!!!
- talkingquickly 14y agoIn no way whining about PHP, I still maintain various projects which use it and for which I think it's well suited. The analogy was only meant to demonstrate an objection to arguments along the lines of "it's used by something popular therefore it's good" or "lots of people use it therefore it's good" which seem to be common points put forward in favour of PHP. Popularity/ use by someone popular may be an indicator of quality but it very often isn't, the analogy isn't intended to go any further than that!
- tomelders 14y agoNo, it's nothing like that.
- jfarmer 14y agoLook at Quora, Path, and Asana, the three most successful consumer startups started by former Facebookers. None use PHP.
- OyoKooN 14y agoYeah. That's why they completety rewritten it...
- slurgfest 14y agoI guess your point is that there are too many options. But you have artificially inflated the count as you have made this point. Most of the things you have listed are not applicable (either not used any more, or are not general and were never used to compose full HTML pages). Cut out the ones which are not actively developed and you only have a handful for each language. Since the problem seems to be that you need someone to choose for you: use Django on Python, use Rails on Ruby, and for each one use the templating that comes with it. If you switch to another framework, use its templating language. If you are advanced enough to use a microframework then you are advanced enough to plug in Jinja2 or whatever it is you really want. Django, Rails, and Jinja2 have excellent documentation. I can't understand why you would think that PHP's documentation is significantly better. You get what you pay for on super-cheap hosts who are somehow incompetent to understand Python or Ruby. And choice is not a bug.
- ceejayoz 14y ago> Cut out the ones which are not actively developed and you only have a handful for each language. "The template language you pick has a good chance of becoming an abandoned project" hardly seems a great selling point.
- drivebyacct2 14y agoYou literally just repeated all of the things that I just got done addressing. You also continue to ignore that I said NOTHING about PHP not being usable for "real sites". I also, still, don't get your point. There are other templating languages for PHP too. Again, your deployment argument is just as silly as your availability argument. It's trivial to deploy to Azure (sites) or Heroku, or Ironio or gondor, or any Go project, or etc, etc. >There are millions of hosts to choose from at tiny prices, who can provide support because they know the platform. Are you even reading what I write? Please show me a real webapp with actual users hosted on el cheapo shared hosting.
- greyfade 14y ago> You could walk outside now, and start yelling "I NEED A PHP PROGRAMMER!" and you'd probably find someone pretty quickly. This is something that I point out as a negative. Yes, you can get a PHP programmer just about anywhere. But being that there are so many, it's harder to find those few truly talented programmers. My own complaint about this is that if you bring in cheap PHP programmers, you end up with cheaply-written PHP. And the result is inevitably an unmaintainable mess. If you want well-written, maintainable code, you have to be willing to hire talented and experienced programmers. And in doing so, you give up that so vaunted "advantage" of PHP's mindshare. Moreover, it seems to me that the truly talented programmers that would produce good software have a tendency to distance themselves from PHP. So it seems to me: Choose PHP for cheap, quick projects on a budget for which quality is irrelevant; or choose a "harder" language for solid applications that will stand the test of customer interaction.
- tijs 14y agoAnd just because a big site uses it the language does not become good either, see the availability argument. I think most PHP programmers would not recognize what's running at Facebook as PHP with all the customization they have done.
- davidlumley 14y agoI keep hearing people mention Facebook as a reason why PHP is a great development language but they compile it down to C++ using their HipHop compiler, and from what I understand they develop Facebook _in spite of_ PHP ( http://www.quora.com/Do-Facebook-engineers-enjoy-programming-in-PHP http://www.quora.com/Do-Facebook-engineers-enjoy-programming... )
- nicholassmith 14y agoI got downvoted on another PHP related thread here for bringing that up. Can you truly say they use PHP when they've invested a hell of a lot of money into HipHop to essentially allow devs to write additional PHP code and transform it into C++ binaries? It's a strange way of using it for sure, but it seems to be effective for them.
- memla 14y agoRight, but Facebook supposedly receives 1 billion new comments + a couple billion likes + a couple hundred million status updates daily, and is probably the largest photo sharing site on the net. Twitter gets about 200 million tweets daily and Reddit has 250 million comments total. Disqus is not much larger than Reddit. So, since most people here are suggesting Python or Ruby, what real world example can we provide that compares to Facebook in order to make sure that these languages would perform better than PHP? Neither Twitter, nor Reddit or Disqus are exactly the most stable and performant sites out there. So? I would say that quick and dirty comparisons like this are meaningless.
- lars512 14y agoGoogle is the real-world example of Python deployment you're looking for, although we don't have the full details of where it begins and ends in their no doubt complex stack. So again, the comparison isn't that useful. Talking about what languages programmers find enjoyable and productive is perhaps more meaningful. This is where Python and Ruby shine, and PHP falters.
- Kudos 14y ago
- tikhonj 14y agoYes. And now Facebook is spending a ton of resource and man-hours programming around this. They had to write their own compiler! Also, I think they are trying to move away from PHP as quickly as possible without rewriting the entire site. The new projects and tools are not in PHP; moreover, I think most of the new people they hire never have to use PHP at all. Finally, just because they managed to use PHP to run a bit site does not mean it is the best web language, or even a good web language. It just means it's adequate.
- illumen 14y agoThe Face Book.
- InclinedPlane 14y agoYou get the same issues almost no matter what you write a website in, whether it's PHP, C#, Rails, or node.js. When you get to the level of scale that Facebook is at you are in a realm that conventional web application tooling and frameworks don't cover. If anything the "best" and most trusted platform for what facebook is doing today would be java. Does that mean java is the "best" web platform? Not in the least. The central fallacy here is imagining that one size could or should fit all, whether it's php or rails or anything.
- rimantas 14y ago> Yes. And now Facebook is spending a ton of resource and > man-hours programming around this. They had to write > their own compiler! Is there a project of Facebook scale which does not have "their own" at the very core, no matter initial choice of technology? My understanding is that by solving problems no one had to solve before you are bound to create "your own" stuff. Even for desktop — didn't Excel have it's own compiler?
- Kudos 14y agoThe same argument could be made of Ruby on Rails, just look at Twitter moving core infrastructure to the JVM.
- tikhonj 14y ago