Last call on pattern switch (well, not really)
Brian Goetz
brian.goetz at oracle.com
Thu Aug 13 21:18:56 UTC 2020
So, what happened is what always happens on mailing lists -- I put out a
multi-page writeup reflecting hundreds of hours of research and
incorporating years of discussion, and 99% of the discussion was a
too-loud, back-and-forth thread on a relatively uninteresting corner
case on the subject of whatever happened to be the first strongly-stated
opinion.
The result is that we didn't have a substantive discussion on the other
99% of the proposal, and some folks may even have been intimidated by
the back-and-forth (see, for example, Tagir's comment:
https://twitter.com/tagir_valeev/status/1293931093066997761) and held
back on their feedback. I would be very unhappy if we missed out on
Tagir's feedback because we had made the environment inhospitable
because of a long back-and-forth on a less important topic.
Let me reiterate some guidelines for discussion, that hopefully will
keep us from finding ourselves in this corner too frequently. I've said
all this before, but its good to repeat once in a while.
- Be aware that syntax discussions always suck up the oxygen. Once the
syntax discussion starts, it is unlikely any substantive discussion on
the more important issues will take root. (With the right model, the
right syntax can be found later; the wrong model can't be saved even
with the best of syntax.) So please, save these until you're confident
that you -- and everyone else -- have said what have to say about goals,
models, success metrics, and the like first.
- Be mindful the shape of the reply chain. The best discussions
usually have wide but shallow trees, where many people comment, but no
reply-chain goes too long. The worst are usually long and narrow.
- Lead with uncertainty. Things usually start on the wrong foot if we
lead with "X is wrong" or "You should do it Y way instead." Better to
ask rather than tell; there's a good chance that the proposal author has
already spent a lot of time thinking about the problem and may already
have considered X or Y, or there may be bigger-picture issues that have
motivated the proposed direction.
- The trivial crowds out the substantial. We all have a tendency to
"I'll just reply quickly with the trivial stuff", because that's easy
and we're busy. But very often these things tend to dominate the
discussion. Probably best to try to cover everything in your first
draft (or ask questions if you're stuck) rather than send the trivial
comments first.
Thanks for everyone's help in keeping the discussion moving in the right
directions. We need everyone's perspective here.
And for those of you who haven't reviewed the patterns-in-switch draft,
please do ... the ship is leaving the dock soon.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mail.openjdk.java.net/pipermail/amber-spec-experts/attachments/20200813/df56985f/attachment.htm>
More information about the amber-spec-experts
mailing list