TLDR Web Dev

TLDR WEB DEV 2024-03-18

5 sections18 entrieslinks blockcomplete parse

Parse notes

  • Subscription/account footer truncated before parsefooter_truncated

01ARTICLES & TUTORIALS

HOW WEB BLOAT IMPACTS USERS WITH SLOW DEVICES

The web has seen an increase in complexity, slowing it down significantly for users with low-end devices or slow internet connections. Modern web apps are CPU-hungry. Even with fast internet, websites like Threads and Patreon take a long time to load on low-end phones because of CPU demands. Most developers believe that hardware will get faster and solve performance issues, but hardware improvements slow down over time. Instead, deliberate optimization to reduce CPU impact is crucial in making the web usable for everyone as web bloat locks people from countries with slower internet speeds out.

danluu.com21 min read

LAMBDA ON HARD MODE: INSIDE MODAL'S WEB INFRASTRUCTURE

Modal's HTTP and WebSocket stack for serverless functions allows for seamless web endpoint deployment and real-time communication capabilities. To overcome the limits of traditional serverless platforms, Modal designed a system that can handle demanding workloads, offering extensive CPU, memory, and GPU resources. Modal treats HTTP/WebSocket requests like function calls and leverages Rust and ASGI (Asynchronous Server Gateway Interface) for efficient processing.

modal.com20 min read

PASSKEYS – UNDER THE HOOD

Passkeys are an alternative to traditional passwords designed to be phishing-resistant and user-friendly. Unlike hardware security keys, passkeys can be backed up and synced across devices. However, since the private key is stored on the device with passkeys, this can potentially make passkeys less secure than hardware keys, unless private keys are exportable.

research.kudelskisecurity.com9 min read

02OPINIONS & ADVICE

HERE'S WHAT DEVELOPERS FOUND AFTER TESTING DEVIN AI

Devin AI is a recently released software engineering tool. This post looked at how Devin created 4 projects: setting up a Chatbot, creating a US airport map, developing a chess website, and crafting a Chrome extension. It highlights Devin's coding and debugging capabilities and potential to replace software developers.

favtutor.com8 min read

A FEW WORDS ON TESTING

Years of encountering slow, unreliable tests and fixing bugs without adding tests have shaken this author’s faith in testing as the ultimate quality indicator. There are many high-quality projects that run surprisingly few tests. The key to software quality isn't the amount of testing, but rather prioritizing tests based on developer judgment and having developers that deeply care about their work.

registerspill.thorstenball.com4 min read

THE HIGH-RISK REFACTORING

Before starting a refactor, developers should carefully assess the potential costs of failure (lost revenue, damaged trust, etc.) and how those risks can be mitigated. Refactors should be isolated from feature development and be rigorously tested. Sometimes, the best choice can be to not do a refactor.

webup.org7 min read

03LAUNCHES & TOOLS

Sponsored

CLOUD COST MANAGEMENT BY THE TEAM BEHIND EC2INSTANCES.INFO

You’ve probably used EC2Instances.info [11] to price out and compare your AWS workloads. The data for EC2Instances comes from Vantage [10], a cloud cost optimization platform for AWS, Azure, Kubernetes, and a dozen other cloud services. Sign up to [12] get a

vantage.shSponsor

SATCSS

A CSS refactoring tool that minimizes CSS files.

github.comGitHub repository

PRETZEL

Pretzel is an offline tool for exploring and visualizing large datasets directly within a web browser. Its interface and automatic updates streamline data manipulation, eliminating the need for complex setups.

github.comGitHub repository

UI KIT

A UI kit for building performant 3D user interfaces for Three.js in React with support for nested scrolling, buttons, inputs, dropdowns, tabs, checkboxes, and more.

github.comGitHub repository

04MISCELLANEOUS

WHAT WE CAN LEARN FROM THE HELLDIVERS 2 AND PALWORLD LAUNCHES

When games have unforeseen popular launches, like Palworld and Helldivers 2 did, it can be hard for them to stay online under such heavy load. Several factors contribute to launch failures: inadequate server capacity, unforeseen bugs appearing at scale, poor community management, and underestimating player demand. To manage these issues, some companies use flexible scaling solutions with cheap servers (like Google Cloud) or carefully design games to reduce complexity (like Thatgamecompany), while others focus on increasing the number of players in a single instance (like Unchained Entertainment).

venturebeat.com16 min read

THE RETURN OF THE FRAME POINTERS

Frame pointers are used for reliable debugging and profiling and allow tools to accurately trace program execution. A 2004 compiler change removed frame pointers by default to slightly boost performance, breaking many profilers and debuggers. Decades later, Fedora and Ubuntu are now releasing versions with frame pointers enabled by default, vastly improving the accuracy of profiling tools.

brendangregg.com12 min read

USE LEGACY LINES OF CODE TO ESTIMATE A SOFTWARE REWRITE

Estimating software rewrites is difficult due to the hidden complexities within legacy code. A useful way to estimate a rewrite is to count the lines of code in an existing system, which represents the project’s complexity. Based on this, you can create an estimate as such: Developer Days = Total LOC / LOC per Day per Developer.

spin.atomicobject.com8 min read