TLDR Web Dev

TLDR WEB DEV 2024-09-20

5 sections17 entrieslinks blockcomplete parse

Parse notes

  • Subscription/account footer truncated before parsefooter_truncated

01ARTICLES & TUTORIALS

INTRODUCING NETFLIX'S KEY-VALUE DATA ABSTRACTION LAYER

Netflix's Key-Value Data Abstraction Layer (KV DAL) addresses challenges the company had with datastore misuse by providing a consistent interface layer over storage to application developers. This abstraction offers a two-level map architecture and supports usage through basic CRUD APIs, complex multi-item and multi-record mutations, and efficient handling of large blobs through chunking. It uses idempotency tokens, client-side compression, and adaptive pagination for predictable performance.

netflixtechblog.com13 min read

COMPILE AND RUN C IN JAVASCRIPT

Bun 1.1.28 introduces experimental support for compiling and running native C code directly from JavaScript. This allows developers to utilize system libraries and APIs that are not directly accessible through JavaScript, overcoming the limitations of N-API and WebAssembly. This article goes over how Bun does it by using TinyCC for fast in-memory compilation that provides near-zero call overhead.

bun.sh9 min read

HOW TO REASON ABOUT EXCEPTIONS

While every function has the potential to throw an exception, it's more helpful to think about whether the entire function succeeds or fails rather than focusing on individual operations that could cause errors. Make functions more simple to improve readability and reasoning and write clean-up code that keeps a consistent program state regardless of how the function exits.

xerokimo.github.io12 min read

02OPINIONS & ADVICE

STOP DESIGNING YOUR WEB APPLICATION FOR MILLIONS OF USERS WHEN YOU DON'T EVEN HAVE 100

It doesn't make sense to over-engineer web apps by focusing on scalability from the beginning, especially when the user base is still small. Spending time and resources on building for millions of users before even having 100 users is a waste of time and money. It is more important to focus on creating a product that people want, gathering user feedback, and iterating quickly.

darrenhorrocks.co.uk5 min read

STOP USING SERIAL IN POSTGRES

It's better to use identity columns instead of using the serial data type in Postgres. This is because `serial` has several issues, like permission complexities, a lack of integrity guarantees, and awkward ergonomics. Identity columns provide a better way to manage auto-incrementing primary keys and are also compliant with the SQL standard.

naiyerasif.com7 min read

03LAUNCHES & TOOLS

Sponsored

🛠️ TRY THIS EMBEDDED ANALYTICS DEVELOPER PLAYGROUND

See how you can add POWERFUL CUSTOMER-FACING ANALYTICS to your application with this HANDS-ON DEVELOPER PLAYGROUND FOR SAAS DEVELOPERS [9] — now available from Qrvey. Build dashboards, forms, and automations with sample data. Add filters, drill downs, and fully customize the UI to match your app.

dev.qrvey.comSponsor

TS-REMOVE-UNUSED

This tool automatically cleans up TypeScript code by removing unused exports, deleting modules with no referenced exports, and reporting these changes without making modifications in check mode.

github.comGitHub repository

CONFORM

Conform is a type-safe form validation library that uses web fundamentals to progressively enhance HTML Forms. It gives users control of the full form control lifecycle and has full support for server frameworks like Remix and Next.js.

conform.guideTool

SELECTABLE

Selectable is a mobile app that lets you access your Postgres databases with a mobile-optimized experience. It lets you write complex SQL queries easily on the go.

getselectable.comTool

04MISCELLANEOUS

TECH JOBS ARE GONE AND NOT COMING BACK

The tech job market has changed a lot, with constant layoffs and hiring freezes. The surge in hiring during the pandemic has reversed, leading to a decrease in demand for software developers and a struggle for entry-level positions. While companies are focusing on AI development, leading to high demand for specialists in that field, the overall job market for tech workers is much more competitive than before.

links.tldrnewsletter.com9 min read

LEGACY MODERNIZATION MEETS GENAI

Generative AI can be used to modernize legacy code. This article goes over a tool that combines an LLM with a knowledge graph derived from a legacy codebase, allowing it to understand existing code and extract low-level requirements, build high-level explanations, and even generate automated documentation.

martinfowler.com19 min read

PAYING DOWN TECH DEBT: FURTHER LEARNINGS

While it's important to address tech debt incrementally, sometimes a codebase requires a significant rewrite. Rewrites like these need management support, careful planning, and stakeholder buy-in.

blog.pragmaticengineer.com9 min read