Architecture Summit 2014/Architectural value, guidelines, and process

Subpage for the discussion of what we value in our current codebase, how to reflect that in the architecture guidelines, and tweaks to our RFC process at the summit.

Overview
This session we take a look at the big picture. We'll ask Tim, Brion, and Mark will reflect on aspects of our current architecture, and what works well with it, finding the valuable examples in our architecture and codebase to see what good ideas we should replicate (or not break) in the future.

We'll also talk a bit about things that might not be clear or correct about the RFC process now, and how it might work better in the future.

Agenda
This session will be focused on the big questions below:

The architecture
(20 minutes)
 * What did we do right in the past?
 * What lessons do we draw from those examples?
 * Looking at MediaWiki's past architecture decisions, what are the pieces / decisions / directions are you most proud of, or have come to appreciate the most?
 * Where is your ideal balance between "architectural purity" vs. maximizing performance vs. developer's time to build?
 * Can we finish the Architecture guidelines? What are the next steps?

The RFC process
(20 minutes)
 * RFC process logistics:
 * Should we add time limits to any part of the process?
 * Is ownership working?
 * Should we require that RFCs get co-sponsors in order to be considered?
 * Could we please number RFCs?
 * Should we version RFCs?
 * What things need specifying in an RFC?
 * Should we just have one RFC process, or a few different processes (e.g. fast-track)?
 * Which extensions require RFCs for big changes?
 * How do we ensure that WMF does not do all the decision-making regarding changes that affect MediaWiki generally?
 * Separate "general idea doesn't suck" review from "yup, we're all on board with this implementation" review?
 * Writing good RFCs:
 * Should we have a group of editors who help do administrative work on RFCs?
 * How should we prioritize the resolution of RFCs?
 * Does it make sense to prioritize RFCs such that it's possible to target specific MediaWiki releases? (e.g. 1.24)?

The architects
(15 minutes)
 * Should we expand the pool of architects? If so, how should we do it?
 * Should we delegate authority more?