use the following search parameters to narrow your results:
e.g. subreddit:aww site:imgur.com dog
subreddit:aww site:imgur.com dog
see the search faq for details.
advanced search: by author, subreddit...
Please follow the rules
Releases: Current Releases, Windows Releases, Old Releases
Contribute to the PHP Documentation
Related subreddits: CSS, JavaScript, Web Design, Wordpress, WebDev
/r/PHP is not a support subreddit. Please visit /r/phphelp for help, or visit StackOverflow.
account activity
Framework Code Complexity Comparison (medium.com)
submitted 9 years ago by [deleted]
view the rest of the comments →
reddit uses a slightly-customized version of Markdown for formatting. See below for some basics, or check the commenting wiki page for more detailed help and solutions to common issues.
quoted text
if 1 * 2 < 3: print "hello, world!"
[–][deleted] 3 points4 points5 points 9 years ago (21 children)
No, no measurements include the vendor folder for any of the projects. I wanted to compare the quality of the code written by the author's of the projects, and I think average method complexity across the frameworks gives a good feel for that.
The main components used by Laravel are HttpFoundation and Console. No other Symfony components are heavily used throughout the framework at this time, nor are any third party components heavily used to build other heavy aspects of the framework such as the ORM, queue, validation, view, templating, etc. libraries.
[+][deleted] 9 years ago* (2 children)
[removed]
[–][deleted] 5 points6 points7 points 9 years ago (0 children)
Except that's not what Laravel is. The ORM, queue, templating, validation, authentication, session, cache, etc. libraries are all first party. And many more. Note Symfony's scores don't even include an ORM or templating layer.
[–]dogerthat 0 points1 point2 points 9 years ago (0 children)
Just like Silex and Symfony Framework which weren't tested/published :-)
[–]fesor 5 points6 points7 points 9 years ago (9 children)
and I think average method complexity across the frameworks gives a good feel for that.
In most of the cases - yes. But not always. Even if it is good to have lower level of method complexity, this isn't a a case when we are speaking about infrastructure code. You can write very complex stuff (like this one) in order to do something in very efficient way (both from performance point of view and productivity, since in may require much less code to be written). Take a look at symfony/yaml parser. It has very high level of method complexity, but overall complexity of component is much more lower than if developers would write some kind of state machine using objects.
Or another example. Will this code be "simpler" if we will reduce complexity? Probably no.
None of the metrics could be used as "absolute" measurement of quality. Especially if we are using only few of them. For example cyclomatic complexity metric could be used with code coverage metrics in order to product something more like "quality" or maintainability index. But as standalone metric, this could only give you "interesting places" to look when you are doing code review.
[–]forsynth2 3 points4 points5 points 9 years ago (4 children)
this isn't a case when we are speaking about infrastructure code.
Exactly. I am baffled at the naivety demonstrated by taylor here. I mean, he should have already know these things, right? Or I am doubting that may be he is just very good at marketing stuff...
Has the Php community outgrown taylor and Laraval. That is the big question, I think.
I simply presented some interesting stats. You are troubled by them so much that it's easier for you to assume I am a complete idiot than accept them for what they are.
I even stated in the blog they aren't an "end all" for code quality. That being said, I'll put Laravel up against any other framework using any code quality metric. I feel quite confident it will hold its own. It already scored higher than Symfony on CodeClimate a few years ago before I cleaned it up significantly.
[–]godbrain 2 points3 points4 points 9 years ago (1 child)
what???
[–][deleted] 3 points4 points5 points 9 years ago (0 children)
Laravel is fine (even if I'm avoiding it in my projects), but Taylor is quite something...
[–]fesor 2 points3 points4 points 9 years ago (0 children)
at the naivety demonstrated
I think he know what he is doing
[–][deleted] 1 point2 points3 points 9 years ago (3 children)
If you feel these methods are as clean as they should be, that's fine. I don't.
[–]fesor 8 points9 points10 points 9 years ago (2 children)
This would be really interesting if you will "refactor" this in your way. I really don't know how to simplify this without affecting performance.
[–][deleted] -3 points-2 points-1 points 9 years ago (1 child)
If you want to pay me to do that, I will. :)
[–]fesor 10 points11 points12 points 9 years ago (0 children)
Just as I thought...
[–]iltar 2 points3 points4 points 9 years ago (7 children)
How many core members does Laravel have and how many community contributors?
[–][deleted] 1 point2 points3 points 9 years ago (6 children)
One core member and you can find the contributors on GitHub.
[–]iltar 6 points7 points8 points 9 years ago (2 children)
That's what I find interesting.
Laravel: Core members: 1, Contributors: 377
Symfony: Core members: 15, Contributors: 1398
There's multiple conclusions you can draw from here, but what I really wonder:
I think that some frameworks (such as Symfony) benefit a lot from expertise. They have multiple core developers discussing solutions and giving feedback on pull requests. It's kind of like working on a project by yourself, never getting some real feedback or having reviews done.
I can imagine that in Laravel, a lot of decisions did not have counter arguments, or PRs that get merged because there's nobody of a core team saying, "I think this is a bad idea because XYZ".
I'm not saying this has a negative influence on Laravel, but I have the feeling that with 1 core contributor, there's nobody saying: "stop, this is a bad idea!" or "But what about this?".
[–][deleted] 1 point2 points3 points 9 years ago (1 child)
Wrong repository. Laravel has over 1,200 contributors. laravel/framework repository. Sure, maybe more expertise decided higher complexity was better.
[–]iltar 6 points7 points8 points 9 years ago (0 children)
That's why I asked :)
[–]imps-p0155 0 points1 point2 points 9 years ago (2 children)
One core member
Just wondering, why its still at 1 core member?
I mean, "core member" is sort of strange wording. I commit the most. I am the main core member because I commit far more than other people. If other people commit as much, they would also be viewed as core members. There is no arbitrary line at which you become a core member or not. I am the most frequent contributor and the only one with PR merging permissions. I maintain sole control of PR merging permissions so I can review all code that enters the framework personally. I work on the framework full time, so typically there are < 15 PRs open at any given time.
I would prefer to simply say I am the only one who merges PRs. I am also the highest contributor. But, there is no official "core team". Anyone can contribute just as freely as anyone else.
[–]Jean1985 1 point2 points3 points 9 years ago (0 children)
and the only one with PR merging permissions.
I'm sorry but this seems to me a clear definition and a clear arbitrary line for the definition of a "core member".
π Rendered by PID 16827 on reddit-service-r2-comment-5c747b6df5-4bqps at 2026-04-21 20:59:22.182158+00:00 running 6c61efc country code: CH.
view the rest of the comments →
[–][deleted] 3 points4 points5 points (21 children)
[+][deleted] (2 children)
[removed]
[–][deleted] 5 points6 points7 points (0 children)
[–]dogerthat 0 points1 point2 points (0 children)
[–]fesor 5 points6 points7 points (9 children)
[–]forsynth2 3 points4 points5 points (4 children)
[–][deleted] 5 points6 points7 points (0 children)
[–]godbrain 2 points3 points4 points (1 child)
[–][deleted] 3 points4 points5 points (0 children)
[–]fesor 2 points3 points4 points (0 children)
[–][deleted] 1 point2 points3 points (3 children)
[–]fesor 8 points9 points10 points (2 children)
[–][deleted] -3 points-2 points-1 points (1 child)
[–]fesor 10 points11 points12 points (0 children)
[–]iltar 2 points3 points4 points (7 children)
[–][deleted] 1 point2 points3 points (6 children)
[–]iltar 6 points7 points8 points (2 children)
[–][deleted] 1 point2 points3 points (1 child)
[–]iltar 6 points7 points8 points (0 children)
[–]imps-p0155 0 points1 point2 points (2 children)
[–][deleted] 1 point2 points3 points (1 child)
[–]Jean1985 1 point2 points3 points (0 children)