Unfulfilled promises... forever experimental extensions... all over again

php.internals

NAIK,ROSHAN (HP-Cupertino,ex1)

22 years ago
Every once in a while somebody has to speak out about the state of the union and bear the brunt of some anger... with a hope that things will change for the better. 2 years back I started out asking a question being concerned by the frustration caused to many users (and vendors alike). Frustration due to many of the useful extensions forever being in experimental mode for the longest time. I asked ... " And exactly how long is it expected to continue to stay EXPERIMENTAL ?" The response was a predictable one, expressing indifference... "Between 15 days and 15 months" http://marc.theaimsgroup.com/?l=php-dev&m=103159872214635&w=2 So I decided to analyze CVS repository and posted the conclusions... http://marc.theaimsgroup.com/?l=php-dev&m=103161600832402&w=2 It included an analysis of how long each of the extensions had been in that mode. To point out a few: sockets, openssl, crack, domxml *had been* in that mode for 2 years ( i.e.. more than 15months). And today they are all still experimental. So that's their 4th (experimental) birthday. Now just for the kicks lets take the case of Sockets extension and analyze its history. There was a msg on 21st feb 2002 on this mailing list. Here we see some kind of encouraging remarks about achieving stabilization by 4.2.X... http://marc.theaimsgroup.com/?l=php-dev&m=101424999803151&w=2 <quote> Timeline & Stabilization ========================= I would like to fix all of this by 4.2.X. I propose that we then mark the extension as stable, and freeze the API. </quote> on Sept 6 2002, a frustrated user asked.. http://marc.theaimsgroup.com/?l=php-dev&m=103134854829058&w=2 <quote> Do the maintainers of the PHP sockets extension ever intend to get their act together and cement the API, or are people who need this functionality going to be forced to rewrite their code every time there's a new point-release of PHP? </quote> and the response was... http://marc.theaimsgroup.com/?l=php-dev&m=103135145531682&w=2 <quote> Which part of "EXPERIMENTAL" in the docs at [snipped url] don't you understand? If you're so desparate to have things cemented, write a patch, post it here and we'll commit it. If you don't have the skills, you might consider offering those that do some positive incentive to do it for you. </quote> Basically...do it yourself or buzz-off attitude. And this is not the only occurrence of such backlash. After some folks stepped up the pressure, very encouraging comment on sept 12 2002 that it will indeed make into production soon.... http://marc.theaimsgroup.com/?l=php-dev&m=103179363830424&w=2 <quote> Most of the other work needed to mark the extension stable has been done, all that remains is that I have some small win32 work left to do. </quote> sockets, openssl, domxml are very useful extensions. Will these (and all the others) ever get out of experimental ? doesn't look like. How about the shiny new SimpleXML or sql-lite? If history is in any indicator...then I guess they will suffer the same fate. And likely that their users will also be slapped in the face. domxml has already had a super long experimental career. And now all this new stuff has gone into it. So I guess that makes it even less likely to make it out of experimental. Please don't think I am picking out these due to some vengeance for the people behind it. I am giving examples to see where we have been, where we are and are we really going anywhere. If these are experimental then why include them in the propaganda ? Just to shoo-off the people for whom all this was created in the 1st place ? Like the bank telling you that they will give you a "free" checking account. Then when you complain your money isnt totalling up to ur deposits, they shoot back at you saying ... "checking accounts are experimental and it was mentioned in the brochure" Today I see PHP5 with a set of promises that are congruent with the earlier PHP4 release. From the php4 release I can recall some of the propaganda... - redesigned scripting engine (much faster, much better, much ...) - Under UNIX features a much smarter and generalized build process (smarter, nicer ) - enhanced object oriented programming - (now we've got it right!) - new extensions with cool new features + Java support (still experimental) + XSL (still experimental) + SOAP (still experimental) + ... The same mantra being repeated is a sign that we didn't get it right the last time we chanted that mantra....and by inductive inference this effort is also questionable. But the first few are all right to promote as they actually made it into the product, got used and are properly supported. But blowing the horn about new functionality included in experimental extensions should be deplorable and considered dishonest practice. Hopefully belts will be tightened up around the extensions and the responsibility taken up by their authors. -- Roshan

Rasmus Lerdorf

22 years ago
On Wed, 25 Aug 2004, Naik, Roshan wrote:
> Hopefully belts will be tightened up around the extensions and the > responsibility taken up by their authors.
Wow, that was quite a rant from someone who hasn't contributed a damn thing. People volunteer their time and effort to this project. There are no guarantees that any of this code won't make your cpu melt or cause your curtains to catch fire. Ranting at a bunch of volunteers is utterly useless and counterproductive. If you have a genuine interest in seeing things improve, get involved. Pick your favourite extension that is troubling you, talk to the authors and other users and figure out what needs to be done to solve its remaining issues. If you do that, your words might mean something. -Rasmus

Daniel C.

22 years ago
Here we have a polite, if provocative, email, and two very nasty and rude responses to it. Followed by a polite response from Roshan. If you walk into a room and see an argument where one side is yelling and being rude, and one person is responding calmly and politely, who would you automatically (given no other information) assume is right? Just a thought from an outside observer. Dan
> On Wed, 25 Aug 2004, Naik, Roshan wrote:
<snip Roshan's thoughtful and polite email> On Wed, 25 Aug 2004 17:42:11 -0700 (PDT), Rasmus Lerdorf <rasmus@php.net> wrote:
> Wow, that was quite a rant from someone who hasn't contributed a damn > thing. > Ranting at a bunch of volunteers is utterly useless and counterproductive. > If you do that, your words might mean something.
On Wed, 25 Aug 2004 18:06:32 -0700, Andi Gutmans <andi@zend.com> wrote:

Sterling Hughes

22 years ago
Both you and roshan are more than welcome, if not encouraged, to stop posting if you find us childish, immature and generally "uncool dude." We apologize for our inferiority, we really wish we had something better to do than respond to your mails. -Sterling

David Zülke

22 years ago
He's bloody right. And Roshan has some points. Actually, I think his idea of only moving stable extensions into the core distribution isn't that bad. I have had issues with some of the extensions Roshan mentioned, as well. There wasn't much I could do about it, but it was annoying. Rasmus, Andi, whoever, you're missing the point here. You cannot simply dodge arguments like these by pointing at the fact that PHP is open source. If you develop software, be it open or closed sourced, and this software becomes a great success, you bear some responsibility. Microsoft with it's 95% browser market share (and I don't care if it's 80%, 10%, 99%, whatever, that's not the point here) has the responsibility to continue development of Internet Explorer, because otherwise the progress in web technology (I'm talking about client-side stuff here, CSS, XHTML, foo, bar) basically stalls, as there is no way you can convince all IE users to move over to Firefox. Same thing goes for PHP. You've developed something tens or houndreds of thousands of developers all over the world are using. They rely on what you tell them, their businesses rely on that, they need to move on, they need reliable, stable software. Software they have trust in, software they believe is made by people listening to their concerns and needs. And if you here tell them that you don't give a whatever on what they're thinking, you're virtually kneeing them in the guts. This discussion is not about the extensions being experimental. It's about the sad issue that here and there these and those people proudly or not proudly announce that you can do this with PHP, that you can do that, that you can even do... whatever; that every single foobar extension comes bundled, and all together it's the coolest web development environment around. Actually, PHP _is_ the coolest web development environment around. But it has it's rough edges, one of them being inconsistencies from release to release, which happens sometimes. This is annoying, I guess to a lot of people. Most of them don't complain. I don't complain either, and Roshan didn't. Because we know that a lot of highly competent people do their very best to improve PHP, they invest a lot of their free time and probably don't get any reward for it. But what Daniel, Roshan and I don't like is the weird attitude shown by some here on the list. That put-a-sock-in-it-and-fix-it-yourself-or-buzz-of kind of behavior, which is nothing but improper. David

Robert Amos

22 years ago
Actually, I can't imagine that either side was "shouting". Imagine though, if you will, that PHP is the UN. You're all delegates or whatever, sitting in a circle around the room and someone steps in to address you. They criticise existing practices, and suggest that others need to put more effort into their volunteer work. Now how would you react to that? If instead, you stepped in there with a nice long list of specific improvements that can be made, and offered to help make those improvements whereever you can, then you would get a startingly different reception, wouldnt you agree? This is not to say that Roshan isnt correct in his assessment, there probably are a few practices here and there that we could improve upon. But saying "work harder, fix it yourself" isnt going to help at all now is it? As the sayings go, changes arent made unless you're willing to die for what you believe in. Nothing so drastic here, but if you want something done, put in the effort to get it done! Personally, if I'd been a PHP developer, I'd have been rather offended by someone coming in and calling me lazy for not volunteering more of my time than I can give. -bok On Wed, 25 Aug 2004 22:27:18 -0600, Daniel C. <dcrookston@gmail.com> wrote:

Daniel C.

22 years ago
I may be mistaken (I often am,) but I don't think anyone has asked anyone else to put in more time than they are currently. All that was asked for is a change in the way the PHP team does things. As I glance over Roshan's first email, all I see are requests that sound fairly reasonable. Things like "Maybe we shouldn't advertise feature sets that are still experimental" and "Maybe we should finish up with these libraries before we move on to new ones." Later he suggested that experimental libraries be removed from the core installation. I don't think that any of these involve asking people to do more work or contribute more time or effort. Please correct me if I'm wrong. Dan On Thu, 26 Aug 2004 14:55:40 +1000, Robert Amos <shiznatz@gmail.com> wrote:

Hartmut Holzgraefe

22 years ago
Daniel C. wrote:
> Things like "Maybe we shouldn't advertise feature > sets that are still experimental" and "Maybe we should finish up with > these libraries before we move on to new ones." Later he suggested > that experimental libraries be removed from the core installation.
We are already doing this. It is called PECL ...
-- Hartmut Holzgraefe <hartmut@php.net>

Andi Gutmans

22 years ago
Thanks for this quite useless and unproductive email. I suggest to inform yourself slightly better on the tons of improvements the PHP development team have made and where we are today vs. 4 years ago. I suggest next time, if you want to be productive, you can contact us with a concrete problem and proposed solution. Andi At 05:32 PM 8/25/2004 -0700, Naik, Roshan wrote:

Ilia A.

22 years ago
On August 25, 2004 08:32 pm, Naik, Roshan wrote:
> " And exactly how long is it expected to continue to stay EXPERIMENTAL > ?" > > The response was a predictable one, expressing indifference... > > "Between 15 days and 15 months"
I'm afraid Derick's response was somewhat incorrect. Here is a more precise answer to your question. Whenever the developer can be bothered to remove the EXPERIMENTAL file. The probability of said event is somewhere between your chances of winning a lottery and getting hit a by car. You can however increase the probability of the extension becoming "stable" by making meaningful contributions such as writing patches and/or giving developer(s) incentives to put more time towards extension's development. Ilia

Christian Stocker

22 years ago
Just to stop some maybe upcoming myths On 26.8.2004 2:32 Uhr, Naik, Roshan wrote:
> sockets, openssl, domxml are very useful extensions. Will these (and all the others) > ever get out of experimental ?
In PHP 5, dom and xsl are not EXPERIMENTAL anymore. This change should have happend already with the release of 5.0.0, but simply just was forgotten. And a simple and short mail or bugreport would have been enough to make us aware of that fact... IMHO, we could remove the experimental tag from PHP 4's domxml, as well. It's stable enough to be used in production and the API certainly won't change in the future ;) chregu