טכנולוגיה למען הקהילה
Community Tech is the Wikimedia Foundation team running the Community Wishlist Survey. It builds and improves curation and moderation tools for experienced users, supports bot operators, and more. The creation of the team is a direct outcome of requests from the most active contributors. The team works closely with editors, volunteer developers, and other Wikimedia teams.
Current selected projects
To complete as many wishes as possible, Community Tech attends to the voted wishes with a prioritisation framework in mind. The framework guides how we come about the current selected projects.
|Generate Audio for IPA|
|Better diff handling of paragraph splits|
|Autosuggest linking Wikidata item after creating an article|
|Audio links that play on click|
|Real Time Preview for Wikitext|
|Enable live preview by default|
|Extend "Who Wrote That?" tool to more wikis|
We surface the movement's technical platform needs and build and support needed tools with engaged contributors.
- ידע: היכולת ללמוד ולהבין נושאים, מקומות, מצבים וכו'
- KINDNESS: Having a benevolent, courteous, friendly, generous, gentle, liberal, sympathetic, or warm-hearted nature or disposition, marked by consideration for – and service to – others.
- COLLABORATION: To work together with others to achieve a common goal.
September 25, 2023: It's Time for Wishathon!
The quarterly online hackathon known as Wishathon, organized by Community Tech to help fulfil more wishes from The Community Wishlist Survey, starts from Monday, 25 September 2023, to Friday, 29 September 2023.
Wishathon engages other Wikimedia Foundation staff to help fulfill more wishes, and also foster cross-team and cross-departmental collaboration.
August 8, 2023: Wish Updates
Hello everyone, there have been a few changes since our last major update in April 2023.
Displaying categories on mobile
We hoped to implement Display the categories on the mobile site for everyone – after completing the Better Diffs wish. Unfortunately, our key partner, the Web team, will not tackle this wish now. The importance of categories to readers must be researched further to prioritize this wish instead of other pending wishes. But wish fulfilment is often on a rolling basis, so your feedback is welcome. In the meantime, we are working on the Auto-save feature, the #8 wish in the Community Wishlist Survey 2023, which has been renamed to the Edit-Recovery Feature to reflect more accurately what the feature is.
Who Wrote That
Secondly, we have responded to the “Extend ‘Who Wrote That?’ tool to more wikis” and currently, Who Wrote That? (WWT) is now available on 8 more Wikipedias – French, Italian, Hungarian, Japanese, Indonesian, Portuguese, Dutch, and Polish. This brings the total number of wikis with WWT up from five to 13.
June 22, 2023: Next-steps for Auto-save feature
The CommTech team is reviewing any investigations, discussions, patches that have happened around the Auto-save feature wish to determine what is next.
Please read about the project, and help answer some questions including how long we need to save the data for the auto-save functionality and what we should store in the database to be able to make autosave functionality work.
June 22, 2023: IPA transition to Language Team
Community Tech will hand over the IPA project to the Language Team this June. This decision is due to the Language team's expertise in localization, and their focus to create a suite of open language-supporting services such as the MinT machine translation service among other things.
April 27, 2023: Continuing on 2022 and starting the 2023 Wishlist
Dear Community Wishlist Survey Participants,
We would like to thank you for your participation in the 2023 Community Wishlist Survey. The survey is a crucial element in helping us prioritize the development of new features and improvements to make Wikimedia projects better for everyone.
Starting work on 2023
We are pleased to announce that the Community Tech team has identified the "Display the categories on the mobile site for everyone" wish as the priority for the team to work on in the coming months after we complete the work on Better Diffs for paragraph splits. This was also Wish #18 on the 2022 Wishlist. This decision was based on the wish's technical and design feasibility, as well as its potential impact in improving the user experience of the mobile site for all users.
We understand the importance of this feature for the community, and we are excited to work on it. We will keep you updated on the progress we make and will provide more information on the timeline for implementation as soon as possible. In addition, we’ve begun investigating how to Extend “Who Wrote That?” tool to more wikis, the seventh #7 most popular wish from 2023 and hope to make great progress on that work in the coming months. We anticipate launching Who Wrote That? tool to French Wikipedia in the coming days, with several other languages to follow in the coming weeks.
We want to provide an update on the "Dark Mode" wish that was voted for in the survey. We are excited to inform you that the Web team has taken on this wish and plans to work diligently on its development. However, due to technical constraints and design feasibility, the Web team will be releasing the first version of the "Dark Mode" feature in Beta. We understand the importance of accessibility and inclusivity, and we are committed to ensuring that this feature meets the needs of all users. Additionally, there are many templates that need to be adjusted, and volunteers need to be alerted to modify before the "Dark Mode" feature can be fully released. The Web team will work on documenting these issues, and we appreciate your patience in this process. We encourage you to subscribe to the Web team's newsletter to follow the updates about this project.
I would also like to take a moment to thank the volunteers who took the time to collaborate with me in good faith during my tenure here and share that I am departing the Wikimedia Foundation and this team. Thank you to those of you who took the time to participate in proposals, problem solving with us, and to those of you who volunteered and tackled technical pieces of granting wishes – I will carry that inspiration with me for the rest of my career.
In my absence, a Product Trio will absorb my responsibilities so you can expect to reach out to the Engineering Manager KSiebert (WMF), Tech Lead DMaza (WMF), and Principal designer JSengupta-WMF as a united Product Trio after my departure in early May. You can expect to communicate with the team in the same way as before, the Talk pages for Projects, Updates, and the Team are the best way to reach the team. We collectively would also like to thank you once again for your participation in the Community Wishlist Survey. Your input helps us prioritize and improve Wikimedia projects, and we look forward to your continued engagement in the future.
NRodriguez (WMF) and the rest of The Community Tech Team
March 13, 2023: Better diff handling of paragraph splits update
The team has continued work on this wish on both the engineering and design side and we wanted to share the updates with you.
Thank you to all of you who took the time to engage with us and provide feedback on the talk page. We read through all of the feedback and did an aggregate analysis on the points made. We then combined your feedback on those proposed designs, as well as unmoderated user research, and we've finalized the proposed designs to go into engineering for the improvements regarding the wish changes.
Please see the designs in this update which include:
- Switching between diff modes via dropdown
- Improving the accessibility of inline diffs with legends and tooltips for desktop
- Improving the display of a change that introduced a new line or paragraph
- Improving the display of a change that deleted an existing line or paragraph
In addition, a demo of the changes for the underlying comparison engine has been created.
Before you try out the demo to give us feedback, please note:
- It's a work in progress, our QA engineers are currently using a list of comprehensive diffs to make sure the changes are consistent with the current version of the two-column diff experience or an improvement on the UI.
- The demo page does NOT include all final UI changes but can give testers a good sense of how the completed two-column diff experience will end up looking.
- To use the demo, paste the same text into the two boxes and modify the text in the right box. The diff under it will show what changed.
We'd love to hear your feedback on our talk page!
- Accessibility of Design Colors: Our designer is working closely with our Design Systems team to determine the accessibility of the designs. We anticipate having to change the shade of them to a slight degree to make it more accessible but the colors will remain similar to the blue and yellow currently displayed on two-column and inline diffs.
- Release plan: We are working out a release plan and a timeline of next steps and will be including this in our next project updates! Releasing changes to the underlying engine on the diff follows a different process than traditional releases in Mediawiki software so we will be sure to update you with steps and details next time.
We also want to include big thank you in this update to a non-Community Tech staff member, Tim Starling, who graciously stepped up to help us with the underlying changes in the C++ engine of wikidiff2. We are always happy to receive support fulfilling wishes from other members at the Foundation that have the expertise necessary to fulfill a wish even if they are not in the Community Tech team.
We're looking forward to hearing from all of you!
Open Questions from first update: We want to hear from you!
- Are you interested in conducing user research on the new proposed interface to diff paragraph splits? If so, will you please post that you're interested in the Talk Page?
- What other pain points manifest themselves when you view the diff?
- How might we address the root pain points that address the confusion around paragraph splits?
- How does the use of color indicate which content is added, removed, or stayed the same?
March 7, 2023: Community Wishlist Survey 2023 results published
The Community Wishlist Survey 2023 edition has been concluded. We have published the results of the survey and will provide an update on what is next in April 2023.
מה אנחנו עושים
We mainly work on the Community Wishlist Survey. It's an annual project which contributors from all Wikimedia wikis can ask for changes that they would most like to see.
We work on relatively small tasks and that have a direct benefit for the most active contributors. In particular, we support those who:
- Participate in the curatorial and administrative layers of the Wikimedia projects
- Work on technical features for wikis such as templates, modules, gadgets, user scripts, and bots.
Occasionally, we also work on other projects. We do that to help smaller groups that may not have enough support in the Survey. This is how we have worked on:
- Data Portability
- Deprecation of RelatedSites extension
- AfC Process Improvement May 2018
- פטרול העתקות
We also periodically take part in a "wishathon".
Tasks that are in scope include:
- Creating gadgets, bots, and wizards to help users in what they already do
- Modifying existing gadgets and bots so that they can work on more projects
- Converting heavily-used community code (gadgets and user-scripts) into part of the MediaWiki software
- בניית כלים למיזמי ויקימדיה
- Identifying and fixing issues with most important old tools for experienced users, such as AbuseFilter or Citation bot
- Creating better documentation for these tools so that they can be better utilized
Tasks that are not in scope include:
- Maintaining orphaned/abandoned projects from other WMF teams.
- Supporting internal needs of WMF teams.
- Large, long-term development projects like converting Commons to use structured meta-data or creating an entirely new watchlist interface.
- Being the point of contact for all community technical requests.
- Sysadmin type tasks such as managing Toolforge, improving site performance, creating new wikis, managing IRC channels, etc.
For a more detailed breakdown of the team's current work, check our Kanban board in Phabricator.
Staff Software Engineer, Tech Lead
Staff Software Engineer
Senior Software Engineer
Senior Software Engineer
Community Relations Specialist
Principal User Experience Designer
The Community Tech team has a similar mandate to Wikimedia Deutschland's Community Tech team – Technischer Communitybedarf, or TCB – which provides technical assistance and software development for the German Wikimedia community. We will be collaborating with them on projects that overlap between our teams and assisting each other with technical assessment and code review. We will also be collaborating with other WMF development teams when high-priority community requests fall within their scope. In such cases, we will work with the leaders of the other teams to negotiate timelines, expectations, priorities, and ownership. We also spend a good deal of our time working with and supporting Wikimedia volunteer developers.
How can other teams contact us?
Engaging with Community Tech
We review and triage new requests on a biweekly cadence.
It's important to us...
- To work on projects that have a big impact
- To help large wikis and small wikis, in many languages
- To be open and communicative
- To be responsive to people's requests and concerns
- To be calm and civil, and to assume good faith
We're a small team, and there's a lot to do! We want to be as helpful and effective as we can, so we can't take everything on. Saying no to requests that we can't help with is an important part of our job, because it frees up time and energy for the requests that we can help with.
But "no" is hard to hear sometimes, so here are some guidelines about working and communicating with the Community Tech team.
- Please be calm and civil, and assume good faith on our part. We care about the projects too.
- We love our jobs and we work hard, but we don't work 24/7, and we can't guarantee an immediate response.
- If a specific person or issue is taking an outsized percentage of our on-wiki time, that takes time and attention away from other people. We'll sometimes have to close a conversation, and say that we can't spend more time on a particular subject.
- We can't take on projects that are currently on another product team's roadmap, or a project that directly conflicts with another team's work.
- If there's an issue with another product team's work, we can direct you to the appropriate person to talk to.
- We can't answer questions about staffing issues, or confidential matters.
Our process for defining our Values and Mission
In a collaborative session we all came together as a team to work towards being able to formulate our mission statement. To get there we first tried to think about which values we most care about individually to then see where they overlap, because we wanted to make sure that they are truly with us as a group of humans.
Three values stood out to us, which are: Knowledge, Kindness and Collaboration
Values statements itself are pretty broad and can be interpreted differently so we discussed them thoroughly to understand what behaviours they actually translate to, we’ll summarise here quickly what we mentioned:
Why do we care about Knowledge?
We do not want to be protective of our knowledge. If we discover something or implement something new we would like to write about it, let others know compassionately. If we make a decision, document it and explain the reasons. This is especially important because we want to be welcoming people to join the movement as new contributors or team mates.
Why do we care about Kindness?
We are conscious that we can never know what struggles others might be facing, always remember that we may not be aware of the whole picture. By being considerate and courteous to one another we ensure that we all feel included and encouraged to work more openly with one another. In addition to that being kind can mean being clear about if and how we can help or resolve a problem.
Why do we care about Collaboration?
Collaboration is the backbone to what we do and fosters innovation by combining ideas from different viewpoints. When giving explanations we want to be detailed and link to more info wherever possible, to make sure our explanations are meaningful to others. We welcome and actively seek ideas & feedback and questions from each other, WMF, and the community.
Having our values and beliefs in mind we further thought about what our mission statement might be. What are our responsibilities towards the movement, the community and towards each other and what connects us to the CommTech team. Are we just building some tools or is there any greater duty that motivates our work? This one summarised our opinions best:
We surface the movement's technical platform needs and build and support needed tools with engaged contributors.
As we want to contribute to the increase of the movement’s inclusiveness and growth, we surface the needs of the contributors, as long a they are of technical nature. Some of the tools we build ourselves, while we communicate others to the foundation to increase awareness of these needs across different teams.
One of the challenges our team faces is that we touch many different codebases and existing tools, that we don’t know well, therefore we currently have two main initiatives:
The need to collaborate and work closely with others at higher frequency than other teams is quite evident as we frequently build on top of other team’s work. If we touch existing codebases we need to make sure our tools are implemented in a way that matches their way to work and works towards the same goals.
The goal of this initiative is to improve knowledge sharing and collaboration across teams and within teams and find ways to check in with other devs before implementing work to make sure we do not build things from scratch that have previously been implemented. In addition to that we know we can build more innovative solutions by allowing for more collaboration. We thought of ways to encourage for more cross team collaboration for engineers i.e. by encouranging temporary exchange for engineers across teams, by reserving weekly internal collaborative programming sessions that engineers from other teams can visit and add to the agenda of these sessions.
Every quarter, since April 2022, we have an internal hackathon where we work on a series of proposals from this years wishlist and invite other teams to join us for a week. Often times specialists for certain fields are already existent in other teams and working on different projects for a week can increase the sense of belonging within the engineering team as a whole and have a positive impact on levels of collaboration in the future.
With a growing list of projects we maintain, we are left more and more distracted from our priorities.
We do want to provide maintenance for our work, but want more structure for how we provide it. This year we reviewed our approach to maintenainenance and restructured our strategy towards maintenance. Here are the outcomes of this discussion here.
We internally decided how to make these changes happen and are tracked our decision making progress.
With the intention to understand the work of other teams we often look at codebases that are new to us. A good level of user and developer documentation is absolutely essential to get an understanding of the implementation details, goals and challenges of other's work. As a team we want to be exemplary in producing really good documentation, ideally documenting first before implementing and frequently updating others about the status of our work. To achieve that we are currently looking studying how other teams document their work to make sure we find a way that is aligned with other teams. We want to keep documentation close to our code.
When organising collaborative programming sessions we collected recommendations and wrote it down in a guide.
After researching different approaches for how to advance the way we document our work we have come accross documentation-driven development, which seems to meet our needs in respect to how we value docs. We are experimenting with this approach with our current wish Better diff and already enjoyed it's benefits as we are more aligned on what we are working towards and can get feedback from users before implementation.
Template for Reference
- Preferred Name:
- How to talk to me:
- (Optional) Pronouns:
- (Optional) Things I like:
- (Optional) Things I’m bad at:
- (Optional) Annoying things I do:
- (Optional) How to cheer me up when I am grumpy:
- (Optional) Hot takes:
- (Optional) Anything else you should know about me:
Find our user guides here:
User guides from former team members
- Community Tech/Team Processes
- Community Tech/Development
- Community Tech/Maintenance
- Community Tech/Phabricator Criteria for Community Tech