Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:65311 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 26843 invoked from network); 29 Jan 2013 02:55:50 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 29 Jan 2013 02:55:50 -0000 Authentication-Results: pb1.pair.com smtp.mail=lists@rotorised.com; spf=permerror; sender-id=unknown Authentication-Results: pb1.pair.com header.from=lists@rotorised.com; sender-id=unknown Received-SPF: error (pb1.pair.com: domain rotorised.com from 117.55.227.19 cause and error) X-PHP-List-Original-Sender: lists@rotorised.com X-Host-Fingerprint: 117.55.227.19 mta19-data1.ironport1.cbr1.mail-filtering.com.au Received: from [117.55.227.19] ([117.55.227.19:44824] helo=mta19-data1.ironport1.cbr1.mail-filtering.com.au) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id 7A/91-28517-33A37015 for ; Mon, 28 Jan 2013 21:55:48 -0500 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AgcFAL05B1Gva64T/2dsb2JhbABEgziDDrgUFnOCHgEBBSNFERALDQsCAgUhAgIPAkYGDQEHAQEQh3wNrXmCQJASgSOMBIJLgRMDlymEPBMiijuDCYFW X-IronPort-AV: E=Sophos;i="4.84,555,1355058000"; d="scan'208";a="714398095" Received: from unknown (HELO ub005lcs09.cbr.the-server.net.au) ([175.107.174.19]) by smtp-data2.ironport1.cbr1.mail-filtering.com.au with ESMTP; 29 Jan 2013 13:55:44 +1100 Received: from [49.176.99.85] (port=37159 helo=[172.20.10.4]) by ub005lcs09.cbr.the-server.net.au with esmtpa (Exim 4.80) (envelope-from ) id 1U01Lr-001zjD-5t; Tue, 29 Jan 2013 13:55:33 +1100 Message-ID: <510739F0.80602@rotorised.com> Date: Tue, 29 Jan 2013 12:54:40 +1000 User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:17.0) Gecko/20130107 Thunderbird/17.0.2 MIME-Version: 1.0 To: Zeev Suraski CC: Clint Priest , Peter Cowburn , Pierre Joye , PHP internals References: <76a9565b2a095a72063a68f106a6b457@mail.gmail.com> <5ed6711b24349c82b7c17dd450ff7c80@mail.gmail.com> <7165e8331e1070234771f7ae9573cdf8@mail.gmail.com> <5106690E.6040908@zerocue.com> <510679E0.1050603@zerocue.com> In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit Subject: Re: [PHP-DEV] Voting periods From: lists@rotorised.com (Ryan McCue) Zeev Suraski wrote: > The vast majority of the PHP community is a silent one; These people > don't participate here on internals; They don't attend conferences; They > use it - the vast majority of them in a professional manner - and they > picked it because they like it the way it is, not because of what it needs > to become. For every person that subscribes to internals, there's a > thousand (yes, a THOUSAND) people who don't (it's several thousands vs.~5 > million). In fact, they're not completely silent. They speak in volumes > - PHP 5.4 is used in less than 1% of the sites using PHP today, and even > the relatively revolutionary 5.3 is still a lot less popular than 5.2. > The new shiny features are not all that interesting for most people. I'd like to speak to this as someone involved in WordPress development. As a whole, despite being a huge project with large amounts of developers and users, WordPress is pretty under-represented on php-internals. One of the big reasons for that is that we're stuck with a lot of backwards compatibility, both internal and external. We try hard to ensure that our API to our plugins doesn't break, which unfortunately has left us with being the go-to project for pointing out bad code. As much as some may want us to, we're not going to go and rewrite WP in a day to use new features, so internals discussions aren't that important at the moment. We're also stuck with a huge number of hosts still on PHP 5.2: http://wordpress.org/about/stats/ I'd say it's somewhat of a chicken-and-egg problem, in that WP can't develop for what's not there, and hosts won't bother upgrading if they don't have to. We only stopped supporting PHP 4.x when the usage dropped below 10%, and I'd see the same occurring for 5.2. To me, I think the best possible thing to do would be to encourage hosts to upgrade much faster. Rolling APC/Accelerator+ into core would be a huge part of that from what I see. Backwards compatibility for PHP itself seems to be pretty good, but it could be better. Hosts are still reluctant to push existing users forward: Bluehost, Dreamhost, and GoDaddy all offer 5.3, but none upgrade users automatically; WPEngine and Page.ly, two large WP-centric hosts, are both on 5.3, since they know WP won't break on upgrade. We are making some efforts towards a push for 5.3+. In future releases, we're planning on introducing some features that would only be enabled for 5.3+ but none of those have been introduced yet to my knowledge. Hopefully we can push the hosts enough to get this, but it wouldn't change much of WordPress internally. Anonymous functions, e.g., are fairly incompatible with the way we implement the Mediator pattern with our hooking system. Namespaces might be implemented for new code, but there's basically zero chance for the existing code base. -- Ryan McCue