Developer Blog editorial meeting summary, February 1, 2024

Summary of the WordPress Developer Blogblog (versus network, site) meeting, which took place in the  #core-dev-blog channel on the Make WordPress SlackSlack Slack is a Collaborative Group Chat Platform https://slack.com/. The WordPress community has its own Slack Channel at https://make.wordpress.org/chat/.. Start of the meeting in Slack.

Attendees: @marybaum, @milana_cap @greenshady, @oglekler, second half @webcommsat, @bph (as facilitator),

Last meeting notes: Developer Blog editorial meeting summary, January 4, 2024

Updates on the site

Categories

The categories were updated a bit.

  • Blocks Development renamed to Blocks
  •  Visual Design renamed to Design
  • Deleted “Learning” isn’t every article a learning experience?

Since the beginning in 2022, we keep categories very high level, and become more specific with Tags.

GitHubGitHub GitHub 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/ Action: label notifier

For the roundup posts, people can get notified when the next issue is available to share their team’s notes with the writer to be included in the next What’s new for developers post. If people want to get GitHub notification, please let me know and I’ll update the GitHub Notifier Action.

Author Profile links

With the redesign, author links now go to the WordPress.orgWordPress.org The 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. 

Newly published post since the last meeting:

Huge “Thank you” to the writers and reviewers for bringing fabulous content to WordPress!

Project Status

Issues Closed as not planned

Seven Posts in Progress:

Eight post on To Do column

The Todo-List is growing, and we need to increase efforts to get them published.

Topics still in need of a writer

If you are interested in taking on a topic from this list or know someone who would be a good person to writer about them, comment on the Issue or pingPing The 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.” @bph in slack either in the #core-dev-blog channel or in a DM.

Posts in need of reviews:

New Topics approved

Open Floor

@webcommsat brought to the meeting, the discussion from last night’s dev chat meeting about the Proposal to improve the FieldguideField guide The field guide is a type of blogpost published on Make/Core during the release candidate phase of the WordPress release cycle. The field guide generally lists all the dev notes published during the beta cycle. This guide is linked in the about page of the corresponding version of WordPress, in the release post and in the HelpHub version page. of the WordPress release, to see “what role the dev blog could possibly have in this as well as identifying what the blog already does and could do.

There is a wider discussion needed on communication and education of release features, but it would be good to start a more detailed discussion on potential and what is already aiding these areas within the dev blog. This can then feed into the wider considerations with other teams.”

Relevant links:

@webcommsat:
“The proposal now is not so much about a new version of a field guideField guide The field guide is a type of blogpost published on Make/Core during the release candidate phase of the WordPress release cycle. The field guide generally lists all the dev notes published during the beta cycle. This guide is linked in the about page of the corresponding version of WordPress, in the release post and in the HelpHub version page. appearing in dev blog, but looking at where and how we communicate and educate on a release, and what is needed. With the increased ability to segment to different audiences across the project, this could be a great opportunity. Hence, the wider input from marketing, docs, training, community, and the dev blog.

Being clear what happens in the dev blog already, giving tangible live examples to help those less familiar with the blog materials, and what could be potentially done would be a real cake yo the discussion.  With the segmentation, we have just in levels of developer knowledge, we can add a valuable insight too.”

@greenshady, @webcommsat also brought up concerns on ownership, availability of people during release time and bandwidth of contributors.

Next steps:
@webcommsat suggested: a mapping exercise would help, and happy to try to start one we can add to with ideas. We can then add links to examples of what we have already published.

Action: After WordCampWordCamp WordCamps 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. Asia, schedule a Hallway Hangout with contributors from the editorial group and other teams to kick off work on a basic content map for a release and pluginPlugin A 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 existing efforts and identify gaps.

Next meeting: March 7, 2024, at 13:00 UTC in the #core-dev-blog channel

Props to@marybaum and @greenshady for review.

#meeting, #summary

Dev Chat Summary, January 31, 2024

Start of meeting on Slack

This Dev Chat continues the experiment to focus chat time on discussions related to open CoreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. proposals and release issues, rather than repeating links already highlighted in the curated agendas.

Announcements

Following announcement of yesterday’s 6.4.3 release, @jorbin noted that there was one issue of note, but that there were workarounds available at this time. @jorbin further gave props to those who helped facilitate the release.

@hellofromtonya shared that @joemcgill has accepted his nomination to serve as a 2024 Core team rep 🎉. The search continues for a co-rep, where it’s been noted that a contributor from the Core Editor team would be a great compliment, though not required. Nominations remain open until April 1, 00:00 UTC.

Discussion on open proposals in Core

Field GuideField guide The field guide is a type of blogpost published on Make/Core during the release candidate phase of the WordPress release cycle. The field guide generally lists all the dev notes published during the beta cycle. This guide is linked in the about page of the corresponding version of WordPress, in the release post and in the HelpHub version page. Publish Date

Link to post: Proposal: An update to the Field Guide

Conversation start link

Comments:

  • @jorbin was under the impression that neither the dev blogblog (versus network, site) team nor 6.4 release leads were interested in moving forward with the proposal. @webcommsat shared that 6.4 docs release leads didn’t see 6.4 as the deadline, and discussions were continuing. @joemcgill agreed that the proposal wasn’t release specific, but rather an adjustment to timing of when field guide information is released. @hellofromtonya also added that the dev blog team has opened a discussion to track the second part of the proposal.
  • @jeffpaul referred to @chanthaboune‘s comment of where best to separate field guide content based on audiences, suggesting the proposal could be adjusted accordingly. @jeffpaul added that some folks have difficulty processing field guide information to determine what is relevant and actionable, which @hellofromtonya agreed should be explored. @webcommsat agreed with the notion to target field guide content to particular audiences, but also to look at how it relates to other new content produced for the release.
  • @jeffpaul suggested the potential to target content according to the five user groups identified in Care and influence: a theory about the WordPress community.
  • @ironprogrammer asked if the field guide info would be more easily consumable if it was split into a canonical structure, such as wordpress.org/6-5/field-guide/, with subpages that match particular areas or audiences.
  • @webcommsat noted that segmentation between audiences has grown, and suggested it’s a good time to use teams’ audience-specific insights to improve the field guide format. She added that exploring how best to utilize the limited people and time for the Docs team would be an important factor in implementing improvements. @jeffpaul agreed with concerns around challenges in gathering/publishing content, but noted that the issue should be considered as separate from the proposal.
  • @jorbin shared that the original published field guide was the result of an overly long email sent to pluginPlugin A 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 developers.
  • First-time Docs Co-Lead @estelaris 🎉 asked about adding additional comments to the proposal. @jorbin noted that Make/Core comments close automatically after 180 days (~6 months). @costdev shared that adding the #keep-comments-open tagtag A directory in Subversion. WordPress uses tags to store a single snapshot of a version (3.6, 3.6.1, etc.), the common convention of tags in version control systems. (Not to be confused with post tags.) would reenable them, but recommended removing the tag once an updated timeframe for feedback has been reached. @jorbin updated the Core handbook to reflect this info.
  • @joemcgill pointed out that the team should review all current channels where field guide-related content is published, to check whether only updating the field guide [in one place] would sufficiently improve the broader sharing of release updates to the community. He suggested engaging with the Docs and Marketing teams to move forward, and @estelaris noted she would begin by sharing with Docs. @webcommsat suggested looping in Training as well. @laurlittle noted that the Marketing team could brainstorm on the proposal for future releases, if not 6.5.
  • In response to @joemcgill, @webcommsat noted that there have been past lists of channels and audiences, and suspects more current info should be available. She also suggested it might be helpful to have a single post that links out to the various user groups identified earlier, and to link to that post from the About page.
  • @jorbin referred back to @jeffpaul‘s input and asserted that the dev blog and other team areas might be better places to communicate field guide information, as opposed to Make/Core. @hellofromtonya asked if, considering this perspective, the proposal was actionable by the Core team, or if the proposal should be re-worked as a cross-team collaboration. @jorbin suggested that the teams publishing the field guide info would take on the proposal.
  • @joemcgill noted that it can be difficult to know the status of a proposal, suggesting some way of flagging these posts. @marybaum suggested a visual system to convey “stalled”, “live”, etc, and @joemcgill raised the idea of a blockBlock Block 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. pattern. @desrosj shared that in past proposals (example) he has added status info to the top of the post, assuming the status was clear.
  • @hellofromtonya wrapped up the discussion based on the chat, concluding that the proposal be marked closed (“not accepted”), or must be picked up by another team(s).

Actions:

  • Part 1: Move Make/Core field guide publication ahead one week, aligning with last scheduled betaBeta A pre-release of software that is given out to a large group of users to trial under real conditions. Beta versions have gone through alpha testing in-house and are generally fairly close in look, feel and function to the final product; however, design changes often occur as part of the process., rather than RC1. Not accepted ❌
  • Part 2: Start publishing a simplified field guide to the WordPress Developer Blog. Not accepted ❌
  • Other teams to explore revising and adopting this proposal:
    • @estelaris to share the proposal with Docs.
    • @laurlittle to raise the proposal to Marketing for possible brainstorm.
    • @webcommsat to loopLoop The Loop is PHP code used by WordPress to display posts. Using The Loop, WordPress processes each post to be displayed on the current page, and formats it according to how it matches specified criteria within The Loop tags. Any HTML or PHP code in the Loop will be processed on each post. https://codex.wordpress.org/The_Loop. in Training to gauge their interest in furthering the proposal.
    • To highlight in dev blog.

Open Floor

Props @hellofromtonya for peer review.

#6-4, #6-5, #core, #core-editor, #dev-chat, #meeting, #summary

Performance Chat Summary: 30 January 2024

Meeting agenda here and the full chat log is available beginning here on Slack.

Announcements

Priority Projects

Server Response Time

Notes from today’s meeting:

Database Optimization

Notes from today’s meeting:

  • @pbearne started the dev notesdev note Each important change in WordPress Core is documented in a developers note, (usually called dev note). Good dev notes generally include a description of the change, the decision that led to this change, and a description of how developers are supposed to work with that change. Dev notes are published on Make/Core blog during the beta phase of WordPress release cycle. Publishing dev notes is particularly important when plugin/theme authors and WordPress developers need to be aware of those changes.In general, all dev notes are compiled into a Field Guide at the beginning of the release candidate phase. to try and focus the changes for optimized autoloaded PR https://github.com/WordPress/wordpress-develop/pull/5671
  • @thekt12 I’ll be picking up – https://github.com/WordPress/wordpress-develop/pull/5295/files early next week, need to address some review changes

JavaScriptJavaScript JavaScript or JS is an object-oriented computer programming language commonly used to create interactive effects within web browsers. WordPress makes extensive use of JS for a better user experience. While PHP is executed on the server, JS executes within a user’s browser. https://www.javascript.com/. & CSSCSS Cascading Style Sheets.

Notes from today’s meeting:

  • @thelovekesh I have continue the work on https://github.com/WordPress/performance/pull/556 and addressed most of the feedback
  • @westonruter Regarding Interactivity API, I shared this a few days in brief, but excited to share a preemptive INP win for WordPress 6.5: I found an issue where there was a long task occurring during page load (or whenever interactive blocks are hydrated), especially when there is not a trivial number of interactive blocks on the page (e.g. 20). (Recall that any image blockBlock Block 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. with lightbox behavior is an interactive block now.) When profiling with 6x CPU throttling the hydration was causing a 300+ ms long task. I opened a pull request to fix this by yielding to the main thread between hydration of each interactive block. It should be included in WP 6.5 with the initial public availability of the Interactivity API.
    • I have another pull request open which will defer hydration of interactive blocks until the node nears the viewport. This will require more iteration with the GutenbergGutenberg The 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/ team and won’t be part of WP 6.5, but it’s another promising performance improvement.
    • This one still needs another review: https://github.com/WordPress/performance/pull/952

Images

Notes from today’s meeting:

  • @westonruter For Image Loading Optimization, @thelovekesh has been working on getting a Webpack build process in place to ensure there is a local copy of web-vitals.js. It is now merged. This is related to his work on Partytown
  • @westonruter Regarding sizes, I was doing some research yesterday on how well (or not) the sizes attribute is used in WordPress… The Web Almanac has a section on sizes from 2022 that shows it is a problem, but doesn’t single out WordPress specifically. I re-ran the query for determining problematic usage with sizes limited to WordPress, and compared December 2022 with December 2023, and the problem is getting worse. I’m hoping to share more specific numbers this week.
  • @adamsilverstein AVIF ticketticket Created for both bug reports and feature development on the bug tracker. if anyone wants to test or review the PR – https://core.trac.wordpress.org/ticket/51228 with AVIF support now in Edge stable, I marked this for commit

Measurement

Notes from today’s meeting:

  • @swissspidy Regarding stabilization it’s good to see that the screenshot above relating to Performant Translations merge proves that our current setup is stable enough to see these drops

Ecosystem Tools

  • Link to roadmap projects and link to the GitHub repo for PluginPlugin A 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 Checker
  • Contributors: @mukesh27 @swissspidy
  • Projects from the 2024 roadmap:
    • Creating standalone plugins milestone 2
    • Plugin checker
    • Reusable testing environment

Notes from today’s meeting:

Open Floor

  • @pbearne would like to invite you all to WordCampWordCamp WordCamps 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. Canada July 11-13, 2024 https://canada.wordcamp.org/2024

Our next chat will be held on Tuesday, February 6, 2024 at 16:00 UTC in the #core-performance channel in Slack.

#core-performance, #performance, #performance-chat, #summary

Dev Chat Summary, January 24, 2024

Start of meeting on Slack facilitated by @webcommsat

This DevChat starts with an experiment to shift the chat to synchronize discussions on open coreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. proposals and release issues rather than reproducing links highlighted in the curated agendas.

Discussion on open proposals in Core

Interactivity APIAPI An 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.

Link to post: Proposal: The Interactivity API – A better developer experience in building interactive blocks

Conversation start link

Comments:

  • The API is well beyond the proposal stage, with nothing actionable in discussion.

Actions:

  • The proposal should be considered “accepted”.

HTMLHTML HyperText Markup Language. The semantic scripting language primarily used for outputting content in web browsers. API: Introduce WP_HTML::tag() for safely creating HTML

Link to PR (draft): https://github.com/WordPress/wordpress-develop/pull/5884

Conversation start link

Comments:

  • This PR was raised along with the question of how items should be added to the agenda. It was clarified that topics can be added as comments to the previous week’s chat summary, or to the current week’s agenda post (typically published on Tuesdays). And of course, any item can be raised during the open floor section of Dev Chat.
  • @dmsnell indicated that the PR for consideration is a scaled back version of a larger templating system proposal, which will not be ready for 6.5. The PR adds a helper utility, WP_HTML::tag(), to conveniently generate single HTML tags with attributes. The impetus for this feature is to provide Core and extenders a safer way to generate HTML tags, compared with reliance on proper usage of functions such as esc_attr(), which might be overlooked and introduce HTML injection vectors.
  • @jorbin would prefer that any new APIs be used by Core itself, and that there be accessory patches prepared that demonstrate how the function integrates and operates in Core. It was also suggested that a Make/Core proposal would help with gathering broader input.
  • @azaozz pointed out that enhancementenhancement Enhancements are simple improvements to WordPress, such as the addition of a hook, a new feature, or an improvement to an existing feature. tickets in TracTrac An open source project by Edgewall Software that serves as a bug tracker and project management tool for WordPress. are another form of “proposal”, and can also result in healthy discussion. He suggested starting the discussion in Trac, and then utilizing a Make/Core proposal if the ticketticket Created for both bug reports and feature development on the bug tracker. isn’t sufficient to establish consensus.
  • There continued discussion around how Core generates HTML currently, which relies on proper use of esc_*() and echo(), as well as a broader discussion around safely generating HTML. Got feedback? Join the conversation in SlackSlack Slack is a Collaborative Group Chat Platform https://slack.com/. The WordPress community has its own Slack Channel at https://make.wordpress.org/chat/., or leave a comment below.

Actions:

  • @dmsnell to create a Trac ticket and/or Make/Core proposal to discuss introduction of WP_HTML::tag().
  • @dmsnell to consider a future Make/Core proposal for the HTML API templating system, and continued discussion around generating safe HTML.

Forthcoming releases

6.4.3

Conversation start link

  • @jorbin shared the remaining open tickets for this milestone, which are scheduled for review and commit prior to a Thursday (Jan 25) RCrelease candidate One of the final stages in the version release cycle, this version signals the potential to be a final release to the public. Also see alpha (beta).:
    • #60025 – This needs additional review and testing. Any help is appreciated
    • #59866 – @peterwilsoncc and I have been work on the one and I should have an update in the next 12 hours.
  • @joemcgill requested help reviewing the approach proposed in #5926 Cache locate template paths, which would address both #60025 and #60290.

6.5

Conversation start link

See this section in the agenda for updates, helpful links, and information for the 6.5 release.

Comments:

  • @oglekler pointed out that there are several early 6.5 tickets that need attention, asking for review as some might have the potential to be completed in time for BetaBeta A pre-release of software that is given out to a large group of users to trial under real conditions. Beta versions have gone through alpha testing in-house and are generally fairly close in look, feel and function to the final product; however, design changes often occur as part of the process..
  • @hellofromtonya indicated that the 6.5 cycle is past the “early part of alpha”, suggesting these may need to be punted if they truly require a long runway for soak time and discussion.
  • @azaozz agreed that the early keyword indicates a need for comprehensive testing, and possible reconsideration of the milestone if the testing hasn’t occurred. He also suggested that while not required, it might be preferable to fix old/known bugs during alpha, and allow beta testers to focus on “new” bugs introduced from Beta 1 and onward.
  • @jorbin suggested two interpretations of early; i.e. actually early in the alpha cycle, or just before Beta 1.
  • @hellofromtonya noted that since Beta 1 is the puntpunt Contributors sometimes use the verb "punt" when talking about a ticket. This means it is being pushed out to a future release. This typically occurs for lower priority tickets near the end of the release cycle that don't "make the cut." In this is colloquial usage of the word, it means to delay or equivocate. (It also describes a play in American football where a team essentially passes up on an opportunity, hoping to put themselves in a better position later to try again.) milestone for enhancements/features, that in her perspective, early should apply to early in the alpha cycle. She cited changes to WP_Query as an example where early would apply.
  • @afragen observed that it doesn’t seem that many early tickets are committed early in the cycle.

Open Floor

Props @hellofromTonya for peer review.

#6-4, #6-5, #core, #core-editor, #dev-chat, #meeting, #summary

Performance Chat Summary: 23 January 2024

Meeting agenda here and the full chat log is available beginning here on Slack.

Announcements

Priority Projects

Server Response Time

Notes from today’s call:

Database Optimization

Notes from today’s call:

JavaScriptJavaScript JavaScript or JS is an object-oriented computer programming language commonly used to create interactive effects within web browsers. WordPress makes extensive use of JS for a better user experience. While PHP is executed on the server, JS executes within a user’s browser. https://www.javascript.com/. & CSSCSS Cascading Style Sheets.

  • Link to roadmap project and link to the GitHub project board
  • Contributors: @mukesh27 @flixos90 @westonruter
  • Projects from the 2024 roadmap:
    • INP opportunities research
    • Interactivity APIAPI An 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.
    • Speculative prerendering

Notes from today’s call:

  • No updates this week

Images

Notes from today’s call:

  • @westonruter For Image Loading Optimization, the PR to preload the background-image for the LCP element just needs one more review to merge. Again, I found this change to reduce LCP-TTFB by ~9% when, for example, the LCP elemment is a Group blockBlock Block 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. with a background image or a Cover block with parallax. Otherwise, I’ve been working with @thelovekesh on eliminating loading the web-vitals library from unpkg.
  • @adamsilverstein The PR to land AVIF is ready for testing; at this point I am waiting for support to land in Edge stable before committing, not sure that will in time for betaBeta A pre-release of software that is given out to a large group of users to trial under real conditions. Beta versions have gone through alpha testing in-house and are generally fairly close in look, feel and function to the final product; however, design changes often occur as part of the process. cutoff though
  • @swissspidy For client side image compression I’m currently working on ways to make the performance impact more measurable and documenting that. In the meantime, my Media Experiments pluginPlugin A 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 can now be tested on WordPress Playground to familiarize oneself with how seamless it all is.
  • @joemcgill As mentioned earlier, the experimental plugin for supporting auto-sizes is now available. I’m tracking an issue that is effecting WP galleries when this is in use. Additional testing and feedback of this feature (requires Chrome 121+) would be appreciated.

Measurement

Notes from today’s call:

  • @joemcgill Still need to look into the failures on the 6.4 branchbranch A directory in Subversion. WordPress uses branches to store the latest development code for each major release (3.9, 4.0, etc.). Branches are then updated with code for any minor releases of that branch. Sometimes, a major version of WordPress and its minor versions are collectively referred to as a "branch", such as "the 4.0 branch". #60127

Ecosystem Tools

Notes from today’s call:

Open Floor

  • No updates today

Our next chat will be held on Tuesday, January 30, 2024 at 16:00 UTC in the #core-performance channel in Slack.

#core-performance, #performance, #performance-chat, #summary

Dev Chat summary, January 17, 2024

Start of meeting on Slack

This DevChat starts with an experiment to shift the chat to synchronize discussions and away from dropping of links.

Discussion on open proposals in coreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress.

Default Theme Task Force for 2024

Link to the post: Proposal: Default Theme Task Force for 2024

Dev Chat slack link

Comments in Dev Chat focused:

  • positive feedback and highlighting that people can self-nominate their ability to help triagetriage The act of evaluating and sorting bug reports, in order to decide priority, severity, and other factors. those open default theme issues
  • promote the call to encourage people to be active in triaging and resolving those 436 Bundled Theme tickets

Latest position from @desrosj :

  • advised the idea has been accepted: t’s rallying a group of folks to get through and clean out the Bundled Theme component backlog on TracTrac An open source project by Edgewall Software that serves as a bug tracker and project management tool for WordPress.
  • three self nominations and more expected to be confirmed by end of the week
  • aim to start before the end of January 2024, currently 437 tickets in the Bundled Theme component
  • Jonathan will be leading the team as a mentor and someone with commit privileges, and other committers are welcome to help as well)
  • the week to week working arrangement will be depends on the team’s availability. Stay tuned! 
  • confirmed the new theme task force group will remain under core team purview. More detail on this in the comments section of the post. More contributors for the Themes team welcome to help out too. “It’s a balance though, My goal here was to allow those contributors to continue exploring what new themes look like while this team handles cleaning up some of our cruft and backlog for pre-existing ones.”
  • expecting ‘as a side effect, cleaning out the backlog also will effectively “retire” these themes in some ways, and going forward, the majority of the tickets will be blockBlock Block 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 support related (hopefully).’ 

Actions:

  • more volunteers needed and will increase the speed can go through the outstanding tickets in the component
  • to assist, contact @desrosj on SlackSlack Slack is a Collaborative Group Chat Platform https://slack.com/. The WordPress community has its own Slack Channel at https://make.wordpress.org/chat/. on in the comments for the post itself

Proposal to improve the editor tech workflow for major releases

Post link: Proposal

Dev Chat Slack link

Context: This proposal was started in 6.4. With 6.5 underway, thinking the learnings from 6.4 could be built upon for how to continue improving the Core merges from GutenbergGutenberg The 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/ during 6.5. Core Editor and Core chats are now combined into Dev Chat as an experiment.

Discussion:

  • @joemcgill raised the question of the right venue to push this forward. “In my opinion, the current status quo is error prone and unsustainable (as well as taking a lot of manual overhead from contributors).”
  • @jorbin: If we want to try early syncing for 6.4.3, https://core.trac.wordpress.org/ticket/59828 just needs a second committers review and we can get all the updates into the 6.4.x nightly
  • @hellofromtonya: I’m not sure either what the “right venue for pushing this forward” is. Needs a discussion with both Core and Core Editor folks to figure out the needs and how to improve these workflows. Seems earlier the better as BetaBeta A pre-release of software that is given out to a large group of users to trial under real conditions. Beta versions have gone through alpha testing in-house and are generally fairly close in look, feel and function to the final product; however, design changes often occur as part of the process. 1 is fast approaching
  • @jorbin suggested one way to mitigate the issue would be nominating the release team, or at least the editor tech, for the next release before the current release ships. An interim editor tech to help get the ball rolling while an official team has not been announced. @joemcgill agreed having an identified set of release leads for 6.5 to discuss how they want to handle things for this release would help. The Community Summit conversation was very helpful. A working group to continue that conversation and come back with concrete proposals would be helpful, if a release team is not the right venue. A working group had positive feedback in the dev chat discussions as these workflows are continuously improving and span more than one major releasemajor release A release, identified by the first two numbers (3.6), which is the focus of a full release cycle and feature development. WordPress uses decimaling count for major release versions, so 2.8, 2.9, 3.0, and 3.1 are sequential and comparable in scope.. @jorbin suggested @tellthemachines should be given right of first refusal to continue leading the effort since she kicked off the proposal.
  • Ideas included: a proposal needed to address the identified set of problems, a hallway hangout similar to the ones @annezazu and others have done.

Actions:

Forthcoming releases

6.5

Slack discussion link

See this section in the agenda for updates, helpful links, and information for the 6.5 release.

Blockages/ items need discussion for progress:

  • Font Library:
    • Discussion:
      • As a follow-up from @joemcgill‘s questions last week, @hellofromtonya has added the Core merge criteria/expectations to its Trac ticketticket Created for both bug reports and feature development on the bug tracker.. The critieria is the same as in 6.4, except Tonya is suggesting returning to the expectation the feature is merged before or by Beta 1.
      • Query raised on the criteria aspect of “running on wp.com, and not being reliant on any specific host testing this. @hellofromtonya: The reason for wp.com is: it’s a normal workflow in Gutenberg as it gains a huge amount of sites running it. @jorbin
      • @annezazu suggested some of the contributors who have worked on this feature could comment. Also noted current timeline for the feature https://core.trac.wordpress.org/ticket/59166#comment:21
      • Question: Is this anything beyond what we’d normally expect of a feature pluginFeature Plugin A plugin that was created with the intention of eventually being proposed for inclusion in WordPress Core. See Features as Plugins.? @hellofromtonya: Same expectations except for REST APIREST API The REST API is an acronym for the RESTful Application Program Interface (API) that uses HTTP requests to GET, PUT, POST and DELETE data. It is how the front end of an application (think “phone app” or “website”) can communicate with the data store (think “database” or “file system”) https://developer.wordpress.org/rest-api/. part of it , as I’m suggesting a maintainer needs to give a thumbs-up to its design.
      • jorbim: I don’t want to discourage that in any way, I just wonder if we would ever set a requirement like “Is running on Altis with no major issues”
    • Actions:
      • Update the criteria from the discussion. Done ✅
      • Gather expectations from the REST API maintainers and then update the criteria accordingly. Done ✅

How was the first experimental new DevChat?

@jorbin said: “I think one of the most productive meetings in a while”

@afragen shared there was no extra time to raise other tickets for discussion.

What to change?

Next week, reserve 10-15 minutes for open forum / floor discussion.

Props @hellofromTonya for peer review.

#6-4, #6-5, #core, #core-editor, #dev-chat, #meeting, #summary

Dev Chat Summary, January 10, 2024

The WordPress Developers Chat meeting took place on  10 January 2024 at 20:00 UTC  in core on Make WordPress Slack.

Key info

Chat Summary

Nominations for 2024 Core Team Reps:

@desrosj reminded Gutenberg and Core development contributors to update their local Node.js/npm as:

.. the versions of Node.js and npm required for WordPress CoreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. development are now 20.x and 10.x.

In order to continue contributing to WordPress through wordpress-develop or WordPress/Gutenberg, you’ll need to upgrade the version of Node.js installed on your machine to one that’s greater than or equal to 20.10.0 (currently the most recent generally available version 20.x version). This should also update npm to the correct, expected version appropriately (10.2.3 or higher is required).

Release Updates

Next minor releaseMinor Release A set of releases or versions having the same minor version number may be collectively referred to as .x , for example version 5.2.x to refer to versions 5.2, 5.2.1, 5.2.3, and all other versions in the 5.2 (five dot two) branch of that software. Minor Releases often make improvements to existing features and functionality.: 6.4.3

@jorbin shared an update:

  • Timeline coming before next devchat.
  • No pressing issues – okay to wait “a few weeks for the next minor.”
  • Reminder to “milestone any tickets” needing addressing.

Next major releasemajor release A release, identified by the first two numbers (3.6), which is the focus of a full release cycle and feature development. WordPress uses decimaling count for major release versions, so 2.8, 2.9, 3.0, and 3.1 are sequential and comparable in scope.: 6.5

  • Release squad: call to join the squad ended Jan 12th.
  • Current: in Alpha.
  • Next milestone: BetaBeta A pre-release of software that is given out to a large group of users to trial under real conditions. Beta versions have gone through alpha testing in-house and are generally fairly close in look, feel and function to the final product; however, design changes often occur as part of the process. 1 is Feb 13th.

Tickets / Issues that need assistance

  • #60227 @jonsurrell asked for feedback to use an external library for testing the HTMLHTML HyperText Markup Language. The semantic scripting language primarily used for outputting content in web browsers. APIAPI An 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..
  • #60025 @jorbin requested help (it’s in the 6.4.3 milestone) and noted:

Joe did a great job of summerizing and shared some paths forward that I think could be good to explore

Open Floor

Discussion of changing DevChat

@jorbin opened the discussion for changing DevChat, i.e. to get to the important things to chat about (rather than half or more of the meeting dropping links):

As we are now 43 minutes into the meeting and it’s been almost all link sharing thus far, I wonder if perhaps 2024 should be the year we explore some alternatives for this meeting? I’m not sure that a link dump is doing it

The discussion summary:

socializing to folks leading/working on feature projects or specific items targeted in a current major release that devchat is a good place to come and share blocks/problems/areas for feedback they have.  Chatting through those things synchronously can help find alternate paths forward for those things that are of importance to the project.

advance those conversations towards an acceptance or finding iterative ways to improve those proposals.

When to start? Experiment starts next meeting.

Call for Volunteers to review the open proposals on Make/Core and create a list of unresolved ones to discuss during the DevChat meeting.

Font Library – avoid merge roadblocks

@joemcgill asked for Font Library update and plan to avoid the roadblocks experienced during 6.4. See the discussion in the Slack thread which includes Core merge criteria.

Next Meeting

The next meeting will be on 17 January 2024 at 20:00 UTC . This DevChat will experiment with a new approach

Are you interested in helping draft DevChat summaries? Volunteer at the next meeting!

Props @webcommsat for peer review.

#6-4, #6-5, #core, #core-editor, #dev-chat, #meeting, #summary

Performance Chat Summary: 16 January 2024

Meeting agenda here and the full chat log is available beginning here on Slack.

Announcements

  • Welcome to our new members of #core-performance
  • Performance Lab pluginPlugin A 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 release today for version 2.8.0

Priority Projects

Server Response Time

Notes from today’s call:

  • @thekt12 I was exploring use of transient for sites that don’t have persistent cache.
    https://core.trac.wordpress.org/ticket/60120#comment:8
    However I have paused the above for a while and started with #59532 as this is a bit similar to https://github.com/WordPress/wordpress-develop/pull/5718.
    Also, https://github.com/WordPress/wordpress-develop/pull/5718 is ready for mostly final review
  • @joemcgill #59969 seems to be very close on the CoreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. side, just needing a couple of changes to the PR. Can we get that sorted soon @thekt12 or are you waiting on some additional feedback?
    • I think that blocks the supporting work you’ve started in the GB repo at present
    • @flixos90 Yeah it’s tricky and somewhat clunky to figure out the sequencing there
    • @flixos90 If the core change needs to come first, let’s commit that very soon and then update  and merge the GutenbergGutenberg The 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/ change and aim for a back port not too far away
    • I reviewed @swissspidy‘s performant translations PR yesterday, and it looks great to me. It would be great if a few more folks here could take a look too since it’s a big change
  • @swissspidy The performant translations PR is close to be mergeable, it‘s in very good shape already
  • @joemcgill Also, for #60120, @spacedmonkey are you planning on continuing the PR you started, or is your intent for someone else to pick up that work? Either is fine, just wasn’t sure
    • Almost ready for commit

Database Optimization

Notes from today’s call:

JavaScriptJavaScript JavaScript or JS is an object-oriented computer programming language commonly used to create interactive effects within web browsers. WordPress makes extensive use of JS for a better user experience. While PHP is executed on the server, JS executes within a user’s browser. https://www.javascript.com/. & CSSCSS Cascading Style Sheets.

  • Link to roadmap project and link to the GitHub project board
  • Contributors: @mukesh27 @flixos90 @westonruter
  • Projects from the 2024 roadmap:
    • INP opportunities research
    • Interactivity APIAPI An 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.
    • Speculative prerendering

Notes from today’s call:

  • @flixos90 I opened pull requests for most of the remaining work for the first Speculation Rules plugin 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 yesterday, see https://github.com/WordPress/performance/issues/908 (everything linked from there)

Images

Notes from today’s call:

  • @joemcgill I submitted the plugin for auto-sizes last week and already heard back on some feedback to address. I’ll get that sorted and hopefully will be available soon. In the mean time, it’s ready to be merged to the Performance Lab after 2.8.0 is released later today.
  • @flixos90 I plan to commit the PR for https://core.trac.wordpress.org/ticket/59352 shortly
  • @westonruter For Image Loading Optimization, the tests PR has been merged. I have the pull request for optimizing the loading of background images ready for review. In some quick testing I found this to reduce LCP-TTFB by ~9% when a Cover blockBlock Block 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. has parallax and is the LCP element: https://github.com/WordPress/performance/pull/914
  • @swissspidy Regarding client-side image compression a new blogblog (versus network, site) post just got published about it: https://www.codeinwp.com/blog/pascal-birchler-interview-wordpress-media-experiements/

Measurement

Notes from today’s call:

  • @joemcgill The main thing that is on my mind is that we need to fix the performance tests that are failing in the 6.4 branchbranch A directory in Subversion. WordPress uses branches to store the latest development code for each major release (3.9, 4.0, etc.). Branches are then updated with code for any minor releases of that branch. Sometimes, a major version of WordPress and its minor versions are collectively referred to as a "branch", such as "the 4.0 branch". #60127. This would be good to get fixed before the next minor releaseMinor Release A set of releases or versions having the same minor version number may be collectively referred to as .x , for example version 5.2.x to refer to versions 5.2, 5.2.1, 5.2.3, and all other versions in the 5.2 (five dot two) branch of that software. Minor Releases often make improvements to existing features and functionality., which is being organized for the next few weeks

Ecosystem Tools

Notes from today’s call:

Open Floor

  • @pbearne I am thinking of tackling Improving the calculation of image sizes attributes#760 but would like a quick chat/call to agree on the approach before I start. Could we plan that?
    • @joemcgill I’ve got an ongoing project internally where I’ve been working on that, @pbearne. Probably best to wait on more definition before diving into anything.
    • @joemcgill Would be happy to have you collaborate though. I most likely won’t have anything ready to share this week though
  • @flixos90 Just a reminder that the Performance Lab 2.8.0 release party will be in a good 1 hour from now, at 18:00 UTC. Please stop by and help out if you’re available!

Our next chat will be held on Tuesday, January 23, 2024 at 16:00 UTC in the #core-performance channel in Slack.

#core-performance, #performance, #performance-chat, #summary

Performance Chat Summary: 9 January 2024

Meeting agenda here and the full chat log is available beginning here on Slack.

Announcements

  • Welcome to our new members of #core-performance
  • Request for reviewers of the draft 2024 Performance Roadmap document please
    • @clarkeemily We are aiming to receive feedback on the above document by the end of this week please – we would greatly appreciate everyone’s feedback and input into shaping 2024
    • You will notice in this document that the Priority Projects have changed shape to being:
      • WordPress interactivity performance
      • WordPress load time performance
      • Ecosystem activation
      • Performance measurement
    • I’d be interested in opinions as to whether we structure the sections of this meeting aligned to those projects from next week onwards?

Priority Projects

Server Response Time

Link to roadmap projects and link to the GitHub project board

Contributors: @joemcgill @swissspidy @thekt12 @mukesh27 @pereirinha

  • @swissspidy For performance translations I just pinged some folks for code review again now that the holiday break is over
  • @pbearne can add an issue to create PHPPHP The web scripting language in which WordPress is primarily architected. WordPress requires PHP 5.6.20 or higher-based translationtranslation The process (or result) of changing text, words, and display formatting to support another language. Also see localization, internationalization. files in the build tools?
  • @thekt12 Working on final bits of #59969 PR#5718 addressing review changes, unit testunit test Code written to test a small piece of code or functionality within a larger application. Everything from themes to WordPress core have a series of unit tests. Also see regression. and updating corresponding Guttenberg PR.
  • @thekt12 Also, started working on #60120 I’ll give it for first review this week
  • @joemcgill At the end of this meeting last week, @flixos90 @spacedmonkey and I had a useful conversation about improving our caching strategy for blockBlock Block 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. theme files (#59719), which has unblocked #60120. Jonny already created a PR for that issue which is ready for review.
  • @joemcgill @pereirinha also updated the PR for #59595, and I left some feedback yesterday. I think this is close save for a few details.

Database Optimization

Link to roadmap projects and link to the GitHub project board

Contributors: @mukesh27 @thekt12

  • @pbearne I updated the options autoload patchpatch A special text file that describes changes to code, by identifying the files and lines which are added, removed, and altered. It may also be referred to as a diff. A patch can be applied to a codebase for testing. follow the term changes

JavaScriptJavaScript JavaScript or JS is an object-oriented computer programming language commonly used to create interactive effects within web browsers. WordPress makes extensive use of JS for a better user experience. While PHP is executed on the server, JS executes within a user’s browser. https://www.javascript.com/. & CSSCSS Cascading Style Sheets.

Link to roadmap project and link to the GitHub project board

Contributors: @mukesh27 @flixos90 @westonruter

  • No updates this week

Images

Link to roadmap projects and link to the GitHub project board

Contributors: @flixos90 @adamsilverstein @joemcgill @pereirinha @westonruter

  • @adamsilverstein I have an update on AVIF image support – Microsoft has added support for AVIF in Edge, since version 1.121, (release data Jan 7, 2024) – see https://learn.microsoft.com/en-us/deployedge/microsoft-edge-relnote-beta-channel#feature-update
    • I also confirmed this manually be opening test AVIF images in Edge (Canary) and everything worked as expected.
    • Assuming this lands in stable, we should be able to add support for AVIF to coreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress., see #51228
    • @mukesh27 Like WebP do we needs to make a module first for testing then merge into core?
    • @flixos90 I think to merely add support for the format, we could work directly against core. That was done the same way with WebP. Only if we wanted to make it a default or something, we’d need a module IMO. Although at some point we may just ditch WebP and try to progress with AVIF only, depending on browser support
    • @adamsilverstein Support can already be tested with https://github.com/WordPress/wordpress-develop/pull/4612, note you need a server that supports AVIF for it to work, typically PHP 8.1+ or Imagick built with AVIF support
    • @flixos90 mentioned @swissspidy your client-side image efforts would be super useful for this too, as it would unlock AVIF support for a lot more sites
  • @joemcgill An initial module for implementing auto-sizes for lazy-loaded images is ready in the Performance Lab pluginPlugin A 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. This web feature is already in Chrome Betas, and will likely roll out in the next few weeks, so I’d like to get this out for people to start testing. See: https://github.com/WordPress/performance/pull/904
  • @swissspidy For client-side image compression aka media experiments I’m working on a PRD and trying things out in my media experiments plugin

Measurement

Link to roadmap projects and link to the GitHub project board

Contributors: @adamsilverstein @joemcgill @mukesh27 @swissspidy @flixos90

  • @joemcgill Nothing new this week, but wanted to flag that the Performance Tests started failing in the 6.4 branchbranch A directory in Subversion. WordPress uses branches to store the latest development code for each major release (3.9, 4.0, etc.). Branches are then updated with code for any minor releases of that branch. Sometimes, a major version of WordPress and its minor versions are collectively referred to as a "branch", such as "the 4.0 branch". recently, in case anyone has time to dig into it later this week: #60127

Ecosystem Tools

Link to roadmap projects and link to the GitHub repo for Plugin Checker

Contributors: @mukesh27 @swissspidy

  • @mukesh27 For the Plugin Check, I’ve been providing support by conducting code reviews for open PRs. Additionally, I’ve raised an issue regarding Behat test issue in PHP 8.0 for investigation
  • @flixos90 Several PRs have landed in the plugin checker repo last week from I believe a new contributor? I’m not sure what their SlackSlack Slack is a Collaborative Group Chat Platform https://slack.com/. The WordPress community has its own Slack Channel at https://make.wordpress.org/chat/. user name is, but that effort definitely deserves recognition! @rabmalin thanks!
  • @joemcgill It also looks like @foosantos left some feedback on https://github.com/WordPress/plugin-check/issues/283#issuecomment-1882241470 regarding steps to releasing 1.0.0 of the plugin. It sounds like the Plugin Review team have several new blockers that need to be handled prior to that release, though I’m not sure where all of that is being coordinated. One of us should respond and see if we can get some visibility into issues @bordoni has been working on and whether we can support in order to relieve some pressure from their team. @flixos90 I’m happy to take this on if you don’t have time, but will defer to you, given you started that convo. @pbearne also offered to help.
  • @flixos90 It would definitely be great to find ways to better collaborate on both efforts. I don’t understand the problems at this point since I have no insight in the discussions that are happening. We could also actively support addressing their blockers which I think would be good for everyone
    • @clarkeemily asked @bordini how can we help here, and also get visibility into the behind the scenes planning that was mentioned in the comment above?

Creating Standalone Plugins

Link to GitHub overview issue

Contributors: @flixos90 @mukesh27

  • @mukesh27 We have successfully completed the Milestone 2a tasks and their respective follow-up PRs for the Creating Standalone Plugins feature. This is set to be released in the upcoming version 2.8.0.

Open Floor

Our next chat will be held on Tuesday, January 16, 2024 at 16:00 UTC in the #core-performance channel in Slack.

#core-performance, #performance, #performance-chat, #summary

Phase 3 Agency Outreach Recap, December 2023

Phase 3’s focus on collaboration, revisionsRevisions The WordPress revisions system stores a record of each saved draft or published update. The revision system allows you to see what changes were made in each revision by dragging a slider (or using the Next/Previous buttons). The display indicates what has changed in each revision. and workflow takes GutenbergGutenberg The 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/ further into enterprise territory. Inspired by @annezazu’s earlier outreach exercise, and following up on my own proposal, I took the opportunity of availability during December 2023 to reach out to WordPress agencies specialising in enterprise projects, inviting them to a series of informal show-and-tell sessions.

The aim was to gain an insight into enterprise clients’ requirements, and how agencies currently address them. Sessions were offered on a semi-confidential ‘Chatham House Rule’ basis, to avoid any concerns around client confidentiality; but I committed to publishing a summary of what we saw and learned.

Take-up was disappointing.

Invites were sent via several different outreach channels, chosen primarily based on the personal connections of the people involved: WordPress VIP’s partner networknetwork (versus site, blog), the Enterprise channel in CoreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. SlackSlack Slack is a Collaborative Group Chat Platform https://slack.com/. The WordPress community has its own Slack Channel at https://make.wordpress.org/chat/., and the News Nerdery community. This ought to have touched around 100 enterprise-centric agencies. I scheduled 9 one-hour sessions over a 10-day period, at times to suit all timezones. There was capacity for around 40 agencies to participate; but in the end, fewer than 5 agencies signed up. A few others indicated an interest, but did not get round to signing up.

There are many possible explanations. Perhaps December was simply poor timing. Our call for presentations was kept deliberately open and vague; perhaps it should have been more specific. Informal walkthroughs were requested, to minimise the burden of planning and preparation, but perhaps folks would have been more comfortable giving formal presentations.

What is clear is that Core currently lacks warm and clear communication channels with the agency ecosystem – at a time when such channels would be particularly useful for both parties.

It also follows that the following observations are based on a smaller snapshot of enterprise usage than was hoped for. 

Enterprise development practice moves slowly.

Agencies and their clients now seem comfortable with blocks, as delivered in Phase 1: this is largely backed up by data in the recent SOEWP survey.

But we saw no examples yet of Phase 2-style ‘site customisation’: agencies are still sticking with familiar models based on site metadata and Settings pages, even when Phase 2 functionality would probably deliver a better outcome.

An enterprise may only revisit its tech stack every 3 or 4 years, with no reason to fix what isn’t broken. Agencies are probably working on multiple enterprise contracts simultaneously, theoretically giving them more opportunities to embrace new possibilities; but with a decade of pre-Gutenberg ‘muscle memory’, they have a commercial incentive to stick with what they know until proven otherwise.

Collaboration will inevitably happen outside WordPress.

Enterprise employees spend their entire day in office suites like Google Docs or Microsoft 365; social media planning solutions; general collaboration platforms like Jira or Asana; industry specific tools like Desk-Net for newsrooms; technical platforms like GitHubGitHub GitHub 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/.

If businesses already have these tools, integrated into their company-wide workflow, for tasks beyond website management, it’s a bigger challenge for WordPress to force its way into the picture.

Collaboration also happens before WordPress arrives on the scene, in the definition of a ‘house style’, or page templates, which are then hard-coded into the WordPress workflow. Web content creators get limited flexibility, or perhaps none at all, simply filling in boxes. This may seem like the antithesis of user empowerment. But:

  • The business gets predictable, consistent results, always on-brand, delivered efficiently.
  • Employees’ main concern is to get the job done quickly, and move on to their next task.
  • Agencies can tailor UIUI User interface and UXUX User experience to very specific outcomes, minimising the support burden.

Real-time content collaboration is not a current user priority.

We saw no ‘cowpaths to be paved’ when it comes to real-time collaboration on normal content.

The closest we have come has been from an agency working with large news organisations: they described multiple people swarming on a single piece of content, but working on different aspects of it. There would only be one author writing in ‘the content area’: but they would be supported by a picture editor, an SEO manager, a headline manager, a ‘homepage manager’ deciding where it will appear. (This is broadly in line with @annezazu’s earlier findings.)

But some content types are, by definition, real-time and multi-author. One agency brought up the example of ‘live blogs’. If a news site runs ‘live blogs’, typically for major ‘breaking news’ events or sports coverage, these will usually be among their most popular articles of the day. (Source: Press Gazette, 2023.)

Publishers dislike ‘live blogblog (versus network, site)’ solutions embedded from third-party platforms, which do not deliver search-engine benefits. We saw one custom WP-based solution running in the back end, which suffered from the current inability to have multiple authors on the same edit screen. We also know of front-end based, Gutenberg-compatible liveblogs which allow for multiple authors and more creative content entry methods.

We certainly heard a desire for multiple users to collaborate around a single content item. But ‘Google Docs in the editor component’ is not the only possible meaning of collaborative creation… and may not even be the main one.

Revisions need work.

The current implementation of Revisions predates blocks, and is barely usable given the amount of code now held in post_content.

One agency demonstrated work they have done for a major European newspaper, refined over several years, which offers blockBlock Block 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.-compatible WYSIWYGWhat You See Is What You Get What You See Is What You Get. Most commonly used in relation to editors, where changes made in edit mode reflect exactly as they will translate to the published page. comparison, with red and green highlighting of changes. They are open to the idea of sharing their code with Core; and are investigating how this might happen.

It was noted that collaborative editing may have unintended consequences for the current Revisions model. Right now, when only one user can edit and save at any one time, we know exactly who made each change, and when. This can be important for corporations in regulated industries. We lose that simple attribution to an individual, if multiple users are editing simultaneously. (Also noted in @leogermani‘s GitHub discussion thread.)

In conclusion

  • Core currently lacks channels for communicating and engaging with the agency ecosystem.
  • Collaboration on aspects of the website often happens away from the website, and involves people who never touch the website.
  • WordPress cannot realistically be the sole collaboration space for many enterprises and publishers, even as relates to a WordPress-based publishing workflow.
  • The ability to collaborate across different components of a post is currently a greater priority than collaborating within the post_content itself.
  • Beware of unintended consequences – for example, collaborative editing breaking our current Revisions model.

Where next?

Outside of immediate steps I can take, like supporting the agency mentioned to package its work on revisions for Core or arranging future sessions with agencies who expressed interest, we wanted to open the floor to hear from others around ways to improve uptake for enterprise agencies.

  • What do you think would help?
  • What should we try next to spark these conversations and bring feedback into this next phase?

My thanks to @annezazu and various members of the Core team for participating in this initiative; and to enterprise agency Big Bite for sponsoring my time in organising and running these sessions.

#feedback, #phase-3, #summary