Home

2024.06.03 - How we used esbuild to reduce our browser extension build times by 90%

Pi

Ping Xia

June 2, 20245 min read

Title: 2024.06.03 – How We Used esbuild to Cut Our Browser Extension Build Times by 90%

GraphQL & DRY & Apple Design Award & 养心 (nurturing the heart) & 活在当下 (living in the moment) & 造化自游 (embracing natural spontaneity)

This Week’s Highlights

How we used esbuild to reduce our browser extension build times by 90%https://blog.1password.com/new-extension-build-system/
The system we use internally to build the code behind our browser extension was put together over half a decade ago. While we were able to iteratively grow it over time to meet our needs, it became slower and slower in the process. Let’s give it a much‑needed upgrade!

Why, after 6 years, I’m over GraphQLhttps://bessey.dev/blog/2024/05/24/why-im-over-graphql/
However, as the years have gone on and I have had the opportunity to deploy to environments where non‑functional requirements like security, performance, and maintainability were more of a concern, my perspective has changed. In this article I would like to take you through why today, I would not recommend GraphQL to most people, and what I think are better alternatives. Related: Want Out of React Complexity? Try Vue’s Progressive Framework.

Don’t DRY Your Code Prematurelyhttps://testing.googleblog.com/2024/05/dont-dry-your-code-prematurely.html
Many of us have been told the virtues of “Don’t Repeat Yourself” or DRY. Pause and consider: Is the duplication truly redundant or will the functionality need to evolve independently over time? Applying DRY principles too rigidly leads to premature abstractions that make future changes more complex than necessary. Consider carefully if code is truly redundant or just superficially similar.

Introducing the 2024 Apple Design Award finalistshttps://developer.apple.com/news/?id=ji7uibs2
Every year, the Apple Design Awards recognize innovation, ingenuity, and technical achievement in app and game design.

Developers get by with a little help from AI: Stack Overflow knows code‑assistant pulse survey resultshttps://stackoverflow.blog/2024/05/29/developers-get-by-with-a-little-help-from-ai-stack-overflow-knows-code-assistant-pulse-survey-results/
While GenAI has been dominating the tech news cycles for a while, does all the AI hype translate into usage for professional developers? We tapped the Stack Overflow community for answers (I hear they like answering questions). Over 1,700 people told us what code‑assistant tools they are using, how they feel about them, and whether they feel more productive as a result. Related:

Deep Reads

Data Fetching Patterns in Single‑Page Applicationshttps://martinfowler.com/articles/data-fetch-spa.html
When a single‑page application needs to fetch data from a remote source, it must stay responsive and give feedback during often‑slow queries. Five patterns help with this: Asynchronous State Handler (wraps queries with meta‑queries for state), Parallel Data Fetching (minimizes wait time), Fallback Markup (specifies fallback displays in markup), Code Splitting (loads only needed code), and Prefetching (gathers data before it’s needed to reduce latency).

Old Dogs, New CSS Trickshttps://mxb.dev/blog/old-dogs-new-css-tricks/
A lot of new CSS features have shipped in recent years, but actual usage is still low. While there are many reasons for the slow adoption, I think one of the biggest barriers is our own brains.

The Gaphttps://ishadeed.com/article/the-gap/
An exploration of the pain points that CSS gap solves.

Engineering for Slow Internethttps://brr.fyi/posts/engineering-for-slow-internet
How to minimize user frustration in Antarctica.

Unexpected Anti‑Patterns for Engineering Leaders — Lessons From Stripe, Uber & Cartahttps://review.firstround.com/unexpected-anti-patterns-for-engineering-leaders-lessons-from-stripe-uber-carta/
Will Larson, a veteran engineering leader and CTO at Carta, shines a light on three conventional engineering‑management “anti‑patterns” for closer inspection.

User Research Is Storytellinghttps://alistapart.com/article/user-research-is-storytelling/
Now, I realize that there’s an element of theater to UX—I hadn’t really considered it before, but user research is storytelling. To get the most out of user research, you need to tell a good story that brings stakeholders—the product team and decision‑makers—along and gets them interested in learning more.

What Happens to Old Software?https://www.simplethread.com/what-happens-to-old-software/
Old software needs love and guidance. Sometimes that means careful, vigilant protection, with layers of abstraction and modernization accreted around a highly conserved core. More commonly, it means shepherding it as the community migrates to greener pastures and newer features. It can get lonely and dangerous if you’re left behind, but catching up isn’t impossible; a well‑caulked wagon and a solid test suite can help you traverse major version bumps and get up to date quickly.

We’re Watching Facebook Diehttps://www.wheresyoured.at/were-watching-facebook-die/
Meta has become a company that shows utter contempt for its users, turning products like Facebook and Instagram into algorithmic nightmares that undermine their core purpose—connecting people—while intentionally allowing malignant actors like anti‑vaxxers and spammers to thrive so that the numbers behind these arbitrary metrics go up.

Fresh Finds

Here’s What We Learned From the First State of HTML SurveyAll the Flutter news from a busy Google I/O 2024Deno 1.44: Private npm registries, improved Node.js compatibility, and performance boostsMilo: A new HTTP parser for Node.js

aem1k: JavaScript Hacks and Creative CodingShareDB 5.0: Real‑time database backend based on Operational TransformationDrizzle: Headless ORM for Node.js, TypeScript, and JavaScriptCrawlee: A web‑scraping and browser‑automation library for Node.js to build reliable crawlersreact‑force‑graph: React component for 2D, 3D, VR, and AR force‑directed graphs


Originally written by Ping Xia (平侠) and published in Chinese on Web技术周刊 (Web Tech Weekly). Translated and adapted for DriftSeas with permission.

Keep reading

More related articles from DriftSeas.