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.
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.
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.
I'd like to look at a good example to give it another chance.
- 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.
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.
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.
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.
Written, unsurprisingly, by Facebook. Probably runs pretty well on HipHop I would imagine.
That made me chuckle.
- 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.
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.
https://github.com/leeoniya/dump_r.php
via Composer: https://packagist.org/packages/leeoniya/dump-r
There's nothing elitist about speaking the plain truth, which is exactly what he did.
https://news.ycombinator.com/user?id=leeoniya
http://milesj.me/blog/read/wordpress-is-bad-mmmk
http://www.usingwp.com/general-WordPress/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://stackoverflow.com/questions/1481631/why-is-wordpress-...
Have you ever used anything else? Like ever? Because WP is neither of these.
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)