Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:109153 Return-Path: Delivered-To: mailing list internals@lists.php.net Received: (qmail 11045 invoked from network); 19 Mar 2020 22:23:05 -0000 Received: from unknown (HELO php-smtp4.php.net) (45.112.84.5) by pb1.pair.com with SMTP; 19 Mar 2020 22:23:05 -0000 Received: from php-smtp4.php.net (localhost [127.0.0.1]) by php-smtp4.php.net (Postfix) with ESMTP id 65EA3180538 for ; Thu, 19 Mar 2020 13:46:19 -0700 (PDT) X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on php-smtp4.php.net X-Spam-Level: X-Spam-Status: No, score=0.6 required=5.0 tests=BAYES_50,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FREEMAIL_FROM, RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H2,SPF_HELO_NONE,SPF_PASS autolearn=no autolearn_force=no version=3.4.2 X-Spam-ASN: AS15169 209.85.128.0/17 X-Spam-Virus: No X-Envelope-From: Received: from mail-wm1-f47.google.com (mail-wm1-f47.google.com [209.85.128.47]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-256) server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by php-smtp4.php.net (Postfix) with ESMTPS for ; Thu, 19 Mar 2020 13:46:18 -0700 (PDT) Received: by mail-wm1-f47.google.com with SMTP id c187so4238456wme.1 for ; Thu, 19 Mar 2020 13:46:18 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=subject:to:references:from:message-id:date:user-agent:mime-version :in-reply-to:content-transfer-encoding:content-language; bh=9b2RwiRe4wWsnmjh0wZPyIHIjOm2QMh8FD5IhcJfThM=; b=U3IZvrVkYhJm8unXlq0vOHKhfAFVzOHp1cNy8qR1reQO9OkH9WA1Vhr8TJWDnMUIhr hyFiQOAEcW5Ut1EmBn8fa9Gm6V8NKZhEzRqr2lZaNYzizKtn5bAu0ptWxHXD33PXUI+t 3h7R0jgf/MIAeOnRhtzG+DKV9rjmw9mFEXWUsAl92ZG7Hi6TDIB9Uq7Y2Qbszh+vOWVu gocECPjWYl7ZqSydtyWqH8N8vK7nTdYo4Vke4r2ypeuwoR9S14XqT6egECvYpQQ+YVQh 6TfHYc/J7CUdYYbaZbQtktutu6P5I02xcdhxcovkb1N1/xvgRuQrsoJuyrLX2x4s77/E CjNQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:to:references:from:message-id:date :user-agent:mime-version:in-reply-to:content-transfer-encoding :content-language; bh=9b2RwiRe4wWsnmjh0wZPyIHIjOm2QMh8FD5IhcJfThM=; b=M0ZyCOpO8Nsxqtrb/+SOIwHmlHYT154NIz3SysD6zuLWpZQ0loPSa/0O8tGAoXZX/v /CnbHq741vIyouXWQ8PYAqwnBgZack2NZek2OrHv14mKL+8mUlFIxJp23w/RQy2vPe5T hjEYD4f5I6dARidMPTVWDcpmP/Y/2yDNTdinKy/CcdNqvb/NbsOwp0BXxkMnad2CJD2J Z2CGIAfi3mdw6JDL4A+yu0UiGi+6s0HTTygPTbaxf4bQQD5BA3yjFsnAbm7vrDjoalyv tKe+Pt9ol5wXAFiyfK+QVpj5WttqpWLxsKsnqJwENR5vwQjbTRsSC82YE8qit5Gjc68E 08Ag== X-Gm-Message-State: ANhLgQ2hYrFHp6fpmVUHUQm13gJXDTjQUXcrSygvWcyV+7SttGtaZ/e6 dFWbEu1cKIILTn59a+Kk5I42cKAD X-Google-Smtp-Source: ADFU+vu5N/Nnte0tIVLZJ+2mqlLYbb4VybENCSK8pzqXxFKlZuGfsrYNKXsGptqxcIA1YE/g5pa/Lg== X-Received: by 2002:a7b:c8ce:: with SMTP id f14mr5886978wml.138.1584650777193; Thu, 19 Mar 2020 13:46:17 -0700 (PDT) Received: from [192.168.0.14] (cpc84253-brig22-2-0-cust114.3-3.cable.virginm.net. [81.108.141.115]) by smtp.googlemail.com with ESMTPSA id c4sm4690234wml.7.2020.03.19.13.46.15 for (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Thu, 19 Mar 2020 13:46:16 -0700 (PDT) To: internals@lists.php.net References: <14383D05-EA33-4CD2-9648-40AA29A837A5@newclarity.net> <2AE639B7-7775-48CC-8435-2F455D429E6A@newclarity.net> Message-ID: <17a8b468-e863-c528-3596-23dc4c60ddab@gmail.com> Date: Thu, 19 Mar 2020 20:46:13 +0000 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:68.0) Gecko/20100101 Thunderbird/68.6.0 MIME-Version: 1.0 In-Reply-To: <2AE639B7-7775-48CC-8435-2F455D429E6A@newclarity.net> Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit Content-Language: en-GB Subject: Re: [PHP-DEV] Capturing reasons for votes for historical sake? From: rowan.collins@gmail.com (Rowan Tommins) Hi Mike, On 17/03/2020 03:01, Mike Schinkel wrote: > Currently it takes herculean effort to get almost anything approved, but it takes effectively zero effort to stifle the hard work someone invests in trying to improve PHP. Is it really just that all their work can be nullified by a simple thumbs down like an emperor deciding the death of a gladiator? (sorry, couldn't resist using that analogy. ;-) > > BTW, I am thinking of the outrageous amount of work Paul M Jones is putting into Server-Side Request and Response Objects (v2) and fear for him that all his effort will be for naught, and he won't even have a concise list of reasons why it was voted down. The best he will be able to do is infer from the comments in thousands of the messages why people voted down. But he still won't know. I wanted to pull this point out from further up the thread, because I think it's a very real concern, but I think it's about something more fundamental than how people vote. Large RFCs, where there's significant implementation work, are essentially software projects. If we ran them that way, we'd all collaborate on some sequence of steps (or several agile iterations, or whatever), such as: * Identifying the problem or aim * Defining the scope * Identifying risks * Agreeing an approach * Initial implementation or prototype * Discovering problems based on the initial work * Testing * Final sign-off for release (this is what RFC votes should be) The problem is that the RFC process only really covers a small fraction of that process, and mostly the later parts. Most of the effort, and crucially most of the decisions, are left to whoever is drafting the RFC. So we end up with a process that feels more like a sales pitch for a shrink-wrapped product: * The RFC author identifies a problem, defines the scope, tries to identify risks, designs a solution, maybe builds an initial implementation or prototype, and starts refining and testing it * This is pitched to the community * There is some negotiation, usually over details rather than substantial rewrites, and often involving the author defending the decisions they've already made * The community decides whether to "buy" the proposal (this is what RFC votes often turn into) Some RFCs are rejected because the community doesn't actually agree on the definition of the problem or scope; capturing that in a reason for voting No might help someone later, but it's already far too late to save the effort of the author. Other RFCs are rejected because the community agrees on the problem, but not the details of the solution; writing that down encourages someone to try again, but repeatedly trying variations until one passes might not be the most efficient process. Just to be clear, I am not blaming authors for bringing ready-made pitches like this - it's what the current process tells them to do. Nor do I have a brilliant proposal that would change it overnight. But I do think we need to spend more time collaborating on ideas, and less on saying "yes" or "no" to each other's ready-made solutions. Regards, -- Rowan Tommins (né Collins) [IMSoP]