
#### PerformanceNewsletter
|
#### Issue 42
|
|
#### Editor’s Note
Performance issues are user-facing. They manifest themselves through the front-end people are interacting with. But often, they are caused by something existing much further from that layer.
When working with speed, often we must investigate deeper. What initially shows up as evident, ends up being complex.
To master perceived speed, **look in unexpected places.**
— Karolina
|
|
|
|
#### article

## Design for fast imagery and media
The second article in our [performance series](https://calibreapp.com/blog/performance-for-designers-typography) targeted at designers (although, anyone can learn from new approaches from reading it). This time, we explain how to deal with one of the biggest performance offenders—imagery and media.
[]()[Performance for Designers Part 2: Images →](https://calibreapp.com/blog/performance-for-designers-images)
#### article
## Avoid non-performant SSL certificates
Performance can be affected by numerous factors, extending far beyond your codebase into infrastructure and security. In his article, [Aaron Peters](https://twitter.com/aaronpeters) outlines how Extended Verification SSL certificates significantly downgrade speed and reliability.
[]()[EV Certificates Make The Web Slow and Unreliable →](https://www.aaronpeters.nl/blog/ev-certificates-make-the-web-slow-and-unreliable/)
#### tools

## Diagnose Node.js performance issues
[Ali Yousuf](https://www.linkedin.com/in/azy5030/) showcases how to debug misused Promise.all() with [Clinic.js](https://clinicjs.org/), a new tool assisting in pinpointing performance problems in Node.js. Clinic seems to provide advanced ways of visualising and pinpointing speed issues; in this case, unbounded promise creation.
[]()[Promise.allpocalypse →](https://eng.lifion.com/promise-allpocalypse-cfb6741298a7)
#### browsers

## Run canvas and animations off the main thread
As of Chrome 81, Houdini paint worklet runs off the main thread by default, which means you can run JS-driven canvases and animations without blocking the main thread. There are still few kinks to be worked out (including universal browser support), but it can turn to be very powerful in the future.
[]()[Paint worklet demo →](https://flackr.github.io/lottie-web/demo/bodymovin/)
#### podcast

## Address the impact of third party code
[Third party script](https://calibreapp.com/third-party) can have a massive impact on performance, security and overall user experience. In the latest episode of Chasing Waterfalls, I sit down with Tim Kadlec to talk about the implications of external scripts, addressing them and how the way we approach them is a reflection of company culture.
[]()[Dealing with Third Parties with Karolina Szczur →](https://chasingwaterfalls.io/episodes/episode-four-with-karolina-szczur/)
#### tools

## Test image lazy loading in WordPress
As [Felix Arntz](https://twitter.com/felixarntz) reports, the WordPress team is working on a plugin to support [native lazy loading](https://calibreapp.com/blog/native-lazy-load) on the platform. Knowing the widespread adoption of WordPress, adding lazy loading to the core could have a significant, positive impact on many sites. If you use WordPress, consider beta testing.
[]()[Lazy-Loading Images in WordPress Core →](https://make.wordpress.org/core/2020/01/29/lazy-loading-images-in-wordpress-core/)
|
|
####
Spread the word about perf.email
We’d love to see more people reading
[perf.email](https://perf.email/); if you’d
like to help—forward this email to a friend, tweet, or
shout from a rooftop. It goes a long way. ✌🏻
|
|