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