Building a Minimalist Database in 3000 Lines of Code (7 minute read)
This article goes over how to build a simple database in about 3,000 lines of Go. By building it incrementally, it teaches core database principles like power-loss atomicity through append-only logs, efficient indexing with copy-on-write B+trees, and storage management with free lists. The DB starts as a simple KV store and evolves step-by-step to a relational database with transactions, concurrency control, and a SQL-like query language.
|
Why is Git Autocorrect too fast for Formula One drivers? (5 minute read)
Git's autocorrect feature, when enabled, waits only 0.1 seconds before executing a potentially mistyped command, a timeframe too short for even a Formula One driver to react. This behavior stems from a 2008 patch that, jokingly, used deciseconds as the time unit. A recent patch aims to improve this functionality by defaulting to "immediate" execution instead of a 0.1-second delay.
|
An illustrated guide to Amazon VPCs (10 minute read)
The need for Virtual Private Clouds (VPCs) arose from two main problems: IP address conflicts between customers' on-premise and AWS servers, and security vulnerabilities from a shared network. VPCs solve these issues by providing each customer with an isolated private network within AWS, preventing IP address collisions and improving security. This isolation is achieved through a "mapping service" that routes traffic within each VPC, effectively creating separate networks despite instances potentially sharing IP addresses.
|
|
Please Don't Force Dark Mode (5 minute read)
Websites shouldn't force dark mode, as this can cause eye strain and after-effects for certain people. This is usually because of high contrast ratios between text and background in dark mode, even though current WCAG guidelines don't address maximum contrast. Dark mode is great in specific situations with comfortable contrast ratios, such as OLED screens in dark rooms or well-designed code editors.
|
How do interruptions impact different software engineering activities? (4 minute read)
A study examined how interruptions affect software engineers' productivity and stress across various coding tasks (writing, comprehension, and review). The research revealed that interruption impact varies depending on task complexity and the interrupter's authority, with in-person interruptions surprisingly showing lower physiological stress despite higher perceived stress. Perceived stress, rather than physiological data, better predicted engineers' actual behavior and productivity.
|
The PC is Dead: It's Time to Make Computing Personal Again (14 minute read)
The "personal computer" era has ended due to more tracking and digital rights management (DRM). The current popular business models in tech prioritize growth over useful products. Stronger privacy legislation, Right to Repair laws, and DRM reform are needed to restore a more personal computing experience.
|
|
Chrome 133 beta (9 minute read)
Chrome 133 beta introduces several new CSS and UI features, including the advanced attr() function, the :open pseudo-class for open elements, and scroll state container queries for more dynamic styling. Web API updates include Animation.overallProgress for tracking animation progress, a DOM method for preserving element state during moves, and energy-saving freezing of inactive tabs.
|
Tipex (GitHub Repo)
Tipex is a customizable, high-performance rich text editor built for Svelte using Tiptap and ProseMirror. It offers features like a floating menu, plugin architecture, and Svelte 5 integration.
|
Yek (GitHub Repo)
Yek is a fast, Rust-based command-line tool that chunks and serializes text-based files from a repository or directory for LLM consumption. It automatically prioritizes important files based on Git history and offers configurable options for size, output, and ignore patterns.
|
|
Wasm GC isn't ready for realtime graphics (10 minute read)
Wasm GC (GC = Garbage Collection) has performance drawbacks for real-time graphics programming. The core issue is the opacity of Wasm GC heap objects to the JavaScript host, requiring byte-by-byte data copying between Wasm and JavaScript for operations like WebGL rendering. This copying impacts performance, especially when handling large datasets, unlike the direct access offered by Wasm linear memory.
|
Accessibility essentials every front-end developer should know (13 minute read)
This post covers styling considerations like focus indicators and how to use ARIA attributes. Following accessibility best practices improves the user experience for everyone, not just those with disabilities. Some key principles include using semantic HTML, correctly structuring forms with labels (avoiding placeholders), writing descriptive alt text for images, and having smooth keyboard navigation with focus management in modals.
|
|
Agent Recipes (Website)
Agent Recipes provides ready-to-copy code examples of LLM workflows, including prompt chaining, routing, parallelization, orchestrator-workers, evaluator-optimizer, and a soon-to-be-released autonomous agent.
|
Forgejo (Website)
Forgejo is a self-hostable, lightweight, and open-source software forge that prioritizes security, privacy, and federation.
|
|
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.
Want to work at TLDR? πΌ
Apply here or send a friend's resume to jobs@tldr.tech and get $1k if we hire them!
If you have any comments or feedback, just respond to this email!
Thanks for reading,
Priyam Mohanty, Jenny Xu & Ceora Ford
|
|
|
|