![](http://upload.wikimedia.org/wikipedia/en/thumb/3/37/HAPPI_example.png/400px-HAPPI_example.png)
This is the documentation for the User:EpochFail/HAPPI user script (see code). This script makes a modification to MediaWiki's edit pane to add highlighting to a revision's words.
A study of this tool is currently being conducted by Aaron Halfaker ([email protected]). For more information on the current study, see the consent form.
Purpose
editHAPPI is a user interface modification for the English Wikipedia that is designed to give you insight into your editing experience. By analyzing the history of an article, HAPPI highlights words while you edit them to show you how those words have persisted through the revision history of an article.
Usage
editInstallation
editTo use this script visit the consent form or just put this code in your personal /vector.js page:
/**
* HAPPI gadget
*
* This gadget is part of a research study being conducted by the
* GroupLens Research lab at the University of Minnesota. Please see
* the consent form at http://wikipedia.grouplens.org/HAPPI/consent.
* If you have questions/comments/suggestions, please direct them to
* User:EpochFail.
**/
importScript("User:EpochFail/HAPPI.js")
Then you need to wait a minute and then bypass your browser cache to load the modification the first time.
Note: If you are using NoScript with Firefox, you will need to allow scripts from grouplens.org to enable HAPPI functionality.
Editing
editThe changes that the tool makes to your interface should only be evident while editing a page in Wikipedia. You should see the addition of a few new controls above the edit pane. These controls will allow you to toggle between normal and highlighted editing. In order to generate the history highlighting that makes this tool interesting, a significant amount of computation will need to take place. Whenever possible, HAPPI will try to outsource these computation to the Grouplens servers at the University of Minnesota. If the servers are down or for some reason aren't responding quickly enough, HAPPI will perform approximate calculations itself in your browser.
Outsourced computation
editThe server needs to do a lot of work to generate the history metrics for this page. It will continue computing to generate an updated history for the next time you need it.
Status indicators for interacting with the Grouplens history cache.
Since javascript script does not provide the best environment for doing memory intensive computations, HAPPI will try to push the work off on the Grouplens servers every time the highlighting is enabled. If for some reason the Grouplens servers can't complete the persistence calculations in a reasonable amount of time (heavy server load, timeouts, etc.) HAPPI will fall back on computing the history metrics itself.
Server status indicator
editAn icon should appear to the right of the highlighting toggle button. This status indicator will alert to the the state of the Grouplens servers and the computations they are doing for your editing session.
In-browser computation
editDue to the excessive size of some articles, we have developed two types of calculation mechanisms that can be run in a resonable amount of time within your browser. The linear calculation generates word history information from the last 50 revisions in an article. This calculation is most useful for relatively small pages since processing 50 large revisions can be very time and memory intensive. For large pages, we have developed an approximate logarithmic calculation that runs much faster and uses less memory, but is less accurate. HAPPI uses a simple set of rules to determine which calculation method is appropriate for the article you are currently editing and reports which calculation it is using via the progress bar.
Logging
editIn order to deeply understand the effectiveness of this gadget, we perform minor logging of some of your actions while using the tool. This logging only takes place during your use of the tool within Wikipedia and halts immediately when the tool is uninstalled. Your actions will not be tracked across pages and the data retrieved from this logging system will never be published in a personally identifiable way and will either be used to improve the functioning of HAPPI or for non-profit, academic usability research.
Support
editIf you have any questions/suggestions/concerns/bug reports, post on EpochFail's talk page. Minor bugs will usually be fix in less than 24 hours.
Technical details
edit- Compatibility: Tested and works in Firefox 2.0-3.x, Opera and Chrome. Users have reported bugs when using IE 8, those bugs are planned to be fixed in the next iteration.
- Skins: The tool has been tested in the monobook and vector skins, but should work in the majority of other skins.
- The code: The script itself (the javascript code) is at User:EpochFail/HAPPI.js.
This script was created by and is maintained by: EpochFail
Advertisements
editUser Boxes
edit
|
{{:User:EpochFail/Userboxes/HAPPI}} | ||
|
{{:User:EpochFail/Userboxes/HAPPI2}} | ||
|
{{:User:EpochFail/Userboxes/HAPPI3}} | ||
|
{{:User:EpochFail/Userboxes/HAPPI4}} |
Banner
edit
|
{{Wikipedia ads|ad=188|float=right|nolinks}} |