Newslurp

<< Stories

Real-time mouse pointers 🐁, Dependency injection in React 💉, Coding Horrors 🧟

TLDR Web Dev <dan@tldrnewsletter.com>

August 16, 11:09 am

TLDR WebDev
Canva implemented real-time mouse pointers to make its whiteboard product better. The team migrated to a WebRTC-based architecture 

TLDR

 TLDR Web Dev 2024-08-16

🧑‍💻

Articles & Tutorials

Real-time mouse pointers (18 minute read)

Canva's collaboration team implemented real-time mouse pointers to make its whiteboard product better. Initially, they utilized a backend-centric architecture using WebSockets and Redis, which scaled to support hundreds of thousands of simultaneous users, but had limitations in update rate. Recognizing these limitations, the team migrated to a WebRTC-based architecture, which allowed direct peer-to-peer communication between clients, reducing latency and improving scalability.
Dependency injection in React - How to Manage Dependencies in Your React App for Cleaner and Easier to Maintain Code (8 minute read)

Dependency Injection (DI) is a design pattern that improves flexibility, testability, and maintainability by injecting external dependencies into your code rather than hard-coding them. In React applications, DI can be implemented using createContext and useContext to manage dependencies across components without prop drilling. This approach simplifies testing, makes code less coupled, and provides better separation of concerns, though it does add some complexity.
🧠

Opinions & Advice

Why I Don't Like Enums (4 minute read)

TypeScript's implementation of enums is counterintuitive and inconsistent with type-safe JavaScript. It has unexpected behavior when dealing with numerics, incompatibilities with nominal typing, and numerous bugs related to them in the TypeScript repository.
Did TDD actually improve your productivity? (Reddit Thread)

Many devs find that test-driven development doesn't really make them more productive. While they may have found it useful when they were newer to coding, it became less useful once they gained more experience.
🚀

Launches & Tools

High-precision date/time in SQLite (10 minute read)

Sqlean-time is a high-precision date/time extension for SQLite. It provides a structured API and a rich set of functions for working with Time and Duration values. The extension enables storing and manipulating dates for billions of years in the past and future with nanosecond precision.
Hamming (Website) (2 minute read)

Hamming is an end-to-end platform that streamlines the development and deployment of trustworthy AI voice apps by offering tools for prompt optimization, automated voice testing, monitoring, and more.
Kardinal (GitHub Repo)

Kardinal is a framework for creating lightweight ephemeral development environments within a shared Kubernetes cluster.
🎁

Miscellaneous

Coding Horrors: The Tales of Codebase Complexity (13 minute read)

Daniel Beck, a seasoned developer, shares his personal experiences with XSLT, inefficient database connections, and disastrous refactoring efforts. His experience with horrific codebase complexity only reinforced how hard it can be to rectify human errors.
Achieving Frugal Architecture using the AWS Well-Architected Framework guidance (9 minute read)

The Frugal Architect mindset treats cost as a key design factor alongside security and performance. This approach aligns with the AWS Well-Architected Framework, which provides guidelines for optimizing cloud architecture by focusing on cost efficiency and sustainability. By continually evaluating and adjusting architectural decisions, organizations can balance innovation with responsible resource usage and drive maximum value from their investments.

Quick Links

CEOs Are Running Companies From Afar Even as Workers Return to Office (5 minute read)

Despite a push for employees to return to the office, a growing number of CEOs are being given the option to run their companies remotely, often living hundreds of miles away from their company headquarters.
Should you Start a Startup? (9 minute read)

Starting a startup requires deep expertise in a problem and the ability to build a solution, whether through tech or distribution, so you should gauge your unique advantages and your desired outcome.
Rails 7.2 Released (3 minute read)

Rails 7.2 has better production defaults, performance boosts with YJIT enabled by default, optimized Puma settings, and easier setup with pre-configured development containers.
Behold, Diablo is fully playable in your browser (3 minute read)

The original Diablo game is now playable in web browsers thanks to an open-source project that offers a surprisingly smooth experience despite the game's age.
Kiota (GitHub Repo)

Kiota is a command line tool for generating an API client to call any OpenAPI described API you are interested in.

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.