TLDR Web Dev

TLDR WEB DEV 2024-11-14

6 sections19 entrieslinks blockcomplete parse

Parse notes

  • Subscription/account footer truncated before parsefooter_truncated

01GENERAL

Sponsored

AGREEMENT LIFECYCLE

For many organizations, agreement data is trapped in static files, making it difficult to access, update, or connect with systems. A challenge called the Agreement Trap — resulting in an estimated $2 trillion lost in global economic value each year.

docusign.comSponsor

02ARTICLES & TUTORIALS

HOW WE BUILT A SELF-HEALING SYSTEM TO SURVIVE A TERRIFYING CONCURRENCY BUG AT NETFLIX

A concurrency bug in a Netflix internal library was causing CPUs to die at a rate of one every two minutes. Due to the bug being unfixable until Monday, Netflix engineers implemented a self-healing system by pinning their cluster size to the maximum and randomly terminating a few instances every 15 minutes. This let the system stay running until Monday when it could be fixed.

pushtoprod.substack.com10 min read

ADOPTING BAZEL FOR WEB AT SCALE

Airbnb migrated its large-scale web monorepo to Bazel, Google's open-source build tool, to overcome scaling limitations and inefficiencies in its existing build system. The migration process involved preparing the codebase for Bazel, which involved cycle breaking and automating BUILD.bazel file generation, and then migrating CI jobs to Bazel.

links.tldrnewsletter.com10 min read

REACT IS A PROGRAMMING LANGUAGE, AND ITS RULES ARE SYNTAX

Refs, which are used to reference DOM nodes, don't work in React Server Components. This limitation stems from the fact that the server doesn't have access to the DOM, which is a browser-specific concept. Allowing refs in Server Components would introduce potential issues with lexical scope and UI consistency.

buildui.com5 min read

03OPINIONS & ADVICE

THE MAGIC OF KEEPING ONE LEVEL OF ABSTRACTION PER FUNCTION

It's important to maintain a single level of abstraction per function in code. Mixing different levels of detail within a single function can lead to confusion and make code harder to understand. Break down code into smaller, focused functions so that each function addresses a specific task at a consistent level of abstraction.

tymzap.com5 min read

04LAUNCHES & TOOLS

EXPO SDK 52

Expo SDK 52 has been released. The New Architecture has been enabled by default for all newly created projects. The release includes React Native 0.76, a stable release of the new expo-video library, beta releases of expo-audio and expo-file-system/next, and large updates to other packages.

expo.dev26 min read

HYPERDX

HyperDX is an open-source observability platform that allows engineers to quickly diagnose production issues by providing a unified search and visualization interface for logs and traces from any Clickhouse cluster.

github.comGitHub repository

INTRODUCING SPIN 3.0

Spin is an open-source developer tool for building and running serverless WebAssembly applications. Its latest release includes new features like component dependencies and selective deployments.

fermyon.com12 min read

05MISCELLANEOUS

THINKING ABOUT RECIPE FORMATS MORE THAN ANYONE SHOULD

This developer considered Cooklang, a recipe markup language, and the Recipe Schema Type, a JSON-LD format used by large recipe sites, for his own recipe site. Cooklang is more simple and flexible, but Schema Type has benefits for SEO and recipe extraction. The developer decided to use a combination of both, rendering Cooklang recipes on his website, providing the raw Cooklang content for download, including the Schema Type for extractors, and using the h-recipe microformat for better semantic markup.

rknight.me6 min read

WHAT IS THE BEST REACT NATIVE LIST COMPONENT?

ScrollView in React Native for large datasets has limitations compared to FlatList and SectionList as built-in solutions. FlashList is a new type of list built by Shopify that has 5x-10x faster performance compared to FlatList. It uses an optimized RecyclerListView that provides near-native list performance.

expo.dev7 min read