On 5 February 2014 22:49, Thomas D. <whist...@googlemail.com> wrote: > Hi, > > Rasmus Lerdorf, the PHP creator, was invited to give a talk in PHP > Frameworks Day conference. > > He talked mostly about the latest PHP developments, but in the > question and answers section, somebody asked Rasmus about his opinion > on the PHP frameworks. That was as straight question about his > opinion, so Rasmus gave a straight answer (near 31m 47s): "They (PHP > frameworks) All suck!" >
> It may seem odd that a guest speaker goes to a PHP frameworks > conference telling all of them suck. However, the audience seemed to > have enjoyed the answer. Anyway, Rasmus went into more detail about > what he meant. > > He used those terms just to cause a bit of fuss and make the audience "shake" a bit. That's what talks at a conference are for: informing and entertaining. After all, he's the first guy building custom PHP extensions for Yahoo, causing quite some issues there as it seems ( http://news.php.net/php.internals/71735 - making PHP internals his own framework). He didn't just plainly say "sucks". Yes, most "full-stack" frameworks are solving more problems than what we need to be solved, and that's why we go modular with everything nowadays. I still personally prefer the full-stack approach because my use case is not scalability and high concurrency, but complex business problems for enterprise customers. These people don't care about how fast a system goes, rather than how well a problem is solved, how much it will cost to maintain the solution and how many bugs and security issues may be involved with it in the future. You can't know any of those for sure, but a framework usually gives you a better ground to build a solid application, while the plain language usually requires a highly skilled developer to achieve that. To make an example, a house could be built with modular components that get shipped in a single shot and assembled in one or 2 days (yes, that already happens in many northern european countries) or it can be built over time with bricks and carpenters and so on. Each solution has advantages and disadvantages, but one solution is more automated and the other more customized. On one home, you get 30 years of warranty, on the other one, you must fix it yourself. The same applies to software: you built it custom? Now it's your problem. It will be your problem also with frameworks if you don't keep up with upgrades, though. I'd add that speed is usually achieved by NOT letting PHP execute your code (regardless of framework/non framework solution), but by caching the hell out of it and building your architecture correctly. At the end of the day, a clean architecture wins the "war" on maintainability, performance and security. If you are a kickass pro super-duper-uber architect, and you can build your custom "house" because you planned every detail upfront: then you can go on and build everything from scratch, but beware that I know probably a dozen of these people. Cheers, Marco Pivetta http://twitter.com/Ocramius http://ocramius.github.com/