Email Details

Tech jobs are gone ❌, stop over-optimizing🛠️, run C in JavaScript⚡️

The tech job market has changed a lot, with constant layoffs and hiring freezes. The surge in hiring during the pandemic has reversed 

TLDR

 TLDR Web Dev 2024-09-20

🧑‍💻

Articles & Tutorials

Introducing Netflix's Key-Value Data Abstraction Layer (13 minute read)

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.
Compile and run C in JavaScript (9 minute read)

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.
How to reason about exceptions (12 minute read)

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.
🧠

Opinions & Advice

Stop Designing Your Web Application for Millions of Users When You Don't Even Have 100 (5 minute read)

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.
Stop using SERIAL in Postgres (7 minute read)

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.
🚀

Launches & Tools

🛠️ Try this Embedded Analytics Developer Playground (Sponsor)

See how you can add powerful customer-facing analytics to your application with this hands-on developer playground for SaaS developers — 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.

🛝 Try the Qrvey Developer Playground (ungated)

ts-remove-unused (GitHub Repo)

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.
Conform (Website)

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.
Selectable (Website)

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.
🎁

Miscellaneous

Tech jobs are gone and not coming back (9 minute read)

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.
Legacy Modernization meets GenAI (19 minute read)

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.
Paying down tech debt: further learnings (9 minute read)

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.

Quick Links

AI-Generated Code is Causing Outages and Security Issues in Businesses (6 minute read)

AI-generated code is causing downtime and security issues in businesses due to insufficient code reviews and developers' tendency to trust AI too readily.
How Much GPU Memory is Needed to Serve a Large Language Model (LLM)? (2 minute read)

A popular LLM interview question is to calculate the GPU memory needed to run inference for different LLMs - this can be done with a simple formula.
Simple Icons (Website)

A collection of over 3,000 free SVG icons for popular brands.
The Arrival of Java 23 (12 minute read)

Java 23 is now available, with language improvements, API updates, performance optimizations, and tooling changes.

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.