Hacker News new | past | comments | ask | show | jobs | submit login

I think it's cool to have great PHP support on Heroku. PHP doesn't always get much love from a lot of the developer community, but it has its place and if nothing else, Heroku support means you can migrate your app there from a shared Dreamhost account if it ever blows up.

It's good to have options.




>> PHP doesn't always get much love from a lot of the developer community.

This is odd since most people don't think of equating WordPress with PHP, but WP gets a TON of love from the development community.


No developer I know likes WordPress. In fact, there's almost universal hate and dread about having to work with it. From a user perspective it's decent, but its codebase (and community) is terrible.


Meh. I don't mind it, and it drives some of my eCommerce sites through WooCommerce. Nothing huge of course, but annual sales in the six figures. It's not that bad, really.


the irony is that WP source and plugin architecture is written in textbook shit PHP from the 90s. (last i worked with it a couple years ago). i would not wish WP development onto my worst enemies. i really hope it gets displaced by something managable written in proper PSR-0 and >=PHP 5.5

in many ways, WP exemplifies PHP core devs' philosophy of "dont ever break existing ecosystem compat". PHP has some major WTF that lingers on because of this. i'm very surprised that it has been progressing at all considering how stubborn they are on even fixing completely obvious shit like "unexpected comma" errors written in Hebrew. wordpress takes this attitude to a whole new level :(

there is great, maintainable software written in clean* PHP; the only thing i've learned from WP is how not to write software.


can we tone down the elitist attitude? i personally enjoy how simple WP is to use and extend - that's one of its core strengths. As with any complex piece of software, there are a few wtf's to be had.


Upvoting you because you said nothing which deserved a downvote. You have asked a civil question and contributed to the discussion.

I feel the tension you have - it's great to have something simple to use (time to learn WP and produce app X < time to learn Symfony2 and produce app X) and sometimes that's what's needed; it's also nice to have a sane core architecture.

I've worked with PHP 10+ years and WP on and off (had an argument with Matt back in 2003 about WP's code architecture which led to me not getting involved in the project) and WP might be 'easy' but it's not 'simple'. I have to go to the wiki or Google frequently, the functions do not have obvious names, 'The Loop' is crazy behaviour once in an app... a solid modern codebase in the centre would make life easier. Keep the easy extendable nature of it sure - it's great to have a slightly messy outer layer. But please give me a solid core (and a saner template rendering pipeline)



> can we tone down the elitist attitude?

There's nothing elitist about speaking the plain truth, which is exactly what he did.


Or she did.


let's not start jumping on each other's asses every time someone doesnt use s/he; there are about 1e6 ways to determine that i'm a dude, not least of which is my russian username. i, for one, do try to check this when referring to others before resorting to being ambiguous.

https://news.ycombinator.com/user?id=leeoniya

https://www.google.com/search?btnG=1&pws=0&q=leeoniya

https://github.com/leeoniya

https://twitter.com/leeoniya


> how simple WP is to use and extend

Have you ever used anything else? Like ever? Because WP is neither of these.


What's your favorite example of great, maintainable open source software written in clean PHP?

I'd like to look at a good example to give it another chance.


- Doctrine - ORM

- Symfony - framework

- Silex - micro framework based on symfony components

- Laravel - framework

- Slim - framework

- Swiftmailer - email/transport framework

- Guzzle - http web service client

- React - async i/o

- reactphp/promise - promises

- AuraPHP - framework components

- Ratchet - web sockets

- Assetic - Asset Management for PHP

- Piwik - Open Source Analytics

- Monolog - Logging

- Goutte - a simple PHP Web Scraper

many projects use modular components from these and others.

also check out some repos with a lot of stars https://github.com/search?l=PHP&q=stars%3A%3E1&s=stars&type=...

careful though, Wordpress is there also.


You forgot to mention the one that rules them all:

https://github.com/composer/composer


i half-intentionally left it out. not because it's poorly written, but because its design/architecture may be somewhat lacking.

http://www.borfast.com/blog/i-hate-php (see Composer section)

while i have not profiled it myself, i've certainly experienced how slow it can be with deep dependency graphs stemming from a few, common top level "require"s. i dont want its slowness to be equated to poor PHP perf in general or something equally unwarranted.


That article is just more of the usual bullshit used to bash PHP, maybe to make authors like himself feel better about not using it, and have a good laugh with other bitter peers. Haters gonna hate.

The author is comparing Composer to Bundler, which makes no sense because Composer does a lot more than Bundler. With Composer you can do things exactly the way you want. He says "I don't know what it does under the hood, if it clones every single repository of every required package independently of it being necessary", proving that he didn't even bother learning how to use the tool.

There is no way you can live with Bundler after having used Composer. Trust me, I was a Rails guy.


despite the tone, the author does make some valid points. im no php evangelist myself and find http://phpsadness.com/ quite objective


Well I only cared about Composer and all his points were wrong.

I'm not here to get into another PHP debate. Non-phpers can waste all their time hating if they want, and then go fight with all the problems they have with outdated components like Bundler, create hacks to simulate features that are native in PHP and other OOP languages (eg: interfaces in ruby, abstract classes in python), etc. I'll just get things done in a professional manner using what seems to be the best web platform of our time and then enjoy life.


Adding to leeoniya's list:

- Behat https://github.com/Behat/Behat - a BDD framework

- phpSpec https://github.com/phpspec/phpspec - specBDD framework

- Sylius https://github.com/Sylius/Sylius - an e-commerce solution built using Symfony and BDD.

All of these are written with current best practices, respect SOLID principles etc.


Shameless plug-

Stash - PHP Caching Library https://github.com/tedivm/Stash

Fetch - IMAP Mail Reading https://github.com/tedivm/Fetch

JShrink - Javascript Minification https://github.com/tedivm/JShrink

I've also created a PHP Project Template (https://github.com/tedivm/PhpProjectTemplate) that includes things like composer, unit test configuration, travis-ci and coveralls integration, and various other things that people can use to bootstrap their modern php project.


i wasn't gonna post my own, but might as well.

https://github.com/leeoniya/dump_r.php

via Composer: https://packagist.org/packages/leeoniya/dump-r


https://github.com/scrutinizer-ci/php-analyzer is a good example of modern PHP development IMO.


Phabricator - http://phabricator.org

Written, unsurprisingly, by Facebook. Probably runs pretty well on HipHop I would imagine.


"Written in PHP so literally anyone can contribute, even if they have no idea how to program."

That made me chuckle.


Laravel.


That's just a wrapper around Symfony2.


It's definitely not a wrapper, but it does use a lot of its components.


Ironically, the old WordPress motto was "code is poetry".


Poetry is often about pain and torment. :)




Join us for AI Startup School this June 16-17 in San Francisco!

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: