As part of our ongoing discussion around improving the contributor journey, I recently asked a few folks their thoughts on Eternal September in open sourceOpen SourceOpen Source denotes software for which the original source code is made freely available and may be redistributed and modified. Open Source **must be** delivered via a licensing model, see GPL.. More specifically, I wondered:
What makes it difficult for our seasoned contributors to mentor new contributors in the open source project?
What happens for existing contributors when we have an influx of new contributors?
Where are the pain points for existing contributors when we bring in new contributors?
Some Initial Thoughts
There were a lot of interesting responses, but there we a few common threads I heard:
Lack of Clarity
It’s hard for existing contributors don’t know a new contributor is in their onboarding, and therefore also hard to see if they are stuck or what could get them unstuck.
Lack of Skills
The primary work for teams is focused, i.e., marketing, coreCoreCore is the set of software required to run WordPress. The Core Development Team builds WordPress., etc. Welcoming and teaching new contributors is a different skill set from those specific focuses. And ever after accounting for that skills gap, there are unspoken cultural norms to get work looked at and moved forward which takes time and observation to learn, rather than task-oriented training.
Lack of Certainty
No matter whether a new contributor makes a single contribution or returns regularly over the coming months, the time required to make sure they have their bearings is the same. This creates tension among team members/existing contributors—they wonder whether they should prioritize existing work (new contributions) or training/support for new contributors.
What do you think?
I’d like your thoughts on the questions I posed above, but I’d also like you to consider this:
If we believe that speed of feedback on a contribution is key to helping a casual contributor become a regular contributor, then what would a good first contribution experience look like for a mentor?
To round out the excellent vision-setting done in both the State of the Word and Letter to WordPress, here are some goals and projects that we can anticipate in the WordPress project this year.
A Quick Caveat
There are always unexpected projects that arise over the course of the year. And there are big projects to move forward in pieces over the course of multiple years. This project is too big for me to see everything all the time, and I rely on the information from team reps and the vision from project leadership to help navigate any surprises.
If you don’t see a project here, keep in mind that many are still valuable to the overall success of our work.
From 10,000 Feet
There are three pillars that the year’s projects are focused on:
Ecosystem: Update distribution methods and mechanisms for extenders and CoreCoreCore is the set of software required to run WordPress. The Core Development Team builds WordPress. itself.
I’ve compiled a preliminary list of individual projects that support one of the above goals and are planned for 2023. This list will be updated throughout the year.
All those related to Phase 3 of the GutenbergGutenbergThe Gutenberg project is the new Editor Interface for WordPress. The editor improves the process and experience of creating new content, making writing rich content much simpler. It uses ‘blocks’ to add richness rather than shortcodes, custom HTML etc. https://wordpress.org/gutenberg/ project
Fonts APIAPIAn API or Application Programming Interface is a software intermediary that allows programs to interact with each other and share data in limited, clearly defined ways.
BlockBlockBlock is the abstract term used to describe units of markup that, composed together, form the content or layout of a webpage using the WordPress editor. The idea combines concepts of what in the past may have achieved with shortcodes, custom HTML, and embed discovery into a single consistent API and user experience. API
Openverse search in Core
Simplify the release process
PHPPHPPHP (recursive acronym for PHP: Hypertext Preprocessor) is a widely-used open source general-purpose scripting language that is especially suited for web development and can be embedded into HTML. http://php.net/manual/en/intro-whatis.php. 8.2 compatibility (Core and Gutenberg)
Maintain learning content speed to ship Continue to ship learning content at the current pace
Update content and refresh design across wordpress.orgWordPress.orgThe community site where WordPress code is created and shared by the users. This is where you can download the source code for WordPress core, plugins and themes as well as the central location for community conversations and organization. https://wordpress.org/
Establish contributor and mentor programs
Develop a canonical pluginPluginA plugin is a piece of software containing a group of functions that can be added to a WordPress website. They can extend functionality or add new features to your WordPress websites. WordPress plugins are written in the PHP programming language and integrate seamlessly with WordPress. These can be free in the WordPress.org Plugin Directory https://wordpress.org/plugins/ or can be cost-based plugin from a third-party program
Explore improvements to our contributor tools
Create a WordPress brand discipline
Simplify the release process (also in CMS)
Refinement of Polyglot tools (also in Community)
Develop a canonical plugin program (also in Community)
How Can You Help?
I know that our code isn’t the only measure of our success. If you already know what type of contribution you’d like to make, you can check out this list of teams (with links to their community sites) and team reps. If you’re not yet sure, here are the areas that each team falls into:
Development, Technology, Code: Core/Editor, Mobile, CLICLICommand Line Interface. Terminal (Bash) in Mac, Command Prompt in Windows, or WP-CLI for WordPress./Tide, Security, Performance
Design, Product, UXUXUX is an acronym for User Experience - the way the user uses the UI. Think ‘what they are doing’ and less about how they do it./UIUIUI is an acronym for User Interface - the layout of the page the user interacts with. Think ‘how are they doing that’ and less about what they are doing.: Design, AccessibilityAccessibilityAccessibility (commonly shortened to a11y) refers to the design of products, devices, services, or environments for people with disabilities. The concept of accessible design ensures both “direct access” (i.e. unassisted) and “indirect access” meaning compatibility with a person’s assistive technology (for example, computer screen readers). (https://en.wikipedia.org/wiki/Accessibility), Test, Triage
Community, Extending WP, Education: Community, Themes, Plugins, Polyglots, Training
Contributor Experience: MetaMetaMeta is a term that refers to the inside workings of a group. For us, this is the team that works on internal WordPress sites like WordCamp Central and Make WordPress., Docs, Hosting, Privacy
Communications: Marketing, Support, WPTV
A Note on Specialized Groups
A couple of coordinated efforts provide essential support to the progress of multiple teams.
Triage: The triage effort happens across multiple teams and has two purposes. One purpose is to ensure tickets are sorted and have all the elements needed for someone to work on them. The second purpose is to determine priority. Not everyone has the information to set priority, but anyone can help sort and replicate reported bugs!
Test: The testing effort also happens across multiple teams and has multiple purposes. One purpose is to validate bugs, bug fixes, and new features before they go to users. The second purpose is to bring continuous, high-quality feedback throughout the release cycle. A lot of that coordination happens on make.wordpress.org/test, but there are also calls to test during various points of the release process in the Core channel.
State of the WordState of the WordThis is the annual report given by Matt Mullenweg, founder of WordPress at WordCamp US. It looks at what we’ve done, what we’re doing, and the future of WordPress. https://wordpress.tv/tag/state-of-the-word/. 2022 was held in New York City on December 15, 2022. It was a welcome feeling to gather together again in person for this annual and anticipated event. After a keynote address that looked at the year’s successes and a peek at what’s to come in the year ahead, the WordPress project’s co-founder @matt engaged in a warm and insightful question and answer session with the in-person attendees.
As with events past, this post will list the questions from WordPress users and contributors that could not be answered live.
Q1. “Own your content” has long been a rallying cry of WordPress. How does this fit with Tumblr’s model of a centralized content server? WordPress.comWordPress.comAn online implementation of WordPress code that lets you immediately access a new WordPress environment to publish your content. WordPress.com is a private company owned by Automattic that hosts the largest multisite in the world. This is arguably the best place to start blogging if you have never touched WordPress before. https://wordpress.com/ allows me to own my content because I can export it to an independent instance. Will we see a standalone Tumblr, like WordPress?
A1. Think of both of them as having different frontends but the same great coreCoreCore is the set of software required to run WordPress. The Core Development Team builds WordPress. (WordPress) on the backend. Tumblr is a SaaS service and, from the standpoint of owning your content, quite a bit of work has gone into data portability. It’s true that Tumblr’s not quite yet open sourceOpen SourceOpen Source denotes software for which the original source code is made freely available and may be redistributed and modified. Open Source **must be** delivered via a licensing model, see GPL. yet, but a lot of work is planned to unify APIs, support RSS, and generally make it more open overall.
In a recent Hallway Chats podcast (beginning at 29:07) with Topher DeRosia and Nyasha Green, Matt offered the following analogy:
Q2. Will WordPress be a thing after the entire focus is moved to GutenbergGutenbergThe Gutenberg project is the new Editor Interface for WordPress. The editor improves the process and experience of creating new content, making writing rich content much simpler. It uses ‘blocks’ to add richness rather than shortcodes, custom HTML etc. https://wordpress.org/gutenberg/?
A2. WordPress is here to stay. The purpose of the Gutenberg project is to evolve WordPress and its capabilities. The Gutenberg pluginPluginA plugin is a piece of software containing a group of functions that can be added to a WordPress website. They can extend functionality or add new features to your WordPress websites. WordPress plugins are written in the PHP programming language and integrate seamlessly with WordPress. These can be free in the WordPress.org Plugin Directory https://wordpress.org/plugins/ or can be cost-based plugin from a third-party itself is a tool for early testing and stabilization of features that will land in and improve WordPress Core, but will not replace it. Matt addresses this further during the State of the Word.
Q3. Are we doing enough for the open-source Contributors and what more can we do to recognize or give back to the community to grow the number of Contributors?
A3. It’s hard to define what “enough” is when it comes to supporting open source contributors. Everyone is invited to celebrate the work done within the project, and a simple way to do so is to recognize folks in the Making WordPress Slack#props channel. There is always room for improvement, though. If you’ve got thoughts about how we can do that, we’d love to hear them! Join the discussion on how to improve the contributor experience.
Q4. Can we perhaps have a second Q&A event with Matt each year to allow for more active feedback and comments from the community in person?
A4. Several other Q&A opportunities with Matt occur throughout the year at most flagship WordCampWordCampWordCamps are casual, locally-organized conferences covering everything related to WordPress. They're one of the places where the WordPress community comes together to teach one another what they’ve learned throughout the year and share the joy. Learn more. events in Asia, Europe, and the Americas. This year the Community Summit will resume, which is also another great opportunity for contributors to exchange feedback and ideas in person. Submit your topic by January 16.
Q5. Why is polylingual functionality in Core less important than collaboration? More than 50% of WordPress installs are not in English.
A5. WordPress is committed to making itself available in as many languages as possible. As part of that commitment, Multilingual is on the roadmap for Phase 4 and set to commence immediately after Phase 3: Collaboration and Workflows, which begins this year.
From a technical point of view, making WordPress natively multilingual is quite challenging. Adding collaboration tools in advance will help support Phase 4 technical’s implementation and provide tools to manage multilingual content out of the box, like translation and review workflows. So Phase 3 will not just “inform” Phase 4 but will actually create the infrastructure and features central to making Phase 4 possible.
Q6. Can Media Library finally get a refresh? We need to be able to organize the images in there.
A6. Yes! Revamping the Media Library and providing better management, discovery, and collaboration tools for media content are on the roadmap for Gutenberg’s Phase 3.
Q7. Are you concerned about the implications of AI image generation being built on top of the copywritten work of artists without their knowledge or consent?
A7. The WordPress open source project supports a free and open web; as long as AI image generation supports initiatives that abide by CC licensing requirements, then AI image generation can be a good thing that helps augment natural human creativity. Listen to Matt’s thoughts on the subject in the Q&A session.
Q8. Will there be preferred browsers for playground dev?
Q9. WordPress introduced and pushed “post formats” with the 2014 theme. Regarding the development in the Twitterverse, what are your thoughts on the post format asides? And what do you think of post formats in a blockBlockBlock is the abstract term used to describe units of markup that, composed together, form the content or layout of a webpage using the WordPress editor. The idea combines concepts of what in the past may have achieved with shortcodes, custom HTML, and embed discovery into a single consistent API and user experience. editor world?
A9. Currently, post formats are in a stable state; they are still supported and usable, but there are no real plans to foster adoption or add additional functionality around them. There are no plans to focus on them during the remaining phases of the Gutenberg project, but if there were a group of motivated contributors who wanted to spend some time on post formats, we would welcome those contributions!
Q10. 2022 shows some progress in the design of mobile features in WordPress: fluid typography, fluid spacing, gaps, etc. However, there are some missing functions: is there some plan to add responsive block order, show/hide, and more features for responsive menus? We work with some African companies and their customers are almost all on mobile (80%). So for them, mobile-first is the rule.
A10. Continued improvement of the mobile experience is absolutely on our collective minds for 2023. There is an active discussion about the limitations of breakpoints vs the opportunities represented by intrinsic web design principles. You can follow and participate in that topic on GitHub.
Q11. Does the project have any plans for future updates to the full administrator UIUIUI is an acronym for User Interface - the layout of the page the user interacts with. Think ‘how are they doing that’ and less about what they are doing., i.e. “the dashboard,” as it appears dated particularly when compared to other website builders?
Several State of the Word attendees asked about the modernization of the dashboard and its UXUXUX is an acronym for User Experience - the way the user uses the UI. Think ‘what they are doing’ and less about how they do it./UI. This question has been modified to reflect that.
A11. Revamping the administration interface (which many of us refer to as “wp-admin” or “the dashbaord”) is included in plans for Phase 3 as it is arguably intrinsic to better collaboration. So far the features being explored are new content management screens (for blocks, styles, fonts, etc.), new admin tools like a global search, and a refresh of notifications.
Q12. What is the word on the need for child themes when customizing block themes?
A12. Block themes are much simpler to customize than classic themes, so while the creation of child themes is supported by block themes, it’s often not needed. Child themes are still valuable, though, when seeking to extend themes from other developers or Core.
Q13. What is the state of the traditional theme?
A13. While the future belongs to block themes, many modern WordPress features are supported by classic themes to help smooth the transition and upgrade path. For example, WordPress 6.1 allows block template parts in classic themes.
Q14. Is the style guide also visible for non-block themes?
A14. There isn’t a guide currently because Styles aren’t available for non-block themes. You can learn more and discuss on this GitHub issue.
Q15. Will the plugin directory for developers always use subversionSVNApache Subversion (often abbreviated SVN, after its command name svn) is a software versioning and revision control system. Software developers use Subversion to maintain current and historical versions of files such as source code, web pages, and documentation. Its goal is to be a mostly compatible successor to the widely used Concurrent Versions System (CVS). WordPress core and the wordpress.org released code are all centrally managed through SVN. https://subversion.apache.org/.? Or are there any plans to go full git?
A15. There are no plans to move toward git at this time. There are ongoing discussions on how to support more integrations with GitHubGitHubGitHub is a website that offers online implementation of git repositories that can easily be shared, copied and modified by other developers. Public repositories are free to host, private repositories require a paid subscription. GitHub introduced the concept of the ‘pull request’ where code changes done in branches by contributors can be reviewed and discussed before being merged be the repository owner. https://github.com/ or GitLab that you can learn more about here.
Q16. Years ago, it was much easier to grow a plugin for WordPress and make an impact. What can plugin devs do outside of Freemium/Premium/Paid Add-On models? Donors/sponsors are difficult to find
A16. Plugins are quite similar to consumer products, and finding the right product-market fit and building it to ensure the highest quality are key factors in terms of finding success for a plugin. Careful market landscape research and quality checks will help plugin devs evaluate whether their efforts find the right fit with users.
Q17. Will Canonical Plugins get a blue checkmark?
A17. There isn’t yet a specific plan for how canonical plugins will be displayed on the plugin directory, but this is a wonderful suggestion for Make Design.
Q18. Regarding backend UX/UI, can consideration be given to a standard way of grouping/organizing plugins in the menu? Multiple plugins that insert a link into the menu can make it cluttered.
A18. Though this part of very future forward work, this topic is currently being explored in this post under the section “Make it extensibleExtensibleThis is the ability to add additional functionality to the code. Plugins extend the WordPress core software..”
Q19. How is WordPress addressing the incessant notifications in the WP dashboard – will there be a Notifications ban in the dashboard and the set up of a Notifications Central point? If not, why not?
A19. The feature notifications project work is ongoing, and there is renewed interest in getting the MVPMinimum Viable Product"A minimum viable product (MVP) is a product with just enough features to satisfy early customers, and to provide feedback for future product development." - WikiPedia completed this year. Some new contributors have been joining the conversations, and anyone interested in this feature can join the #feature-notifications channel in the Make WordPress Slack.
Q20. The notification interface, is it also for promo and banners?
A20. As recommended in the Plugin Developer Guidelines, the WordPress notification interface is not intended to be used for advertisements or promotions.
Q21. How will Collaboration will be developed: as a Gutenberg plugin or WP Core integration? And when 6.2 or 6.4?
A21. Collaborative Workflows will be developed within the Gutenberg plugin. While it’s too soon to tell when and what collaboration tools will land in WordPress core, using the Gutenberg plugin allows for early access to all these features as soon as they are available
Q22. When was the last time someone actually used “Post via email” in the settings area?! (followed up with: more along the lines is why is it still in core? I get users totally confused by it all the time as they think it’s email settings, etc..)
A22. That is still in use! The feature was originally created as a parity tool for Posterous and has remained in Core. A helpful guide for support is located here.
Q23. What about the third-party Site Builders, are they a thing of the past?
A23. The Block Editor provides numerous APIs for third-party site builders, which they are encouraged to use to leverage the benefits of storing content in block format.
Q24. Will ActivityPub support be added to WordPress and will Mastodon publishing be added to Jetpack?
A24. Yes, the ActivityPub plugin is up for review as a canonical plugin later this year, and Mastodon publishing is also due to be added.
Q25. How does WP support the GDPR, privacy, e.g. relating to territorial disputes regarding privacy issues between the EU and the US and increased cyber threats?
A25. Many of these issues relate to how and where each individual site is operated, so it is difficult to find and apply a global solution in WordPress Core. Solutions are best found in the various plugins and integrations available.
Q26. Not sure if this is the right platform, but the removal of “Active Installs” raised a few questions. Maybe shed some light on the idea behind that.
A26. Others have raised this topic recently, which has been deeply discussed on this Trac ticket.
Q27. I’m wondering about the custom post types/custom fields.. are we going to see them baked in Core soon?
A27. These are currently supported in core programmatically, and there are currently no plans to expose a UI in the dashboard for the management/creation of these. There are existing plugins that fill this need if required.
Q28. Is there any plan or conversation about integrating Composer into WordPress for sites to manage their dependencies (plugins, themes, custom libraries, Core) via code?
A28. Within the WordPress community, composer holds different definitions for different groups. For example, there’s a non-WordPress.orgWordPress.orgThe community site where WordPress code is created and shared by the users. This is where you can download the source code for WordPress core, plugins and themes as well as the central location for community conversations and organization. https://wordpress.org/ packager that many WordPress-via-composers use, like https://wpackagist.org/. The work on the Plugin Dependency feature is ongoing too. Read more about the recent work on this Trac ticket or this call for testing plugin dependencies.
The WordPress project has made great strides this year thanks to its contributors. As WordPress enters an exciting new era of growth in 2023, it is time to examine how Five for the Future can best support the project and the people behind it.
This post shares research on the contributor journey for individuals and organizations committed to the Five for the Future initiative. Your feedback will be valuable in further refining the contribution experience for pledged contributors.
Self-sponsored Contributors and Pledging
At this time, individual self-sponsored contributors can edit their wordpress.orgWordPress.orgThe community site where WordPress code is created and shared by the users. This is where you can download the source code for WordPress core, plugins and themes as well as the central location for community conversations and organization. https://wordpress.org/ profiles to update and share the number of contribution hours per week towards their chosen contributor teams. However, after pledging contribution time towards their respective teams, the onus is on the contributors to follow up on their commitments. Below is a flowchart representing the current contributor journey for self-sponsored contributors in Five for the Future.
As depicted in the flowchart, many contributors pledging their time to Five for the Future tend to drop off. Based on conversations with contributors, I identified some reasons why this may be happening:
Self-sponsored contributors do not get any direction on navigating the project or identifying contributor teams.
There is no onboarding for self-sponsored contributors pledging their time to the Make/Teams of their choice.
Making the first contribution can require a lot of coaching and guidance, which is currently not available to self-sponsored contributors.
Pledged contributors frequently do not get any additional guidance or support on making ongoing contributions to the project.
There is a lack of clarity on what constitutes a Five for the Future contribution.
When a contributor making a recurring time commitment to a big project like WordPress lacks guidance on how they can honor their commitment, their contributions could stagnate. In other words, at this time, the journey of a pledged contributor is not very much different from a non-pledged contributor.
Companies and Pledging
Companies have a more nuanced relationship with Five for the Future. They are listed on the Five for the Future website with dedicated profiles, which include lists of the Make/Teams they contribute to, linked contributors, and the total number of hours pledged. However, like individual contributors, once a company commits time and resources to Five for the Future, they frequently also lack direction or guidance on contributing.
You will find below a flowchart representation of the current contributor journey for companies. As you can see below, in an ideal world, when a company pledges to Five for the Future, they should go on to make ongoing contributions to WordPress and build a mutually successful relationship. At this time, companies have to figure out the nuances of contributions themselves and put in extra effort to provide ongoing contributions to the project. If they are unable to get that support, their contributions could stagnate.
Companies and organizations that have grown alongside WordPress or that already have experienced contributors may be able to navigate through the process more efficiently. However, many companies in the program (especially newer companies) could have a tough time figuring out WordPress contributions. Some of the issues faced by Five for the Future companies include:
Lack of guidance on the next steps after pledging (Ex: How can a company start contributing to a Make/Team – example, Make/CoreCoreCore is the set of software required to run WordPress. The Core Development Team builds WordPress. or Make/AccessibilityAccessibilityAccessibility (commonly shortened to a11y) refers to the design of products, devices, services, or environments for people with disabilities. The concept of accessible design ensures both “direct access” (i.e. unassisted) and “indirect access” meaning compatibility with a person’s assistive technology (for example, computer screen readers). (https://en.wikipedia.org/wiki/Accessibility))
Missing direction for companies navigating their Five for the Future contributions (Ex: How does a company build a Five for the Future strategy? How do they effectively make contributions as a company? Are contributions aligned with company goals and WordPress project goals?)
Significantly less ongoing support for their contributor journey.
Little or no awareness of how companies can benefit from Five for the Future
These issues could potentially lead to some companies reducing the quantum of contributions or even dropping off the program.
How Can We Improve the Five for the Future Contributor Journey?
As @chanthaboune mentions in Episode 35 of the WordPress Podcast, Five for the Future intends to foster “generous collaboration toward the long term health and stability of our project for the future.” While the program has made great strides since its formal launch in 2019, starting the journey to the next iteration of Five for the Future will make that vision a reality. With improved onboarding and better cross-team communication between companies and contributors, that reality will also enjoy an unmatched contributor experience that benefits both the WordPress project and contributors alike.
What do you think about the existing contributor journey? What are our successes and pain points?
How can we improve the contributor journey for Five for the Future contributors and sponsoring companies?
What more can Five for the Future do to help its contributors?
How can Five for the Future contributors best support Make/WordPress Teams?
Please share with us in the comments on this post! Your feedback will go a long way in shaping the contributor experience of our favorite open sourceOpen SourceOpen Source denotes software for which the original source code is made freely available and may be redistributed and modified. Open Source **must be** delivered via a licensing model, see GPL. project.
Additionally, if you are an existing WordPress or Five for the Future contributor or work closely with Make/WordPress Team, @angelasjin and I would love to chat with you. Please express your interest in the comments of this post, pingPingThe act of sending a very small amount of data to an end point. Ping is used in computer science to illicit a response from a target server to test it’s connection. Ping is also a term used by Slack users to @ someone or send them a direct message (DM). Users might say something along the lines of “Ping me when the meeting starts.”@angelasjin or myself (@harishanker) in the Make/WordPress SlackSlackSlack is a Collaborative Group Chat Platform https://slack.com/. The WordPress community has its own Slack Channel at https://make.wordpress.org/chat/., or simply drop a mail to firstname.lastname@example.org so that we can schedule a conversation based on your availability.