TLDR Web Dev 2024-04-25

AI assistant for CSS 🤖, Atlassian’s drag-and-drop 🎁, React Native 0.74 📱

🧑‍💻
Articles & Tutorials

Why don't we talk about minifying CSS anymore? (8 minute read)

Minifying CSS files directly is less important today compared to before because popular front-end frameworks automatically handle minification and code-splitting for developers. Modern compression algorithms can reduce file sizes a lot and HTTP/2 can efficiently deliver multiple smaller CSS files. As a result, developers no longer have to manually minify their CSS.

Make invalid states unrepresentable (11 minute read)

Invalid states can lead to runtime errors and less reliable code. However, by shrinking the gap between representable, valid states, errors can be moved from runtime to compile time, which allows them to get caught much earlier. Type systems can and should be used to model business logic that makes invalid states impossible and unrepresentable. This article goes through a few examples, such as a “Color” type that prevents invalid colors.
🧠
Opinions & Advice

Why we suck at estimating software projects (4 minute read)

Software is hard to estimate correctly because requirements change often, complexities always come up, and external factors can cause delays. There's no perfect solution to this problem because software development is inherently a creative process.

What is your definition of a Unit, Integration, and E2E test? (6 minute read)

Various software engineers were polled on the difference between different types of tests. The general consensus was that unit tests test the smallest units of code, like methods. Integration tests verify interactions between different parts of a system. End-to-end tests focus on the overall user journey and are more heavyweight.
🚀
Launches & Tools

LangCSS (Website)

LangCSS is an AI assistant specifically trained on Tailwind CSS to help you generate forms, buttons, and other web elements easily. You can chat with it to describe your ideas and the AI assistant will generate code in real time.

React Native 0.74 - Yoga 3.0, Bridgeless New Architecture, and more (10 minute read)

React Native 0.74 adds Yoga 3.0 (a layout engine), Bridgeless mode as the default, and Yarn 3 as the default package manager. There are other updates such as the removal of deprecated APIs.

Pragmatic Drag and Drop (GitHub Repo)

This is Atlassian's open-sourced drag-and-drop toolchain. It can be used with any view layer, such as React, Svelte, and Angular, and currently powers products like Trello, Jira, and Confluence.
🎁
Miscellaneous

Why Aren't We Talking About Continuous Improvement? (4 minute read)

Continuous improvement is a key principle of Agile and Lean, but it's not as popular anymore in tech companies. Layoffs and transformations often happen without employee involvement, and there's a general lack of engagement in improving processes.

The Rise And Fall Of The LAN Party (14 minute read)

LAN parties were gatherings where gamers would connect their computers to a local network to play games with minimal network lag. LAN parties declined over time because the internet got faster and consoles became more popular.
⚡️
Quick Links

IBM to buy HashiCorp in $6.4 billion deal to expand in cloud (2 minute read)

IBM will acquire cloud infrastructure automation company HashiCorp in a $6.4 billion deal to grow its own cloud business.

Eric Schmidt-backed Augment, a GitHub Copilot rival, launches out of stealth with $252M (4 minute read)

Augment, a startup backed by Eric Schmidt (former CEO of Google), has launched to rival GitHub Copilot with a new AI-powered coding platform.

Web Game Engines & Libraries (4 minute read)

A list of various JavaScript engines and libraries for real-time 2D and 3D graphics in web browsers.
Get our free, 5-minute newsletter read by 350,000 frontend, backend, and full stack developers
Join 300,000 readers for