What's cooking in MediaWiki Single sign-on, version tagging, and other goodies Brion Vibber Wikimedia Foundation, Inc. Wikimania Cambridge, MA August 5,

Slides:



Advertisements
Similar presentations
Tracking and Tracking Systems. » What are tracking systems? » What are Impressions, Clicks, Leads and Sales? » Tracking Impressions » Tracking Clicks.
Advertisements

CTER Orientation Tutorial The Use of the WebBoard.
Using the Self Service BMC Helpdesk
July 2010 D2.1 Upgrading strategy Javier Soto Catalog Release 3. Communities.
Dcsdgrantaid.com March Background Information 1)First Section of Application Form provides Background Information 2)Make sure you read this section.
Hidden Features. What will we cover 16 hidden features for Admins Bonus: –2 hidden features for Employers –Live examples!
Members Only & Login Modules Members Only works with the Login module to provide password protection to Web pages and files. Login Groups may be created.
Upcoming MediaWiki goodies (aka, Wikipedia takes over everything) Brion Vibber Wikimedia Foundation, Inc. MySQL Users Conference Santa Clara, CA April.
WebCT CE-6 Assignment Tool. Assignment Tool and Assignment Drop Box Use “Assignment” button under Course Tools (your must be in “Build” mode) to: –Modify.
Introductory CMS Training Welcome to the new Montana State University Content Management System!
How to Establish a Blog. What is a Blog A blog is a collection of informational articles/ideas intended to update a viewer on new information associated.
Radoncssi.org Google based IT infrastructure Alf Siochi.
Application Process USAJOBS – Application Manager USA STAFFING ® —OPM’S AUTOMATED HIRING TOOL FOR FEDERAL AGENCIES.
GETTING BUTTS INTO THE SEATS. SOCIAL MEDIA FACTS As of tomorrow Facebook will be 10 years old and has an estimated 1.3 BILLION users Facebook StatisticsData.
Core Publisher: Station Administrator Tools. Training 1: Site Administration Training 2: Programs Training 3: Content Tagging Training 4: Creating Posts.
End User Administration (in context of Liferay CMS) Copyright © 2006 Liferay, LLC All Rights Reserved. No material may be reproduced electronically or.
Qualifications Portal Guide Personal Development and Employability Qualification.
DIRECT CERTIFICATION Patricia Winders Director’s Conference July 29, 2015.
Leadership for Student Success through After School Programs Presented by: California County Superintendents Educational Services Association with the.
Setting up your ZEN Portfolio Estimated time: 5-20 minutes Sample e-portfolio: zenportfolios.ca/cyri-joneszenportfolios.ca/cyri-jones.
XNAT and Basic Knowledge Vanderbilt University Benjamin Yvernault, Bennett Landman, Brian Boyd 1.
Board of Canadian Registered Safety Professionals Certification Maintenance Online Tool BCRSP introduces a new web-based tool to assist certificate holders.
Online Reporting Guide
Object-Oriented Software Engineering Using UNIX groups and Subversion Estimated Time: minutes “Unix is user-friendly. It's just very selective about.
Registration and Log-in Flow Benjamin Melançon agaric.com & dgd7.org.
COMP3121 E-Commerce Technologies Richard Henson University of Worcester November 2011.
CTER Orientation Tutorial The Use of the WebBoard.
Feedback #2 (under assignments) Lecture Code:
Finding The 25 th Hour: Technology & Time Management Tools To Ease Your Pain.
Creating iEARN-Qatar Portfolio 2014 Paul Gerhard.
Lecture 8 – Cookies & Sessions SFDV3011 – Advanced Web Development 1.
PowerPoint Presentation of Essential Concepts PowerPoint Presentation of Essential Concepts Chalice Tillis LEM 511.
Team 708 – Hardwired Fusion Created by Nam Tran 2014.
Creating a Web Site Using 000webhost.com The 000webhost.com Site You will be required to create an account in order to use their host computer 000webhost.com.
DOCUMENT MANAGEMENT FOR A NEW RESEARCH GRANT PROPOSAL FORM IN JE-S 1.
BIT 285: ( Web) Application Programming Lecture 15: Tuesday, February 24, 2015 Microsoft Azure Instructor: Craig Duckett.
Multifactor Identification for Internet Banking Citizens State Bank Monticello, Iowa
Mtivity Client Support System Quick start guide. Mtivity Client Support System We are very pleased to announce the launch of a new Client Support System.
Core Publisher: Station Administrator Tools. Training 1: Site Administration Training 2: Programs Training 3: Content Tagging Training 4: Creating Posts.
The Refereeing Module of the SPMS FEL2005: August Heinz-Dieter Nuhn – Scientific Editor Beck Reitmeyer – Conference Editor Referee = Reviewer = Expert.
How to Create and Use Wiki. Resources Jordan, Michael. “The Wonderful World of Wikis: Create and Maintain any kind of content, quickly and easily.” Lessons.
12/14/20151 Uniquescriptz Backend Support Document Ver 2.0.
Setting Up TGO User Accounts. Creating User Accounts for Other Users If your company has other users who need to use the Active Orders system, your company’s.
Steps for posting a training (single event or series) to the regional calendar R&C Regional Calendar.
Copyright © 2006, Infinite Campus, Inc. All rights reserved. User Security Administration.
Knowledge Management Putting what you’ve learned to work!
Customer Service Website. What’s so great about it? Latest information Stock status Pricing Barcodes numbers Back / Forward orders Place.
Vendor Bid System (VBS) Seminar. Agenda Vendor Bid System Overview Step-by-Step Advertisement Posting Editing Active Advertisements Recommended Practices.
Hubnet Training One Health Network South East Asia Network Overview | Public and Members-only Pages; Communicating and Publishing using Blogs and News.
Catherine Metcalf | Dec U.S. Department of Education 2015 FSA Training Conference for Financial Aid Professionals The FSA ID – Resources for Assisting.
VCE IT Theory Slideshows By Mark Kelly Vceit.com Websites & Data.
Internet Advancement Ore-Ida Council Boy Scouts of America.
| imodules.com Top 10 FAQ in Application Support Kelly Schmiedeler & Amber Quayle.
Testing External Survey Automatic Credit Granting Shepherd University Department of Psychology.
 How we should structure our checkout and order process?  Checkout and Order Process of our framework  Stages of Checkout and Order Process.
Version Control and SVN ECE 297. Why Do We Need Version Control?
1 Visalia Unified School District Principal & Area Administrator Service Request Approval Processing Using The SRTS November 16, 2005 Administrative Services.
BLOG STARTUP. What is a blog A Blog (or weblog) is an online journal or ‘diary’ that can be immediately and easily updated. A Blog can consist of a list.
Catherine Metcalf | Dec U.S. Department of Education 2015 FSA Training Conference for Financial Aid Professionals The FSA ID – Resources for Assisting.
(1) Introduction to Subversion (SVN) and Google Project Hosting Philip Johnson Collaborative Software Development Laboratory Information and Computer Sciences.
1 /6 Introducing TaxWise Online’s Administrator Functions © 2006, Universal Tax Systems, Inc. All Rights Reserved. Administrator Functions Objectives –In.
American Diploma Project Administrative Site Training.
American Diploma Project Administrative Site Training.
Get Secure! Facebook Privacy Tutorial Becky Benishek | November 2013.
Copyright © SkyeyTech, Inc. CRMdesk Power and elegance.
Switchvox SMB 4.6 for your peace of mind
MOBILE ACCESS & PDS CONNECTS
Version Control System
New Functionality in ARIN Online
Easy-Speak How easy is it?
Presentation transcript:

What's cooking in MediaWiki Single sign-on, version tagging, and other goodies Brion Vibber Wikimedia Foundation, Inc. Wikimania Cambridge, MA August 5, 2006

Too many accounts! Each language and project has its own set of user accounts

This makes cross-wiki operations like uploading an image to Commons harder: log in again have to create your account a second (third, fourth) time Sometimes a username belongs to different people on two project or language wikis, creating confusion This makes cross-wiki operations like uploading an image to Commons harder: log in again have to create your account a second (third, fourth) time Sometimes a username belongs to different people on two project or language wikis, creating confusion

Let the same username and password work for logging in on any Wikimedia project wiki, once created a single time Let the same username belong to the same person on all Wikimedia project wikis Let the same username and password work for logging in on any Wikimedia project wiki, once created a single time Let the same username belong to the same person on all Wikimedia project wikis Immediate goals

Long-term goals Only have to log in once per session for all Wikimedia wikis May require some fancy cookie work, so likely not immediately active Use unified accounts to support inter-site protocols such as OpenID authentication cleanly Only have to log in once per session for all Wikimedia wikis May require some fancy cookie work, so likely not immediately active Use unified accounts to support inter-site protocols such as OpenID authentication cleanly

Sad answer: nobody got around to central user database support until hundreds of separate wikis were already in place Transition pain: converting database entries merging accounts Sad answer: nobody got around to central user database support until hundreds of separate wikis were already in place Transition pain: converting database entries merging accounts Why doesn’t it work like this to start with?

Transition! Basic user data collected into a transitional database to be merged | lu_dbname | lu_id | lu_name | lu_ | lu_editcount | | enwiki | 1 | Brion | | 4200 | | frwiki | 30 | Brion | | 1337 | | 1337 | | 1337 | | jawiki | 500 | Brion | | 87 | | | srwiki | 700 | Brion | | 0 | srwiki | 70 srwiki |

Assign an account owner The global account is assigned first to the owner of one of the local wikis’ accounts. In most cases, this will just be the account with the most edits. The global account is assigned first to the owner of one of the local wikis’ accounts. In most cases, this will just be the account with the most edits | lu_dbname | lu_id | lu_name | lu_ | lu_editcount | | enwiki | 1 | Brion | | 4200 | | frwiki | 30 | Brion | | 1337 | | 1337 | | 1337 | | jawiki | 500 | Brion | | 87 | | | srwiki | 700 | Brion | | 0 | srwiki | 70 srwiki |

match Any accounts with matching are next attached automatically. Passwords can be reset by , so any account with matching can be accessed by the same person. Any accounts with matching are next attached automatically. Passwords can be reset by , so any account with matching can be accessed by the same person | lu_dbname | lu_id | lu_name | lu_ | lu_editcount | | enwiki | 1 | Brion | | 4200 | | frwiki | 30 | Brion | | 1337 | | 1337 | | 1337 | | jawiki | 500 | Brion | | 87 | | | srwiki | 700 | Brion | | 0 | srwiki | 70 srwiki |

Merge unused accounts Some accounts have never actually been used for editing. These can be reclaimed with little conflict. Some accounts have never actually been used for editing. These can be reclaimed with little conflict | lu_dbname | lu_id | lu_name | lu_ | lu_editcount | | enwiki | 1 | Brion | | 4200 | | frwiki | 30 | Brion | | 1337 | | 1337 | | 1337 | | jawiki | 500 | Brion | | 87 | | | srwiki | 700 | Brion | | 0 | srwiki | 70 srwiki |

First login: password check The next time the person logs in, we can merge any remaining accounts with matching passwords. Encrypted password storage means we can’t compare them until the user types it in for us. The next time the person logs in, we can merge any remaining accounts with matching passwords. Encrypted password storage means we can’t compare them until the user types it in for us | lu_dbname | lu_id | lu_name | lu_ | lu_editcount | | enwiki | 1 | Brion | | 4200 | | frwiki | 30 | Brion | | 1337 | | 1337 | | 1337 | | jawiki | 500 | Brion | | 87 | | | srwiki | 700 | Brion | | 0 | srwiki | 70 srwiki |

Yay, done! If everything could be matched like this, the accounts have been merged totally transparently. Just keep logging in like before, but now it works on wikis you haven’t visited before, too If everything could be matched like this, the accounts have been merged totally transparently. Just keep logging in like before, but now it works on wikis you haven’t visited before, too | lu_dbname | lu_id | lu_name | lu_ | lu_editcount | | enwiki | 1 | Brion | | 4200 | | frwiki | 30 | Brion | | 1337 | | 1337 | | 1337 | | jawiki | 500 | Brion | | 87 | | | srwiki | 700 | Brion | | 0 | srwiki | 70 srwiki |

Conflict resolution It won’t always go smooth, of course... We have to resolve conflicts if there are accounts with: missing or different address AND different password AND have been used for edits It won’t always go smooth, of course... We have to resolve conflicts if there are accounts with: missing or different address AND different password AND have been used for edits

Where do conflicts come from? Registered by same person, but didn’t keep passwords and synchronized OR registered maliciously by an impersonator OR registered by a different person legitimately Registered by same person, but didn’t keep passwords and synchronized OR registered maliciously by an impersonator OR registered by a different person legitimately

Resolving false conflicts Accounts that are owned by the same person but couldn’t be matched automatically can be resolved on login: Confirm you know both passwords by logging in OR reset the password by Accounts that are owned by the same person but couldn’t be matched automatically can be resolved on login: Confirm you know both passwords by logging in OR reset the password by

Resolving true conflicts This is harder, but possible: On login, the minority account holder will have the option of renaming their account so it no longer conflicts After some time has passed (weeks?), remaining non-matching accounts may be forcefully renamed. This is harder, but possible: On login, the minority account holder will have the option of renaming their account so it no longer conflicts After some time has passed (weeks?), remaining non-matching accounts may be forcefully renamed.

Single user status This has been delayed a long time because every time devs discuss this, it becomes a big fight. Details are non-negotiable or we’ll get sidetracked again! Basic back-end login and auto-transition code working Should be ready for live transition tests later this month, and can go live afterwards May delay final transition until Wikimedia board election is complete to avoid breaking votes This has been delayed a long time because every time devs discuss this, it becomes a big fight. Details are non-negotiable or we’ll get sidetracked again! Basic back-end login and auto-transition code working Should be ready for live transition tests later this month, and can go live afterwards May delay final transition until Wikimedia board election is complete to avoid breaking votes

Stable revisions tagging isn’t always a crime

Visibility control We know that Wikipedia is a work-in-progress and vandalism is temporary and harmless but random visitors to the site don’t know this! A short time-delay or sometimes explicit approval before updating the view could perhaps reduce the impact of vandalism Keep it easy to find and fix with a visible notice of new, hidden versions We know that Wikipedia is a work-in-progress and vandalism is temporary and harmless but random visitors to the site don’t know this! A short time-delay or sometimes explicit approval before updating the view could perhaps reduce the impact of vandalism Keep it easy to find and fix with a visible notice of new, hidden versions

Revision tagging Planned for experiments on German Wikipedia Possible uses: Marking stable versions for display Marking reviewed versions for publishing subsets Allowing edits on locked articles while default visitor view is to the last-checked version Planned for experiments on German Wikipedia Possible uses: Marking stable versions for display Marking reviewed versions for publishing subsets Allowing edits on locked articles while default visitor view is to the last-checked version

Neat? What’s so hard? Templates and images! May be vandalized or changed incompatibly since the original version was marked A stable revision with a bunch of vandalism in a template... not so great. Templates and images! May be vandalized or changed incompatibly since the original version was marked A stable revision with a bunch of vandalism in a template... not so great.

How can we solve this? Track the revision ID of the tagged page version... and the current revision IDs of each template used and the version of each image used Track the revision ID of the tagged page version... and the current revision IDs of each template used and the version of each image used

Err, what’s that mean? Unlike protected pages today, tagged versions will always display the same... even if someone changes the templates and images it uses. Unlike protected pages today, tagged versions will always display the same... even if someone changes the templates and images it uses.

But who makes the decisions? Aye, that’s a good question. Most likely, ‘protection’-style tagging will be done by sysops like today Publishing tagging may be done by ad-hoc groups? It’s still in experimental planning, details up in the air... Aye, that’s a good question. Most likely, ‘protection’-style tagging will be done by sysops like today Publishing tagging may be done by ad-hoc groups? It’s still in experimental planning, details up in the air...

What about ratings? Ratings or reputation systems could become part of how taggable revisions are identified, though automation might be too scary

Revision tagging status Some back-end proof-of-concept code has been done to confirm the template versioning can work UI mockups for versioning badges Still needs final decisions on how it will be used Depending on developer load and community excitement, will see the light of day in one to three months Some back-end proof-of-concept code has been done to confirm the template versioning can work UI mockups for versioning badges Still needs final decisions on how it will be used Depending on developer load and community excitement, will see the light of day in one to three months

OpenID multi-site authentication

use your Wikimedia account to identify your posts on blogs and wikis supporting OpenID use your blog or wiki account to identify your edits on Wikimedia wikis a step up from anonymous IP addresses use your Wikimedia account to identify your posts on blogs and wikis supporting OpenID use your blog or wiki account to identify your edits on Wikimedia wikis a step up from anonymous IP addresses

OpenID status Evan Prodromou’s OpenID extension code available in Subversion Live on Wikitravel Planned to go live on Wikimedia sites after single user unification is complete Evan Prodromou’s OpenID extension code available in Subversion Live on Wikitravel Planned to go live on Wikimedia sites after single user unification is complete

?> Brion Vibber Wikimedia Foundation, Inc. Wikimania Cambridge, MA August 5, 2006