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