On 05/28/2013 05:55 PM, Jon Robson wrote:
It strikes me that the skin system would lend itself beautifully to bridging this communication gap between developers and editors.
class SkinVectorBeta extends SkinVector { public function initPage( OutputPage $out ) { parent::initPage( $out ); $out->addModules( array( 'echo', 'visualeditor' ) ); } }
If we literally did this (there was a skin called vectorbeta, that you just chose in the menu), it would cause various problems:
1. The CSS classes wouldn't work (i.e. .skin-vector). 2. It would break conditional scripts (skinScripts/skinStyles) and user scripts (User:Example/vector.js). 3. We would have to do the subclass for every supported skin, for projects that are skin-neutral (which Echo is for example).
However, that's not to say a working beta system is impossible.
Is there any reason we don't currently do this in favour of various experiments and then a sudden push to production which tends a lot of the time to result in a heated Village Pump discussion?
I agree it's very important to communicate before it hits production, and an opt-in beta system could help with that. However, that's not the only reason for experiments. E3 uses A/B test experiments to determine which features actually serve their intended purpose before rolling them out to everyone. Furthermore, the users we're primarily working with (new users) are not likely to hit a beta switch in their preferences (it's impossible for some projects like the signup form).
Also, some people (even some experienced users), are not going to choose beta. They may talk about a feature before it's rolled out fully, but they'll only test the main production version.
Matt Flaschen