Everyone: this is a great thread, and I appreciate the candid thoughts here.  
This is something Ben Cohen and I started chatting about offline and we’ll 
definitely bring it up for discussion with the rest of the Core Team.

I realize there is a tension here, and a sense of frustration, because ideas 
sometimes feel like they don’t get air time or it isn’t clear what’s the right 
conduit for discussing them.  I’m still mulling over the thoughts on this 
thread, but I’d first like to respond to Xiaodi’s point below.

> On Jun 11, 2017, at 2:54 PM, Xiaodi Wu via swift-evolution 
> <[email protected]> wrote:
> 
> A key question here to be answered is: is this mailing list the appropriate 
> forum for "discussing ideas right away," whatever they might be? or is it 
> more of a working list for bringing forward in-scope proposals in the 
> successive forms of pitch, draft, and proposal review? As far as I can tell, 
> the aim of scoping rules is to nudge it towards the latter, and personally I 
> think that's quite nice in terms of bringing sanity back to my inbox as well 
> as focus to the discussions. By contrast, I have seen blogs, Twitter, and 
> other channels used profitably for discussing ideas right away, and 
> personally I've found off-list communications to be the best way to prepare 
> for the much more difficult task of convincing the discerning crowd here.

I think this captures the current reality fairly well.  In the Swift 3 
timeframe, the swift-evolution process/venue was brand new and lots of 
discussion emerged on the swift-evolution list almost overnight.  Further, 
while there was a scope of the changes in Swift 3 they were pretty vast and 
encompassing.  For myself and other members of the Core Team the evolution 
discussion at times also felt a bit overwhelming.  Beyond the investment in 
shaping the swift-evolution community, it was a struggle to balance 
discussions, design work, and implementation work that aligned with Swift 3.

The phases of discussion we see in Swift 4 in many ways are a direct response 
to trying to instill a bit more order to make swift-evolution both less chaotic 
but also fit with the rhythm of the release.  Swift release follow a fairly 
predictable schedule, roughly following Apple’s yearly OS release cadence with 
the first “beta” of the major release of the language in June (aligning with 
WWDC).  The engineering and design work for a Swift release pretty much orients 
around that.  My hope is that major design discussions that define a release 
come earlier in the release cycle, with proposals trickling in as refinements.  
We saw that a bit in Swift 4 with the String Manifesto and the Ownership 
Manifesto.  We also phrased “phase 1” as being very focused so that critical 
momentum on Swift 4 could be established without discussions unrelated to the 
release creating major distractions for the community and the Core Team.  With 
“phase 2” the scope of what was on topic for Swift 4 was opened up a bit, but 
even that was hit and miss. We took some proposals very late that also landed 
with hot implementations.  As it is, some proposals simply were beyond our 
capacity to implement, such as SE-0155.  The fate of SE-0155 in particular will 
need to be re-evaluated once we look at the scope for Swift 5 (TBD).

Getting to Xiaodi’s observation, the evolution list is really the most 
effective as a working list for bringing forward in-scope proposals.  There’s a 
ton of different topics people want to talk about — and their is some obvious 
angst about getting to those — but at the end of the day there is only so much 
bandwidth from everyone to pay attention to these discussions and to get 
seriously invested in them.  Maybe moving to Discourse (which is something we 
still want to do, but have had limited bandwidth to implement) will provide the 
“off-list” communication channels analogous to the ones Xiaodi describes that 
keeps those discussions in the Swift.org discussion forums but clearly 
separates discussion for in-scope proposals versus the side discussions people 
want to have on topics they are interested in.  Even in this setup, however, I 
think everyone needs to acknowledge that members of the Core Team or anyone 
else active in the evolution process has limited capacity to participate in 
only so many discussions.  In reality, the discussions that are about in-scope 
proposals will continue to get the priority attention even if there is a place 
to discuss things that are out-of-scope.

I appreciate everyone’s thoughts here, and myself and other members of the Core 
Team are keenly interested in finding ways to improve the nature of 
swift-evolution for the benefits of its participants and the broader Swift 
community.
_______________________________________________
swift-evolution mailing list
[email protected]
https://lists.swift.org/mailman/listinfo/swift-evolution

Reply via email to