SolarPHP 1.0 Released
HvitRavn writes "SolarPHP 1.0 stable was released by Paul M. Jones today. SolarPHP is an application framework and library, and is a serious contender alongside Zend Framework, Symphony, and similar frameworks. SolarPHP has in the recent years been the cause of heated debate in the PHP community due to provocative benchmark results posted on Paul M. Jones' blog."
It's called Symfony, FYI
if his blog is running on this framework it's as slow as molasses
That's a joke... I say, that's a joke, son!
(just a little something I picked up in Sarcasm 101)
Perfect timing. I was just about to write a rather complex web application. How does this (or PHP in general) compare to, say, PERL in the execution speed, memory usage, and code manageability aspects? I'm sure I can get some quality, unbiased opinions here on the topic.
Thanks in Advance!
cache:http://paul-m-jones.com/?cat=27 into Google search (the original link). With any luck, the old content being referred-to might be there.
If the community wants to improve PHP they could start with making the function, class and method names case sensitive. For some unknown reason the powers behind PHP have chosen not fix this.
... it's still PHP.
Lipstick on a pig and all that.
I think the 18 second load time the homepage is experiencing now should help discredit the benchmark results
Jason-Palmer.com
Yet another PHP framework. Won't this ever stop? Won't the development efforts ever be directed to only a handful of frameworks, to get the best we can instead of a gazillion half-(or un-) documented, over-(or under-) engineered frameworks?
Stupidity is an equal opportunity striker.
Fellow slashdotter Bill Dog
Still slower than PHPulse www.phpulse.com
This is my sig. There are many like it but this one is mine.
Phpulses benchmarks still put it at 5 times faster than Solar without any caching.
http://www.phpulse.com/benchmarks/?area=86
This is my sig. There are many like it but this one is mine.
The reason nobody cares about your web framework is that they'd rather type:
def index
@posts = Post.where(:status => 'public').order('created DESC')
end
instead of:
<?php
public function actionIndex()
{
$fetch = array(
'where' => array('blogs.status = ?' => 'public'),
'order' => 'blogs.created DESC',
'page' => 'all',
);
$this->list = $this->_model->blogs->fetchAll($fetch);
}
?>
Yet another PHP framework. Won't this ever stop?
No. It won't. There's probably always going to be new ideas about abstractions with the potential to save developers effort once they're implemented. I should hope so, anyway.
Won't the development efforts ever be directed to only a handful of frameworks?
The lion's share of attention is certainly directed towards a handful: Cake, Symfony, Zend (not actually a framework), and CodeIgniter probably topping the list, others like Akelos or Zoop or TinyMVC probably farther down but still striking the fancy of developers here or there.
But it pretty much comes down to developer itches, and the fact that thoroughly understanding a system is usually a task roughly equivalent to writing it.
Tweet, tweet.
They are by definition antisocial, expect everything to revolve around them and don’t want you to use just pieces of them.
Give us just a nice set of libraries. That’s it.
Let us choose what parts to use, what parts to get from other libraries, and what not to use at all.
Frameworks are like having to buy a bundle offer at the supermarket, when all you need is one part of it, and then at home also noticing that the parts are not playing nice with everything else.
But I hope the craze will be over soon, just like the Flash intro craze, the Java Applet craze, etc.
Any sufficiently advanced intelligence is indistinguishable from stupidity.
Give us just a nice set of libraries. That's it.
Pretty much Zend Framework in a Nutshell. Totally misnamed -- there is no Framework. It's a set of disparate libraries organized into a sort of class hierarchy that happens to have amongst it a Controller class.
Tweet, tweet.
Curious, I searched for solarphp debate and the first 12 results are a verbatim cut-n-paste of the same summary that was copy-pasted into the Slashdot article.
The subsequent results don't even touch on any kind of performance testing with solarphp. So, um... why is this on the front page again?
I admit, I code a lot of PHP. And I have never felt the need to take a serious look at using any frameworks. Isn't the entire point of PHP that it makes a great rapid development platform?
I scream. You scream. I assume that means we're both acquainted with the problem. We proceed.
Another framework. Big whoop. I'm more interested in things like HIPHOP that allow you to compile PHP to code for fast performance.
http://developers.facebook.com/news.php?story=358&blog=1
Anyone who's used both have an opinion of how it compares to CodeIgniter? I've done one project in CI and I've been pretty happy with it, thinking of using it to do some larger projects soon. It forces you to have neat, short code. Disadvantage is it's spread out a little more between files, but with an application like TextPad I can move back and forth between those files pretty easily.
Looking at Solar, it does look like it has a crapload of classes that do useful things without having to reinvent the wheel. CI looks relatively smaller in comparison.
The thing I like about CI is you just load the libraries or classes that you need for that particular app, so it remains very lightweight.
Pauls blog is indeed running Wordpress, but that's all it is - a personal blog. The framework site itself runs on Solar.
This "performance debate" that people keep mentioning started back in 2006 when Paul benchmarked a select few frameworks (http://paul-m-jones.com/?p=236). Now even the creator of Symfony uses this method to compare performance. And Solar is still faster.
It's not a new framework on the block. It has been in development for years and can behave as a full-stack framework, a collection of libraries, or something in the middle. Even Zend has borrowed ideas from Solar (http://paul-m-jones.com/?p=1113).
I like to think of it as a framework for people who already know PHP. Having worked with CakePHP, CodeIgniter and a few others, there are far too many people in those communities who think that by using a framework they don't need to learn how to program. I'm pretty confident these people won't understand Solar. Hooray!
Things to love about Solar: http://www.solarphp.com/trac/core/browser/trunk/info/description
(Score:0, Offtopic)
While the smugness of the parent post could be interpreted at a stretch as flamebait or trolling, it's in no way offtopic. Comparing code density/expressiveness between frameworks is topical.
Tweet, tweet.
A simple 'grep' told me that this framework has 820 PHP files. I know the Solar site holds lots of documentation, but to know and understand a framework, I want to see what the code looks like. Just to get an idea of its quality and security. With 820 files, there is no way I'm every even going to give it a try. In my opinion, it should take less time to understand a framework than it takes time to build your own simple framework. This framework, with its many files and 'complex' structure and object extending, definitly failed on that one. Another one for my ignore list.
It doesn't have to be like this. All we need to do is make sure we keep talking.
"Real" developers love to hate PHP because it goes against their rules, meanwhile the little language that could is the largest web language around. More site are run on PHP then anything else.
Why? Because it can. All the devs who want standards and a standard framework are the kinda dev's that take six months to produce the first draft of the first requirement pre-meeting agenda action point item. Sure, that is great if you work for the state or the fortune 500, but the new stuff happens with tiny companies started in someone's garage where the code has to be working yesterday.
As soon as other languages become capable of "just producing a site now", then PHP will start to becomes less dominant.
And yeah, this practice does result in thousand of badly written site in urgent need of being cleaned up. That is not a bad thing, if it was left to the ruby crowd, those sites would never have seen the light of day.
For people who understand business, having to rebuild your shop because it has become to small after a year is NOT a sign that you chose the wrong shop. It is a sign you did well. Only developers totally removed from the realities of daily life don't get this.
Oh and if you need conventions in your programming, aren't you really saying someone needs to hold your hand? For me the only quality measurement that works for software in the end is "does it allow the owner to make money". It can be the most horrible spaghetti code you ever saw, but if it allows the company to flourish and grow, then it is good code. I have seen to many "proper" development on very large projects that followed all the conventions and produced steaming piles of crap that were unusable. Look to every single government IT project for examples.
MMO Quests are like orgasms:
You may solo them, I prefer them in a group.
The "problem" is what do you do if you do not have your own library of functions written? Or the company doesn't?
Then you can use a framework to get the basics down. Like for instance database abstration. What you say? That is already part of PHP...
Actually, I get your point entirely. It is the same with smarty... why on earth should you use a template language, in a template language?
I think all of this is partly because people expect it.
PHP is a scripting language, closer to perl then C or Java and people are not really used to such languages. They have always been considered to be to primitive.
And so the "proper" developers have always had a thing against PHP that allowed just anybody to start producing code and working web sites. You can see in a lot of frameworks the attempt to force PHP to become another language.
Do you need a framework? No, unless you come from a background where just raw coding is not how you do things. There is a difference between scripting and "programming". Please don't hang me up on those terms, but you probably get my meaning if I say the average Java developer would choke on Perl and the average Perl developer considers Java to be hopelessly over engineered.
One of my favorite discussions was with a Java developer about PHP's lack of proper garbage collection... he spend several hours trying to explain how important garbage collection is, in a script that runs for a few miliseconds and then is cleared completly from memory. It is like claiming that you absolutely need a parachute, on a kamikaze plane.
MMO Quests are like orgasms:
You may solo them, I prefer them in a group.
Filler texts contained hearin contain no meaning even though they fit a certain grammar.
Ipsum Lorem.
In 90s we had to build a complete interactive web-page in Perl or C, with html tags and JavaScript, and then print it out to a browser. And we were grateful.
Nowadays, having PHP, which is so easy to use, people want to make it even easier. I don't get it.