Performance Icon


17 Stories
All Topics

link Icon

Rules of optimization

Emil Persson's optimization tweet was so well received that he decided to turn its <ol> of rules into a full-on blog post: Basically Programming Wisdom ... posted a quote that basically suggested more or less that there’s never a good time to think about performance. Even experts should defer it until later! This is way worse advice than your usual “premature optimization is the root of all evil” tirade. I'm not a fan of premature optimization, myself. So there's lots to ponder in this post. 🤔


Jaana B. Dogan (JBD) Medium

Want to debug latency?

What is latency? And how exactly do you debug it? Jaana writes on the Observability+ blog: In the recent decade, our systems got complex. Our average production environments consist of many different services (many microservices, storage systems and more) with different deployment and production-maintenance cycles. Measuring latency and being able to react to latency issues are getting equally complex as our systems got more complex. This article will help you how to navigate yourself at a latency problem and what you need to put in place to effectively do so.


Figma Icon Figma

Rust in production at Figma

This is the story of how Rust dramatically improving Figma's server-side performance (one of their most important features). The multiplayer server we launched with two years ago is written in TypeScript and has served us surprisingly well, but Figma is rapidly growing more popular and that server isn’t going to be able to keep up. We decided to fix this by rewriting it in Rust.


Matt Jaffee YouTube

The index as a first class citizen

Matt Jaffe was on a recent episode of Go Time and also gave this talk at OSCON recently on indexes as a first class citizen. In this video Matt talks about a piece of software that's purely an index, not a database, not a datastore, just the index — and optimizing that single piece of software to be very fast! Here's a quick breakdown of an index as a first class citizen: Standalone application, not just a data structure Horizontally scalable, distributed FAST, indexes should make things faster Flexible, integrates with other datastores and data types Also, learn more about Pilosa to see Matt's work in action.


Nuster Cache Server

Nuster – a high performance caching proxy server based on HAProxy

It is 100% compatible with HAProxy, and takes full advantage of the ACL functionality of HAProxy to provide fine-grained caching policy based on the content of request, response or server status. The feature list is long. Click through to see 'em all. Nuster is very fast, some test shows nuster is almost three times faster than nginx when both using single core, and nearly two times faster than nginx and three times faster than varnish when using all cores. Here's a detailed benchmark backing up these claims.


PostgreSQL Icon

Postgres looks to LLVM's JIT for up to 20% speed up

This was posted back in March, but it's news to me: A long-running project has been JIT-compiling SQL queries in PostgreSQL by making use of LLVM's just-in-time compilation support, rather than passing SQL queries through Postgres' interpreter. With the LLVM JIT'ed queries, more efficient code is generated by being able to make more use of run-time information and can especially help in increasing the performance of complex SQL queries. JIT-compiling expressions for PostgreSQL has been found to be up to ~20%+ faster in database tests like TPC-H. Creating indexes was found to be even 5~19% faster with this JIT mode Hopefully this feature will progress quick enough to land in Postgres 11. 🙏


CSS-Tricks Icon CSS-Tricks

Hey hey `font-display`

Chris Coyier: Y'all know about font-display? It's pretty great. It's a CSS property that you can use within @font-face blocks to control how, visually, that font loads. … What do you get from it? The ability to control FOUT and FOIT as is right for your project, two things that both kinda suck in regards to font loading. Font loading strategy is pretty important. It's one of the reasons I searched far and wide to improve the performance of fonts on Brightly Colored. Fortunately, if you're using @font-face, using font-display is as easy as using one line of CSS, and you'll see the performance improvements immediately. Unfortunately, as Chris points out, there's no performant way to get around either FOUT or FOIT.


link Icon

The Evolution of <img>: Gif without the GIF

Colin Bendell tells the technical history of GIFs and how we've slowly moved to this place where we can have Gif-like experiences without the terrible performance and quality costs. Unfortunately, we're not quite there yet: Safari Technology Preview is paving the way ... Here’s hoping the other browsers will soon follow. Google? Microsoft? Mozilla? Samsung? Your move!


Slack Engineering Icon Slack Engineering

Keep webpack Fast: A Field Guide for Better Build Performance

Slack chose webpack as their build tool, but it wasn't fast enough. Our build took minutes, not seconds: a far cry from the sub-second concatenation we were used to. Slack’s web teams deploy up to 100 times on any given work day, so we felt this increase acutely. Let's just say they went to work and came up with several techniques to speed up the build process. webpack is a fantastic, versatile, tool that does not need to cost the earth. These techniques have helped us reduce our median build time from 170 to 17 seconds and, while they have done much to improve the deployment experience for our engineers, they are by no means a complete work.

0:00 / 0:00