TLDR Web Dev 2024-04-02

Gmail is 20 🎂, use ChatGPT instantly 🤖, Flutter cloud platform 📱

🧑‍💻
Articles & Tutorials

How Levels.fyi Built Scalable Search with PostgreSQL (6 minute read)

Levels.fyi developed a scalable fuzzy search solution using PostgreSQL to help users quickly find relevant salary information. Its team's initial approach used simple LIKE queries, but evolved to use materialized views for optimization and full-text search with tsvector for improved results. To further improve search accuracy, they implemented a custom relevance algorithm that used factors like exact matches, popularity, and similarity.

Building a Micro HTMX SSR Framework (25 minute read)

This blog post dives into how you can use Fastify, Vite, and @fastify/vite to produce a small, low-overhead application setup that has the absolute minimal set of dependencies and moving parts. This setup achieved similar SSR performance but with a fraction of dependencies from Astro, making the overall development setup much smaller. The post first gives a crash course on Vite, then walks through how to integrate it into Fastify applications, before finally moving on to the rewrite.

How Slack Automates Deploys (11 minute read)

Slack automated deployments with a program called ReleaseBot. ReleaseBot monitors deployments, detects anomalies using z-scores and dynamic thresholds, and can pause or roll back deployments if necessary. This proved to be a big improvement compared to Slack’s previous process, which involved engineers serving as “Deployment Commanders” that oversaw manual deploys.
🧠
Opinions & Advice

How to Self-Manage even if you Have a Manager (Your Future Self Will Thank You) (8 minute read)

Self-management allows you to work independently, builds trust with your manager, and frees you both to focus on strategic goals. To self-manage effectively, developers should manage timelines well, be self-motivated, give feedback, manage multiple stakeholders, and own their career development.

The Tech Lead's Playbook (3 minute read)

A tech lead's role involves setting a strategic direction, influencing project staffing, and ensuring successful execution. They identify key problems, propose solutions, seek alignment across teams, and collaborate to secure resources for their initiatives. While tech leads still write code, their success relies heavily on strong communication and interpersonal skills to guide the team and promote the project's visibility.

Developing Essential Soft Skills for Engineers and Leaders (12 minute read)

Some of the most important soft skills include empathy, communication, adaptability, problem-solving, and leadership. Learning soft skills takes effort, but can be done through practice, self-reflection, seeking feedback, and utilizing resources like books and courses.
🚀
Launches & Tools

HeyForm (GitHub Repo)

HeyForm is an open-source form builder that allows people to create conversational forms for surveys, questionnaires, quizzes, and polls.

Celest (Website)

Celest is a cloud platform for Flutter. Developers can build their backend in Dart without having to leave their IDE.
🎁
Miscellaneous

The Wi-Fi only works when it's raining (3 minute read)

This author had a weird internet problem where their home Wi-Fi connection would only work when it was raining. Debugging revealed that a neighbor's tree had grown tall enough to intermittently obstruct the signal. The rain would weigh down the branches, temporarily clearing the obstruction, but the connection would fail again as the tree dried. The author upgraded their Wi-Fi hardware to a newer standard that was more resistant to interference to fix the issue.

Headline driven development (3 minute read)

Headline-driven development is a method for shipping software by creating and focusing on a stream of short, clear headlines that communicate the key features of each release before writing any code. This approach helps prioritize the most important features and cuts out any unnecessary work.

Your AI Product Needs Evals (19 minute read)

For AI products to succeed and improve over time, it’s important to have an evaluation approach. This article lays out a three-level approach. First, unit tests should assert expected AI outputs. Second, tools should log AI interactions for easy analysis. Lastly, AI products should have A/B testing to better understand user behavior.
⚡️
Quick Links

Xzbot (GitHub Repo)

An exploration of the xz backdoor.

Gmail is 20 years old (2 minute read)

When Gmail launched on April Fools' Day 2004, its surprising 1GB of storage and Google's reputation for pranks led many to believe it was a joke. The closest competitor at the time only offered 15MB of free storage.

Start using ChatGPT instantly (2 minute read)

ChatGPT is now instantly accessible without signup.

Google to delete records from Incognito tracking (3 minute read)

Google has agreed to delete billions of records collected from Incognito mode browsing and restrict its user tracking practices as part of a settlement in a class-action lawsuit.
Get our free, 5-minute newsletter read by 350,000 frontend, backend, and full stack developers
Join 300,000 readers for