5 ms·
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 W
by leeoniya 13y ago
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.
- ianhawes 13y agoIronically, the old WordPress motto was "code is poetry".
- juddlyon 13y agoPoetry is often about pain and torment. :)
- jrochkind1 13y agoWhat'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.
- walden42 13y agoLaravel.
- leeoniya 13y ago- 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=Repositories https://github.com/search?l=PHP&q=stars%3A%3E1&s=stars&type=... careful though, Wordpress is there also.
- jafaku 13y agoYou forgot to mention the one that rules them all: https://github.com/composer/composer https://github.com/composer/composer
- leeoniya 13y agoi 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 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.
- jafaku 13y agoThat 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.
- danudey 13y agoPhabricator - http://phabricator.org http://phabricator.org Written, unsurprisingly, by Facebook. Probably runs pretty well on HipHop I would imagine.
- mgkimsal 13y ago"Written in PHP so literally anyone can contribute, even if they have no idea how to program." That made me chuckle.
- adamors 13y agoAdding to leeoniya's list: - Behat https://github.com/Behat/Behat https://github.com/Behat/Behat - a BDD framework - phpSpec https://github.com/phpspec/phpspec https://github.com/phpspec/phpspec - specBDD framework - Sylius https://github.com/Sylius/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.
- kodablah 13y agohttps://github.com/scrutinizer-ci/php-analyzer https://github.com/scrutinizer-ci/php-analyzer is a good example of modern PHP development IMO.
- tedivm 13y agoShameless plug- Stash - PHP Caching Library https://github.com/tedivm/Stash https://github.com/tedivm/Stash Fetch - IMAP Mail Reading https://github.com/tedivm/Fetch https://github.com/tedivm/Fetch JShrink - Javascript Minification https://github.com/tedivm/JShrink https://github.com/tedivm/JShrink I've also created a PHP Project Template (https://github.com/tedivm/PhpProjectTemplate 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.
- leeoniya 13y agoi wasn't gonna post my own, but might as well. https://github.com/leeoniya/dump_r.php https://github.com/leeoniya/dump_r.php via Composer: https://packagist.org/packages/leeoniya/dump-r https://packagist.org/packages/leeoniya/dump-r
- deleted 13y ago[deleted]
- zapt02 13y agocan 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.
- gnaritas 13y ago> can we tone down the elitist attitude? There's nothing elitist about speaking the plain truth, which is exactly what he did.
- pessimizer 13y agoOr she did.
- leeoniya 13y agolet'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://news.ycombinator.com/user?id=leeoniya https://www.google.com/search?btnG=1&pws=0&q=leeoniya https://www.google.com/search?btnG=1&pws=0&q=leeoniya https://github.com/leeoniya https://github.com/leeoniya https://twitter.com/leeoniya https://twitter.com/leeoniya
- leeoniya 13y agoi am speaking from experience. and without getting into it myself, please refer to some others' opinions. http://milesj.me/blog/read/wordpress-is-bad-mmmk http://milesj.me/blog/read/wordpress-is-bad-mmmk http://www.usingwp.com/general-WordPress/why-WordPress-sucks/ http://www.usingwp.com/general-WordPress/why-WordPress-sucks... http://www.phpvs.net/2009/12/08/an-exercise-in-WordPress-integration-or-why-WordPress-sucks/ http://www.phpvs.net/2009/12/08/an-exercise-in-WordPress-int... http://premium.wpmudev.org/blog/7-bad-things-about-WordPress/ http://premium.wpmudev.org/blog/7-bad-things-about-WordPress... http://stackoverflow.com/questions/1481631/why-is-wordpress-considered-to-be-poorly-programmed http://stackoverflow.com/questions/1481631/why-is-wordpress-... http://someguyjeremy.com/blog/why-i-hate-wordpress http://someguyjeremy.com/blog/why-i-hate-wordpress http://bergie.iki.fi/blog/wordpress-decoupled/ http://bergie.iki.fi/blog/wordpress-decoupled/