Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:90603 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 17831 invoked from network); 13 Jan 2016 13:57:12 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 13 Jan 2016 13:57:12 -0000 Authentication-Results: pb1.pair.com header.from=zeev@zend.com; sender-id=pass Authentication-Results: pb1.pair.com smtp.mail=zeev@zend.com; spf=pass; sender-id=pass Received-SPF: pass (pb1.pair.com: domain zend.com designates 207.46.100.148 as permitted sender) X-PHP-List-Original-Sender: zeev@zend.com X-Host-Fingerprint: 207.46.100.148 mail-by2on0148.outbound.protection.outlook.com Received: from [207.46.100.148] ([207.46.100.148:56000] helo=na01-by2-obe.outbound.protection.outlook.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id C8/61-10601-7B756965 for ; Wed, 13 Jan 2016 08:57:12 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=RWSoftware.onmicrosoft.com; s=selector1-zend-com; h=From:To:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=Iv3pRKDGAbvWJjKFPhKEGrDNNgsSmp6gB/E3cnV80Sc=; b=y6XMF/gQgE9l+vtUHhuT3ZvkyqQ+MYlIB+2pyVMO3rPBEUmOcjSF27aNqhCP79rd3rD9DwNqdWCwqu+VcjiTrO8vOaw1Kd8o6MYRTK4z1B6qm/HYn7nIa0lnZ+gUocIEA70uN1nWFdLno9rQDzb6WnQnVF0+bqiZ9y7laUyzW4I= Received: from BY2PR02MB298.namprd02.prod.outlook.com (10.141.140.21) by BY2PR02MB297.namprd02.prod.outlook.com (10.141.140.17) with Microsoft SMTP Server (TLS) id 15.1.361.13; Wed, 13 Jan 2016 13:57:05 +0000 Received: from BY2PR02MB298.namprd02.prod.outlook.com ([10.141.140.21]) by BY2PR02MB298.namprd02.prod.outlook.com ([10.141.140.21]) with mapi id 15.01.0361.006; Wed, 13 Jan 2016 13:57:05 +0000 To: Derick Rethans CC: PHP internals Thread-Topic: [PHP-DEV] Re: Internals and Newcomers and the Sidelines (WAS: Adopt Code of Conduct) Thread-Index: AQHRTPE4uU/NmWjyCkirbyNhGk+Jh574DeYAgABkTWCAANatgIAAHPpA Date: Wed, 13 Jan 2016 13:57:05 +0000 Message-ID: References: <8B865D2A-6762-430D-9EA1-9B693DE8E8C3@zort.net> <56948002.1080802@gmail.com> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: spf=none (sender IP is ) smtp.mailfrom=zeev@zend.com; x-originating-ip: [212.199.177.67] x-microsoft-exchange-diagnostics: 1;BY2PR02MB297;5:eOL2rzqdJPJa2BO7lxFwouHXP9YdXgPcgoiSkY6p4eDcWvMRUmT55zlLEYHOrid5J4o4E9J4eY6dO2vJKhfuLnmyTpLRL0ino7QgHRP1tLoprNt0o8PQ3+E6v8aLeJNiPie/oIWT6/mS8lxkeRux2Q==;24:v+PV9jY7lZFyGjY+DL7cuMdGuoqLUJvL5eWsTTA6+KP6XBx0rw7cCo3mWtJg5Sx48w6rRyvv63w59oj2zdvvZtDCBXvZeIku3I2v6XuMawI= x-microsoft-antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:BY2PR02MB297; x-ms-office365-filtering-correlation-id: 069ab1f9-0611-49ca-3f72-08d31c216be5 x-microsoft-antispam-prvs: x-exchange-antispam-report-test: UriScan:(257391296339839); x-exchange-antispam-report-cfa-test: BCL:0;PCL:0;RULEID:(601004)(2401047)(520078)(5005006)(8121501046)(10201501046)(3002001);SRVR:BY2PR02MB297;BCL:0;PCL:0;RULEID:;SRVR:BY2PR02MB297; x-forefront-prvs: 08200063E9 x-forefront-antispam-report: SFV:NSPM;SFS:(10019020)(6009001)(51444003)(199003)(377454003)(189002)(13464003)(24454002)(105586002)(92566002)(6116002)(81156007)(99286002)(122556002)(11100500001)(102836003)(86362001)(19580405001)(3846002)(50986999)(19580395003)(33656002)(586003)(5002640100001)(561944003)(66066001)(2950100001)(87936001)(106356001)(110136002)(2900100001)(40100003)(76176999)(93886004)(1220700001)(106116001)(5001960100002)(5004730100002)(74316001)(5008740100001)(97736004)(10400500002)(4326007)(1096002)(2906002)(5003600100002)(189998001)(77096005)(76576001)(54356999)(101416001)(493534005);DIR:OUT;SFP:1102;SCL:1;SRVR:BY2PR02MB297;H:BY2PR02MB298.namprd02.prod.outlook.com;FPR:;SPF:None;PTR:InfoNoRecords;A:1;MX:1;LANG:en; received-spf: None (protection.outlook.com: zend.com does not designate permitted sender hosts) spamdiagnosticoutput: 1:23 spamdiagnosticmetadata: NSPM Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-OriginatorOrg: zend.com X-MS-Exchange-CrossTenant-originalarrivaltime: 13 Jan 2016 13:57:05.5775 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 32210298-c08b-4829-8097-6b12c025a892 X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY2PR02MB297 Subject: RE: [PHP-DEV] Re: Internals and Newcomers and the Sidelines (WAS: Adopt Code of Conduct) From: zeev@zend.com (Zeev Suraski) > -----Original Message----- > From: Derick Rethans [mailto:derick@php.net] > Sent: Wednesday, January 13, 2016 12:59 PM > To: Zeev Suraski > Cc: John Bafford ; PHP internals > > Subject: RE: [PHP-DEV] Re: Internals and Newcomers and the Sidelines > (WAS: Adopt Code of Conduct) >=20 > On Tue, 12 Jan 2016, Zeev Suraski wrote: >=20 > > I think that no matter what we do, CoC, guidelines or teams we have in > > place - as long as there'll be divisive RFCs, there are going to be > > heated, toxic discussions. >=20 > I think the main issue is the whole concept of "divisive RFCs" as a term.= An > RFC is a request for *comments*. Instead of people saying > (paraphrased) "that is crap, unwanted, needless", the whole point of an R= FC > is to improve the proposals - before a vote is arranged. While RFC does stand for 'Request For Comments', in practice it's much more= than that. It's the declaration of intent to introduce a change subject t= o a vote on a relatively short timeline. =20 In some cases, the proposed ideas are awesome and enjoy consensus. In some= cases, they're downright bad - or at least perceived to be bad by an overw= helming majority of the voters, or are even withdrawn before going into a v= ote. Then, there are those ideas that create two polar groups, both sizeab= le - with one thinking the idea is awesome, and the other thinking it's awf= ul. Those are the ones that are causing the heated debates on internals, a= nd those are the ones we need to find a way to avoid. Even though it's cle= arly not a 'defined term', and I will obviously not propose an RFC to ban '= Controversial RFCs' as they're impossible to define ahead of time, simply p= ut they are RFCs that create controversy. Based on my analysis yesterday, = I think there's a relatively easy way to spot them if you look at the numbe= rs (for those reading this message out of context - bit.ly/php7rfcs), and I= believe we can come up with a mechanism to minimize them or outright avoid= them altogether. It would come at a price - we would have to agree that i= mproving the atmosphere on internals by focusing on ideas that are enjoying= widespread consensus is more important than approving any one particular i= dea. > The recent discussion on Antony's CoC RFC, has very little people/comment= s > trying to improve it, but instead trying to torpedo it because of "why do= we > even need it? we're not 'toxic'" (again, paraphrased). I don't see it that way. I think I provided very relevant feedback - that y= es, called for a very substantial revision of the proposal and a removal of= a substantial part of it - but I still marked the concept of having a CoC = as a good idea from the get go. Separately, I think that if people think t= hat a given proposal is a bad idea and cannot be improved - it's perfectly = fine that they would voice their opinion. Some ideas are just bad, and RFC= s are often withdrawn or fail to pass. Personally I don't think the CoC pr= oposal is inherently bad - quite the opposite - but I think its implementat= ion the way it's currently phrased is quite negative. To be perfectly hone= st, I'm offended that despite spending literally hours on providing feedbac= k and making my case for why even the latest draft is problematic (and how = I think it can be improved to reach consensus) - feedback that were complet= ely respectful - I received no response from any proponent of the RFC. The= same holds true for several other people - who provided relevant feedback = which went ignored. In fact, the response came as saying 'No more feedback= please. My next email will be presenting a final draft, after which I'll = go to a vote after the minimum allotted time'. I think the current CoC RFC is a perfect example of a controversial RFC. I= t's creating controversy. It doesn't matter if it's right or wrong. The c= hances of it hitting consensus (85-90% mark) seem very slim. It might reac= h 67%, I have no way to predict it - but having 9 supporters for every pers= on thinking it's bad? Doesn't sound very plausible based on the internals = discussion so far. Specifically the CoC discussion is also controversial f= or another reason - it's using the RFC process for a purpose it was never d= esigned to fulfill. But I'd rather not discuss the specifics of the CoC RF= C right now, and try to solve our fundamental problem instead. A problem w= hich even the proponents of that RFC aren't saying it's supposed to solve.= =20 Another point to consider is that when as RFC authors, you have a 85-90% ba= r to clear - you're much less likely to be ignoring substantial amounts of = feedback and just pressing on to a vote, which is what's happening here. > > Had we had a 90% bar, it does mean that STH wouldn't have made it into > > the language, but it also means that we would probably not have the > > discussion saga on internals either, and all of the bad vibes that > > surrounded it. >=20 > That however, makes it very easy for a vocal majority to torpedo everythi= ng. I believe you meant a 'vocal minority', but that's the wrong way to describ= e it in my opinion - the right term is a substantial minority. Vocal minor= ity makes sense when we're talking about a handful of people, or even less = than a handful, that are vocal well beyond their representation in the vote= r base. I do think we need to find ways to prevent a true vocal minority f= rom shooting down ideas, and I proposed a couple which I actually think are= n't that bad. The problematic RFCs are the ones that generate a lot of int= erest, with a lot of people having an opinion about them - but opposing one= s. RFCs that generate a lot of interest AND have close call votes are quit= e uncommon. Today, what happens is that these RFCs begin with large feedba= ck threads, often heated, and they result in large voter turnarounds. Once= the vote is over (whether it's approved or declined), it's a zero sum game= - the winning side is happy, the losing side is sad. More importantly - w= e've already paid the price in terms of making internals a tiny bit more un= attractive to everyone - not just newcomers. > I think this is only just going to cause more resentment to the few peopl= e > that tend to vote against nearly every RFC. I think the mechanisms proposed - either a 2/3 majority until 50 votes and = 90% beyond that, or keeping the bar at 2/3 but having a 'double no vote' th= at voters will be able to use very selectively (because of limited supply) = - can prevent that from being an issue. I'm sure people will be able to po= ke holes in these ideas, but I believe they can be solved. Again, the premise of this proposal is simple - do we care more about one p= articular idea, or about focusing on the areas we all agree on? For me it'= s a no brainer, and if we agree the consensus is more important than any on= e particular idea, I believe we can find the voting system to enforce it. > But - it's an interesting theory. Thanks! Zeev