Email Details

React Native Nitro 📱, GitHub deleted file trick ♻️, Interning in Go🗄️

Nitro is a framework for developing native modules in React Native using hybrid objects, native objects implemented in C++, Swift, or Kotlin 

TLDR

Together With

 TLDR Web Dev 2024-09-19

Using A/B testing to “soft disable” unused features and reduce unnecessary calls (Sponsor)

With 10 billion page views per month and 8 million daily users (as of March 2023), unused features have a price - whether that's cloud resources or carbon emissions.

As part of its responsibility to minimize digital emissions, Leboncoin (part of Adevinta) implemented a ”soft disabling” mechanism that deactivates features based on user interaction.

Visit the Adevinta tech blog to learn more about the implementation and the results. Read the article

🧑‍💻

Articles & Tutorials

How does session replay work? (6 minute read)

Session replay provides qualitative views of user interactions that have already happened. It works by reconstructing the changes made to the DOM rather than literally recording the screen. This involves re-applying the CSS to the HTML and using open-source software like rrweb to record and replay these DOM changes.
A milestone for TypeScript Performance in TanStack Router (10 minute read)

TanStack Router, a type-safe routing library for TypeScript, made performance improvements to address a bottleneck in TypeScript's language service when handling large route trees. The issue stemmed from the language service having to infer types for the entire route tree, even when only a specific route was referenced. To solve this, TanStack Router introduced a new approach for file-based routing where the route tree is explicitly declared instead of inferred, allowing the language service to infer types only for the relevant route.
Interning in Go (4 minute read)

Go's new `unique` package can improve memory usage by interning objects, specifically strings, to avoid storing duplicate copies. Interning, by reusing identical objects, reduces memory usage compared to other approaches. This post illustrates this through a program that processes a large text file, identifying all words starting with "B" and comparing the memory usage of different methods: storing references, cloning strings, and using the `unique` package.
🧠

Opinions & Advice

Remix's concurrent submissions are fundamentally flawed (without causal ordering) (6 minute read)

Remix's approach to concurrent submissions, using a "submission and revalidation" pattern, is fundamentally flawed. It leads to unnecessary latency and introduces race conditions where the UI can display outdated information, even after users have submitted changes. There are two solutions: Causal ordering, which makes sure requests are processed in the order they depend on each other, and Persistence, where a connection is maintained between the client and server to guarantee ordered processing.
The Hidden Costs of Over-Collaboration (8 minute read)

Over-reliance on collaboration has hidden costs. Excessive collaboration can reduce overall output due to time spent in meetings and can create expensive interactions between teams that are not always necessary. It can also hide deeper-rooted problems, like inefficient workflows and unclear team boundaries.
Stop learning to give feedback. Learn to receive it (8 minute read)

Receiving feedback well means approaching feedback with curiosity and seeking clarification when possible. It's also important to avoid immediate counterarguments when receiving feedback and instead create a safe environment for the feedback giver to be honest with you.
🚀

Launches & Tools

David Neal of ReverentGeek to headline CamundaCon in NYC (Sponsor)

The CamundaCon Process Orchestration Conference is coming to New York City (and streamed live online)! On the agenda: A keynote by Microsoft MVP and Author David Neal (ReverentGeek), hands-on workshops, talks by process automation experts at top-tier companies, and many surprises. Buy a ticket to attend in-person or register virtually for free.
Nitro (Website)

Nitro is a framework for developing high-performance native modules in React Native. It achieves this through hybrid objects, which are native objects implemented in C++, Swift, or Kotlin that provide direct access to native functionalities. Nitro uses a lightweight layer built on JSI and bridges directly to Swift and Kotlin while still prioritizing type safety and null-safety by using a code-generator to make sure that TypeScript specifications are the single source of truth for both JavaScript and native code.
Electrico (GitHub Repo)

Electrico is a lightweight, cross-platform alternative to Electron that uses Rust and Javascript to emulate Electron and Node APIs within embedded WebViews. This lets users run Electron apps without bundling Node.js and Chromium.
Farmhash (GitHub Repo)

This is a Node.js implementation of FarmHash, Google's family of high performance hash functions. It offers various hash and fingerprint functions with different bit lengths and seeding options.
🎁

Miscellaneous

Why wordfreq will not be updated (4 minute read)

wordfreq provided snapshots of language usage up to 2021 - it will not be updated anymore due to several reasons. First, the rise of generative AI has contaminated online data with AI-generated text, making it difficult to accurately represent human language usage. Second, previously free sources of data, like Twitter and Reddit, have become inaccessible or expensive, making it impractical to collect new data. Finally, its developer has become disillusioned with the current state of natural language processing.
A gentle guide to self-hosting your software (8 minute read)

This is a guide for beginners on self-hosting software and using Uberspace as a platform that emphasizes the software aspect rather than complex hardware setup. The author goes through the process of self-hosting two example apps.

Quick Links

React 19 Cheat Sheet (Website)

A downloadable cheat sheet for all of the new features in React 19.
GitHub trick to find the commit that deleted a file (2 minute read)

You can use git log -- /path/to/deleted/file to find the commit that deleted a file in your local repo, and you can do the same on a hosted repo with https://github.com/⟦user⟧/⟦project⟧/commits/⟦branch⟧/⟦path/to/deleted/file⟧.
The empire of C++ strikes back with Safe C++ proposal (6 minute read)

A new proposal addresses C++'s memory safety vulnerabilities by introducing features similar to Rust, allowing developers to write safer code without needing to rewrite their projects in a different language.
Apple Mobile Processors Are Now Made in America. By TSMC (3 minute read)

Apple is the first customer for TSMC's new Arizona chip fabrication facility, producing its A16 mobile processors for the iPhone on American soil.

Love TLDR? Tell your friends and get rewards!

Share your referral link below with friends to get free TLDR swag!
Track your referrals here.

Want to advertise in TLDR? 📰

If your company is interested in reaching an audience of web developers and engineering decision makers, you may want to advertise with us.

If you have any comments or feedback, just respond to this email!

Thanks for reading,
Priyam Mohanty, Jenny Xu & Ceora Ford


If you don't want to receive future editions of TLDR Web Dev, please unsubscribe from TLDR Web Dev or manage all of your TLDR newsletter subscriptions.

© 2024 Email Dashboard. All rights reserved.