Performance Chat Summary: 13 February 2024

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

Announcements

  • Welcome to our new members of #core-performance
  • Release 2.9.0 of 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 is scheduled for Monday February 19
  • Call for opinions on the naming of the ‘Image Loading Optimizations’ plugin [see here]

Priority Projects

Server Response Time

Notes from today’s meeting:

  • @thekt12 This is something I was working on https://github.com/WordPress/wordpress-develop/pull/5941, new changes has caused some test to fail. The issue is with older test cases. I’ll give a final look tomorrow
  • @joemcgill I ran some profiling on the improvements we made to 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. varations (#59969) and am showing that this has made a noticeable reduction to server response times, e.g. ~5-7%
  • @joemcgill Yesterday, I also identified an issue with the new Plugin Dependencies feature that was negatively impacting server timing. #60518 is fixed 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. 1 and it looks like we’ve mostly recovered from the regressions that were previously discovered, but we’ll take new benchmarks after Beta 1 is released today

Database Optimization

Notes from today’s meeting:

  • No updates this week

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 the GitHub project board
  • Contributors: @mukesh27 @flixos90 @westonruter @thelovekesh
  • 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
    • Embed Optimizer

Notes from today’s meeting:

Images

Notes from today’s meeting:

Measurement

Notes from today’s meeting:

  • @joemcgill Nothing specific to report against those milestones. Now that we’re getting into the part of the release cycle where we’ll be doing lots of benchmarks, I suspect we’ll identify some opportunities to streamline things a bit. I also think that @oandregal was working on some improvements to the GB tests that would have caught some regressions that were not caught until after the sync. I’d be curious to know if there are ways we can support that work for the future?
  • @joemcgill Some initial performance benchmarks for 6.5-beta1 against 6.4.3, for anyone interested:

Ecosystem Tools

  • Link to the GitHub repo for Plugin 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

  • Suggestion from @joemcgill and @swissspidy to rethink the structure of the chat to align with the Core Dev Chat
    • For the past couple of weeks, the Core Dev-chat has attempted to spend more time synchronously discussing a proposal or pending issue, and having most updates linked in the agenda with the expectation that folks are reading the information ahead of the meeting. So far, it’s led to more engaging chats. Perhaps there are ways to do something similar here?
  • @clarkeemily is away on holiday next week, so @joemcgill will run the chat

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

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

Performance Chat Agenda: 13 February 2024

Here is the agenda for this week’s performance team meeting scheduled for Feb 13, 2024 at 16:00 UTC. If you have any topics you’d like to add to this agenda, please add them in the comments below.

  • Announcements
    • Welcome to our new members of #core-performance
    • Release 2.9.0 of 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 is scheduled for Monday February 19
    • Call for opinions on the naming of the ‘Image Loading Optimizations’ plugin [see here]
  • Priority projects
  • Open floor

This meeting happens in the #core-performance channel. To join the meeting, you’ll need an account on the Make WordPress Slack.

#agenda, #meeting, #performance, #performance-chat

Performance Chat Summary: 6 February 2024

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

Announcements

  • Welcome to our new members of #core-performance
  • Reminder to visit our 2024 performance roadmap for an overview of all priority projects
  • Reminder that 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 for WordPress 6.5 is scheduled for Tuesday February 13

Priority Projects

Server Response Time

Notes from today’s meeting:

Database Optimization

Notes from today’s meeting:

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 the GitHub project board
  • Contributors: @mukesh27 @flixos90 @westonruter @thelovekesh
  • 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 meeting:

  • @westonruter For Interactivity API, I’ve continued providing feedback for the pull request that adds server-side processing of directives. It’s almost there! This will be great because it will mean that client-side JSJS JavaScript, a web scripting language typically executed in the browser. Often used for advanced user interfaces and behaviors. will have to do less, resulting in better metrics likely for LCP, CLS, and INP.
  • @adamsilverstein I have been working on researching INP opportunities using httparchive queries in a colab which I plan to summarize in a doc to share with the team. I have made good progress and hope to have a summary to share next week.
  • @westonruter Also I identified an issue where passive event listeners can’t currently be added via event directives
  • @thelovekesh https://github.com/WordPress/performance/pull/556 is ready for final review. Also as mentioned by @joemcgill to release this module as standalone 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, @westonruter has made some changes to PR base.

Images

Notes from today’s meeting:

Measurement

Notes from today’s meeting:

  • No updates this week

Ecosystem Tools

  • Link to the GitHub repo for Plugin 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

  • No updates today

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

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

Performance Chat Agenda: 6 February 2024

Here is the agenda for this week’s performance team meeting scheduled for Feb 6, 2024 at 16:00 UTC. If you have any topics you’d like to add to this agenda, please add them in the comments below.


This meeting happens in the #core-performance channel. To join the meeting, you’ll need an account on the Make WordPress Slack.

#agenda, #meeting, #performance, #performance-chat

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

Performance Chat Agenda: 30 January 2024

Here is the agenda for this week’s performance team meeting scheduled for Jan 30, 2024 at 16:00 UTC. If you have any topics you’d like to add to this agenda, please add them in the comments below.


This meeting happens in the #core-performance channel. To join the meeting, you’ll need an account on the Make WordPress Slack.

#agenda, #meeting, #performance, #performance-chat

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

Performance Chat Agenda: 23 January 2024

Here is the agenda for this week’s performance team meeting scheduled for Jan 23, 2024 at 16:00 UTC. If you have any topics you’d like to add to this agenda, please add them in the comments below.


This meeting happens in the #core-performance channel. To join the meeting, you’ll need an account on the Make WordPress Slack.

#agenda, #meeting, #performance, #performance-chat

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 Agenda: 16 January 2024

Here is the agenda for this week’s performance team meeting scheduled for Jan 16, 2024 at 16:00 UTC. If you have any topics you’d like to add to this agenda, please add them in the comments below.

  • 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
  • Open floor

This meeting happens in the #core-performance channel. To join the meeting, you’ll need an account on the Make WordPress Slack.

#agenda, #meeting, #performance, #performance-chat