Grants:Project/Rapid/Sophivorus/Excerpts/Report
- Report accepted
- To read the approved grant submission describing the plan for this project, please visit Grants:Project/Rapid/Sophivorus/Excerpts.
- You may still comment on this report on its discussion page, or visit the discussion page to read the discussion about this report.
- You are welcome to Email rapidgrants at wikimedia dot org at any time if you have questions or concerns about this report.
Goals
editDid you meet your goals? Are you happy with how the project went?
The general goal of the grant was to give a push to the whole excerpt concept and associated technology. That general goal I definitely met and I'm super happy with the results. As to my original project targets, I met most of them, but a few I had to modify in favor of better ways to achieve the same goals.
Generally speaking, what happened was this: mid-way through the grant I was made aware of mw:Multilingual Templates and Modules, an amazing project to centralize templates and modules throughout the Wikimedia ecosystem. Decentralized templates and modules have been a major problem since forever: templates and modules are copied everywhere and developers improve them independently, rarely spreading their work to other wikis, so much valuable work is lost. Centralizing templates and modules has been a major goal of the WMF and a top request of the community for years (phab:T66475). In a previous grant of mine, I managed to centralize a major gadget in a novel way, and due to that effort it quickly spread to 40+ wikis while keeping the code centralized, which later allowed me to easily spread improvements to all. Based on this knowledge and experience, I recognized instantly the importance of the Multilingual Templates and Modules project in relation to excerpts, which rely heavily on Lua modules and templates. Thus I understood that the best way to accomplish the general goal of this grant was to align the main Excerpt module with the requirements of the Multilingual Templates and Modules project. However, the module made several deep assumptions that forced me to rewrite the whole thing and to create a new, more general module, Module:Transcluder, which demanded considerable time and effort. This led me to request an extra month to complete this grant. Today, the new modules are already live on the English, Spanish, German, Portuguese, French and Italian wikis and other smaller wikis have spontaneously adopted them. Furthermore, the new modules are completely cross-wiki and their documentation is designed to be easily translatable (and is already translated to 6+ languages), so I'm confident that excerpts will soon spread far and wide.
Outcome
editPlease report on your original project targets.
Target outcome | Achieved outcome | Explanation |
Improve existing documentation. | Done | I greatly improved existing documentation and examples while carefully keeping them easy to translate. I also developed extensive test cases and created a video on how to add excerpts. |
Manually replace en:Template:Transcluded section for excerpts in the 1500+ articles that use it in the English Wikipedia. | Done | After a closer look, the template more fit for replacement was en:Template:Transcluded section2 rather than en:Template:Transcluded section |
Manually add excerpts to some top articles of the Spanish and English wikis to increase exposure. | Done | I manually added excerpts to the main COVID-19 pandemic articles in the Spanish and English wikis, which greatly increased exposure, awareness and adoption of excerpts |
Develop at least one excerpt tree in the English wiki to demonstrate the concept and potential to interested users. | Done | I developed one excerpt tree in the English wiki, rooted in en:COVID-19 pandemic, see en:Wikipedia:Excerpts#Excerpt trees. |
Create the basic resources on the Portuguese, French, Italian and German wikis. | Done | |
Leave a message on the appropriate area of each wiki sharing the technique and conveying the potential. | Done | de, pt, it, fr |
Manually add excerpts to some high-traffic articles of the German, Portuguese, French and Italian wikis | Half-done | I added excerpts to a few mid-traffic articles of the German, Portuguese and French wikis. In the Italian wiki, there's still some debate going on about the use of excerpts in the main namespace so I haven't added any excerpts yet. In the next few days I'll try to add some excerpts to high-traffic articles related to the COVID-19 pandemic, since it's given so good results in the Spanish and English wikis, but I haven't found the time to do so yet because I just managed to finish deployment. |
Develop a user script to facilitate the spread of excerpts into new wikis | Developed modules instead | To facilitate the spread of excerpts into new wikis, instead of a user script, I developed Module:Transcluder, a general-purpose transclusion engine that makes no arbitrary assumptions on how it will be used and is designed to be cross-wiki from the start. Furthermore, I completely rewrote Module:Excerpt to implement the Excerpt template, but using Module:Transcluder and making no wiki-specific assumptions, so that it can now be deployed exactly the same on every wiki and easily kept up to date as the technology evolves. |
Use the user script to add valuable excerpts to hundreds or thousands of smaller articles. | Done using AWB instead | Hundreds of excerpts were added by merging the old en:Template:Transcluded section2 into en:Template:Excerpt and also with en:Wikipedia:AutoWikiBrowser (AWB) and the kind help of en:User:Find bruce. Furthermore, during these months hundreds of new excerpts were manually added to the English and Spanish Wikipedia by myself and other users. I also started experimenting with AWB on the Spanish wiki to do add several more excerpts myself. If it works well, I may then do it on other wikis too. |
Learning
editProjects do not always go according to plan. Sharing what you learned can help you and others plan similar projects in the future. Help the movement learn from your experience by answering the following questions:
- What worked well? I received lots of support and help from users from all wikis, including bug reports, feature requests, code fixes, kind words, old-school badges, good advice, and a nudge or two. Extensive test cases were also a great time investment. Another thing that worked incredibly well was using Google Translate to kick-start the translation of template documentation.
- What did not work so well? I was surprised by the amount of bureaucracy on the English Wikipedia. When I added excerpts to the COVID-19 pandemic article, the Excerpt module and template were edit-protected due to their new high-visibility and I was asked to stop editing them directly despite being the most active developer, a seasoned Wikimedian, having a global-interface-editor permission that technically allowed me to continue editing, and this grant aimed at improving them. I had to request a template-editor permission to continue my work on the English Wikipedia, and I wouldn't have got it if it weren't for the timely intervention of an established admin that managed to turn the tides.
- What would you do differently next time? Next time I develop a Lua module, I'll do so directly at MediaWiki.org and in alignment with mw:Multilingual Templates and Modules from the start.
Finances
editGrant funds spent
editPlease describe how much grant money you spent for approved expenses, and tell us what you spent it on.
Tasks | Time spent | Funds spent |
---|---|---|
Develop and deploy en:Module:Excerpt, en:Template:Excerpt and many other resources related to excerpts. | May 1 - May 31 | USD 1000 |
Develop and deploy mw:Module:Transcluder, mw:Template:Excerpt and many other resources related to excerpts. | June 1 - June 30 | USD 1000 |
Develop and deploy mw:Module:Transcluder, mw:Module:Excerpt and many other resources related to excerpts. | August 1 - August 31 | USD 0 |
Totals | May 1 - August 31 (3 months) | USD 2000 |
Remaining funds
editDo you have any remaining grant funds?
There're no remaining grant funds.
Anything else
editAnything else you want to share about your project?
- I developed sophisticated and extensive test cases for all the relevant modules and templates, which greatly facilitated development and will continue to do so in the future:
- mw:Module:Transcluder/testcases
- mw:Template:Excerpt/testcases
- en:Module:Excerpt/testcases
- en:Template:Excerpt/testcases
- en:Template:Transclude lead excerpt/testcases
- en:Template:Transclude linked excerpt/testcases
- en:Template:Transclude list item excerpt/testcases
- en:Template:Transclude random excerpt/testcases
- en:Template:Transclude selected excerpt/testcases
- es:Módulo:Excerpt/casos de prueba
- es:Plantilla:Extracto/casos de prueba
- I developed a small user script for visualizing existing excerpt trees and gathered consensus to deploy it on the MediaWiki namespace in the English and Spanish wikis (en:MediaWiki:ExcerptTree.js and es:MediaWiki:ExcerptTree.js), which then allowed me to make it easily available to users through a button at en:Template:Excerpt#Excerpt trees and es:Plantilla:Extracto#Árboles de extractos.
- en:Module:Transcluder is now used by en:Module:Mapframe, which in turn is used in hundreds of thousands of articles
- By request of another user, I developed a small template, es:Plantilla:Comparar fichas, that uses Module:Transcluder to transclude only the infobox of two or more articles and puts them side by side for comparison. This is a first example of the generality and versatility of the new module, and many more uses are bound to follow.
- By request of yet another user, I developed another small module, v:Module:Abstract, that uses Module:Transcluder to get only the "abstract" parameter from the infobox of the articles submitted to the WikiJournal project on Wikiversity.