Jump to content

Beta Features: Difference between revisions

From mediawiki.org
Content deleted Content added
No edit summary
Tags: Reverted Mobile edit Mobile web edit
Marked this version for translation
 
(28 intermediate revisions by 12 users not shown)
Line 1: Line 1:
<languages />
<languages />
{{update}}
{{For|1=<translate><!--T:162--> the extension</translate>|2=Extension:BetaFeatures}}
[[File:Beta experiments icon.png|frameless|{{dir|{{pagelang}}|left|right}}]]
[[File:Beta experiments icon.png|frameless|{{dir|{{pagelang}}|left|right}}]]
{{commons category|Category:Wikimedia Beta Features|Wikimedia Beta Features}}
{{commons category|Category:Wikimedia Beta Features|Wikimedia Beta Features}}
<translate><!--T:82--> '''Beta Features''' are a way for you to test new features on Wikipedia and other Wikimedia sites before they are released for everyone.</translate>
<translate><!--T:82--> '''Beta Features''' are a way for you to test new features on Wikipedia and other Wikimedia sites before they are released for everyone.</translate>
<translate><!--T:128--> Go to [[<tvar|1>Special:Preferences#mw-prefsection-betafeatures</>|your preferences]] to enable Beta Features for yourself; remember enabling features works on a per site basis.</translate>
<translate><!--T:128--> Go to [[<tvar name=1>Special:Preferences#mw-prefsection-betafeatures</tvar>|your preferences]] to enable Beta Features for yourself; remember, enabling features works on a per-site basis.</translate>


<translate>
<translate>
<!--T:83-->
<!--T:83-->
Please let us know what you think of this program on [[<tvar|1>Talk:Beta Features</>|this discussion page]]. clear edit all lists history
Please let us know what you think of this program on [[<tvar name=1>Talk:Beta Features</tvar>|this discussion page]].


== Purpose == <!--T:84-->
== Purpose == <!--T:84-->
Line 15: Line 17:


<!--T:86-->
<!--T:86-->
The code to provide features like this is in an extension, <tvar|1>{{ll|Extension:BetaFeatures|nsp=0}}</>. Beta Features' preferences are available in a [[<tvar|special-preferences>Special:Preferences</>|Preferences]] tab, accessible via the personal bar at the top of the page for all logged-in users.
The code to provide features like this is in an extension, <tvar name=1>{{ll|Extension:BetaFeatures|nsp=0}}</tvar>. Beta Features' preferences are available in a [[<tvar name=special-preferences>Special:Preferences</tvar>|Preferences]] tab, accessible via the personal bar at the top of the page for all logged-in users.


== Functionality == <!--T:87-->
== Functionality == <!--T:87-->
Line 28: Line 30:
<translate>
<translate>
<!--T:92-->
<!--T:92-->
To use either function, users should select the appropriate checkbox, then click “<tvar|1>{{int|Saveprefs}}</>”, which will save their Beta Features preferences (like with other preferences). Every now and then new features are made available to users, as outlined at <tvar|2>{{ll|Beta Features/Roadmap}}</>.
To use either function, users should select the appropriate checkbox, then click “<tvar name=1>{{int|Saveprefs}}</tvar>”, which will save their Beta Features preferences (like with other preferences). Every now and then new features are made available to users, as outlined at <tvar name=2>{{ll|Beta Features/Roadmap}}</tvar>.


== Current Beta Features == <!--T:93-->
== Current Beta Features == <!--T:93-->
Line 35: Line 37:
Here are the current beta features which we are testing with this system:
Here are the current beta features which we are testing with this system:
</translate>
</translate>
<section begin="list" />
* {{ll|2017 wikitext editor| {{int|visualeditor-preference-newwikitexteditor-label}} }} <translate><!--T:141--> (lead: [[<tvar name=1>User:Jdforrester (WMF)</tvar>|James Forrester]])</translate> – {{int|visualeditor-preference-newwikitexteditor-description}}


<translate>
* {{ll|Content translation|nsp=0}} <translate><!--T:136--> (lead: [[<tvar|1>User:Amire80</>|Amir Aharoni]]) – A tool to quickly translate pages into your language with side-by-side editor.</translate>
<!--T:156-->
* {{ll|2017 wikitext editor| {{int|visualeditor-preference-newwikitexteditor-label}} }} <translate><!--T:141--> (lead: [[<tvar|1>User:Jdforrester (WMF)</>|James Forrester]])</translate> – {{int|visualeditor-preference-newwikitexteditor-description}}
* {{ll|Extension:TwoColConflict| {{int|twocolconflict-beta-feature-message}} }} <translate><!--T:143--> (lead: [[<tvar|1>User:Lea Voget (WMDE)</>|Lea Voget]])</translate> – {{int|twocolconflict-beta-feature-description}}
* {{ll|VisualEditor/Diffs|{{int|visualeditor-preference-visualdiffpage-label}} }} <translate><!--T:148--> (lead: [[<tvar|1>User:ESanders (WMF)</>|Ed Sanders]])</translate> – {{int|visualeditor-preference-visualdiffpage-description}}
* {{ll|Extension:TimedMediaHandler/VideoJS_Player|{{int|beta-feature-timedmediahandler-message-videojs}} }} <translate><!--T:153--> (lead: [[<tvar|1>User:Jdforrester (WMF)</>|James Forrester]])</translate> – {{int|beta-feature-timedmediahandler-description-videojs}}
* {{ll|Help:Reference Previews|{{int|popups-refpreview-beta-feature-message}} }} <translate><!--T:154--> (lead: [[<tvar|1>User:Johanna Strodt (WMDE)</>|Johanna Strodt]])</translate> – <translate><!--T:155--> Show a preview of a reference by hovering over its footnote marker.</translate>

These features are only available on some wikis:
These features are only available on some wikis:
</translate>
* {{ll|VisualEditor/Beta Features/General|{{int|visualeditor-preference-core-label}} }} <translate><!--T:151--> (lead: [[<tvar|1>User:Roan Kattouw (WMF)</>|Roan Kattouw]])</translate> – {{int|visualeditor-preference-core-description}}

* <translate><!--T:135--> [[<tvar|flowtalk>Special:MyLanguage/Structured Discussions</>|Flow on user talk]] (lead: [[<tvar|1>User:Roan Kattouw (WMF)</>|Roan Kattouw]]) – Enables a new structured discussion system on your user talk page.</translate>
* {{ll|Help:Reference Previews|{{int|popups-refpreview-beta-feature-message}} }} <translate><!--T:161--> (lead: [[<tvar name=1>User:Lena Meintrup (WMDE)</tvar>|Lena Meintrup]])</translate> – <translate><!--T:155--> Show a preview of a reference by hovering over its footnote marker.</translate>
* {{ll|Content translation|nsp=0}} <translate><!--T:136--> (lead: [[<tvar name=1>User:Amire80</tvar>|Amir Aharoni]]) – A tool to quickly translate pages into your language with side-by-side editor.</translate>
* <translate><!--T:135--> [[<tvar name=flowtalk>Special:MyLanguage/Structured Discussions</tvar>|Flow on user talk]] (lead: [[<tvar name=1>User:Roan Kattouw (WMF)</tvar>|Roan Kattouw]]) – Enables a new structured discussion system on your user talk page.</translate>


<translate>
<!--T:163-->
These features are beta features on some wikis while enabled for everyone on all others:
</translate>
* {{ll|Talk pages project|{{int|discussiontools-preference-label}} }} <translate><!--T:157--> (lead: [[<tvar name=1>User:ESanders (WMF)</tvar>|Ed Sanders]])</translate> – <translate><!--T:164--> Enable certain features of the DiscussionTools extensions that are not yet enabled for everyone (the list varies by wiki).</translate>
* {{ll|Extension:TwoColConflict| {{int|twocolconflict-beta-feature-message}} }} <translate><!--T:143--> (lead: [[<tvar name=1>User:Lea Voget (WMDE)</tvar>|Lea Voget]])</translate> – {{int|twocolconflict-beta-feature-description}}
* {{ll|VisualEditor/Beta Features/General|{{int|visualeditor-preference-core-label}} }} <translate><!--T:151--> (lead: [[<tvar name=1>User:Roan Kattouw (WMF)</tvar>|Roan Kattouw]])</translate> – {{int|visualeditor-preference-core-description}}
* {{ll|VisualEditor/Diffs|{{int|visualeditor-preference-visualdiffpage-label}} }} <translate><!--T:148--> (lead: [[<tvar name=1>User:ESanders (WMF)</tvar>|Ed Sanders]])</translate> – {{int|visualeditor-preference-visualdiffpage-description}}
<section end="list" />
<translate>
<translate>
<!--T:106-->
<!--T:106-->
Line 57: Line 68:


<translate>
<translate>

== Creating your own == <!--T:107-->
== Creating your own == <!--T:107-->


<!--T:108-->
<!--T:108-->
Do you want to create your own Beta Feature? Great! [[<tvar|1>User:Jdforrester (WMF)</>|James]] is happy to help guide you.
Do you want to create your own Beta Feature? Great! [[<tvar name=1>User:Jdforrester (WMF)</tvar>|James]] is happy to help guide you.


<!--T:109-->
<!--T:109-->
Line 72: Line 84:
* <translate><!--T:114--> Pass basic interoperability with other Beta Features features; and</translate><ref group="issue"><translate><!--T:115--> This is not to say that interoperability is a blocker. Interoperability issues need to be surfaced, and blocker-ness will be determined on a case-by-case basis.</translate></ref>
* <translate><!--T:114--> Pass basic interoperability with other Beta Features features; and</translate><ref group="issue"><translate><!--T:115--> This is not to say that interoperability is a blocker. Interoperability issues need to be surfaced, and blocker-ness will be determined on a case-by-case basis.</translate></ref>
* <translate><!--T:116--> Contribute positively to the user's experience of the site, and be additive in nature. E.g. Beta Features cannot be used to remove site features or functionality without adding features meant to replace what was removed.</translate>
* <translate><!--T:116--> Contribute positively to the user's experience of the site, and be additive in nature. E.g. Beta Features cannot be used to remove site features or functionality without adding features meant to replace what was removed.</translate>
* <translate><!--T:117--> You should expect to test your new feature on [<tvar|beta-cluster>https://en.wikipedia.beta.wmflabs.org/wiki/Special:Preferences#mw-prefsection-betafeatures</> the WMF pre-deploy beta server] for at least one week before deploying to production. This testing period is intended to catch any serious bugs before jeopardizing users on production.</translate>
* <translate><!--T:117--> You should expect to test your new feature on [<tvar name=beta-cluster>https://en.wikipedia.beta.wmflabs.org/wiki/Special:Preferences#mw-prefsection-betafeatures</tvar> the WMF pre-deploy beta server] for at least one week before deploying to production. This testing period is intended to catch any serious bugs before jeopardizing users on production.</translate>


<translate><!--T:118--> If you're happy your code meets these requirements, you should write-up your proposal on the [[<tvar name=new-features>Special:MyLanguage/Beta Features/New Features</tvar>|New Features proposal page]].</translate>
<translate><!--T:118-->
If you're happy your code meets these requirements, you should write-up your proposal on the [[<tvar|new-features>Special:MyLanguage/Beta Features/New Features</>|New Features proposal page]]. As part of creating the Beta Feature, you will be asked for [[<tvar|package>Special:MyLanguage/Beta Features/Package</>|some text copy and an image to represent your feature]] in the user interface; the Design and Product teams can help you with this.
<translate><!--T:165--> As part of creating the Beta Feature, you will be asked for [[<tvar name=package>Special:MyLanguage/Beta Features/Package</tvar>|some text copy and an image to represent your feature]] in the user interface; the Design and Product teams can help you with this.</translate>


<translate>
== Appearance == <!--T:119-->
== Appearance == <!--T:119-->


<!--T:120-->
<!--T:120-->
The appearance of the “<tvar|1>{{int|Prefs-betafeatures}}</>” tab in Preferences is purposefully different, to both inspire interest and propose a departure from the standard layout and complexity of the existing user preferences.
The appearance of the “<tvar name=1>{{int|Prefs-betafeatures}}</tvar>” tab in Preferences is purposefully different, to both inspire interest and propose a departure from the standard layout and complexity of the existing user preferences.


<!--T:121-->
<!--T:121-->
Here is a screenshot of the “<tvar|1>{{int|Prefs-betafeatures}}</>” preferences tab:
Here is a screenshot of the “<tvar name=1>{{int|Prefs-betafeatures}}</tvar>” preferences tab:
</translate>
</translate>


[[File:BetaFeatures-Screenshot.png|centre|frameless|600x600px|<translate><!--T:122--> Screenshot of the “<tvar|1>{{int|Prefs-betafeatures}}</>” preferences screen in <tvar|vector>{{int|Skinname-vector}}</>.</translate>]]
[[File:BetaFeatures-Screenshot.png|centre|frameless|600x600px|<translate><!--T:122--> Screenshot of the “<tvar name=1>{{int|Prefs-betafeatures}}</tvar>” preferences screen in <tvar name=vector>{{int|Skinname-vector}}</tvar>.</translate>]]


<translate>
<translate>
Line 97: Line 110:
</translate>
</translate>
* [[c:Category:Wikimedia Beta Features]] – <translate><!--T:134--> category on Wikimedia Commons</translate>
* [[c:Category:Wikimedia Beta Features]] – <translate><!--T:134--> category on Wikimedia Commons</translate>
* <translate><!--T:139--> [<tvar|grafana>https://grafana.wikimedia.org/dashboard/db/betafeatures</> Analytics dashboard]</translate>
* <translate><!--T:139--> [<tvar name=grafana>https://grafana.wikimedia.org/dashboard/db/betafeatures</tvar> Analytics dashboard]</translate>


[[Category:Design{{#translation:}}]]
[[Category:Design{{#translation:}}]]

Latest revision as of 21:58, 9 December 2023

For the extension, see: Extension:BetaFeatures.

Beta Features are a way for you to test new features on Wikipedia and other Wikimedia sites before they are released for everyone. Go to your preferences to enable Beta Features for yourself; remember, enabling features works on a per-site basis.

Please let us know what you think of this program on this discussion page.

Purpose

The primary purpose of Beta Features is to allow for Wikimedia designers and engineers (from the Wikimedia Foundation and community alike) to roll out technical improvements in an environment where large numbers of users can test, give feedback, and use these features in real-world settings. The secondary purpose of Beta Features is to provide a path so that helpful, well-designed gadgets and other community code can be integrated into core after vetting, testing, and reviewing by Wikimedia Design and Engineering.

The code to provide features like this is in an extension, BetaFeatures . Beta Features' preferences are available in a Preferences tab, accessible via the personal bar at the top of the page for all logged-in users.

Functionality

Right now, users can:

  • manually opt-in to individual features
  • automatically enroll in all additional features as they are subsequently released[issue 1]

To use either function, users should select the appropriate checkbox, then click “Save”, which will save their Beta Features preferences (like with other preferences). Every now and then new features are made available to users, as outlined at Beta Features/Roadmap .

Current Beta Features

Here are the current beta features which we are testing with this system:

These features are only available on some wikis:

These features are beta features on some wikis while enabled for everyone on all others:

We invite Wikimedia product teams and community volunteers who want to test out new features, or significant changes to existing features, to do so through this project.


Deployed features

Other features

This list may document extensions or features that are obsolete or dormant, or are still in planning. Do not rely on the information here being up-to-date.


Creating your own

Do you want to create your own Beta Feature? Great! James is happy to help guide you.

First, you should check that your code meets the following basic requirements:

  • Not significantly degrade site performance;
  • Not noticeably degrade perceived performance of the site, or the user's system;
  • Not crash the user's browser;
  • Not cause data loss, or corruption;
  • Pass basic interoperability with other Beta Features features; and[issue 2]
  • Contribute positively to the user's experience of the site, and be additive in nature. E.g. Beta Features cannot be used to remove site features or functionality without adding features meant to replace what was removed.
  • You should expect to test your new feature on the WMF pre-deploy beta server for at least one week before deploying to production. This testing period is intended to catch any serious bugs before jeopardizing users on production.

If you're happy your code meets these requirements, you should write-up your proposal on the New Features proposal page. As part of creating the Beta Feature, you will be asked for some text copy and an image to represent your feature in the user interface; the Design and Product teams can help you with this.

Appearance

The appearance of the “Beta features” tab in Preferences is purposefully different, to both inspire interest and propose a departure from the standard layout and complexity of the existing user preferences.

Here is a screenshot of the “Beta features” preferences tab:

Screenshot of the “Beta features” preferences screen in Vector legacy (2010).
Screenshot of the “Beta features” preferences screen in Vector legacy (2010).

Known issues

  1. Note that this currently doesn't enroll users until they visit the Preferences page. (phab:T64815)
  2. This is not to say that interoperability is a blocker. Interoperability issues need to be surfaced, and blocker-ness will be determined on a case-by-case basis.