······
····

Journal

Thoughts & Notes

01

Infrastructure

CDN for the ones who actually need it

A CDN — Content Delivery Network — is a system of servers spread across the globe. When a user opens your site, the files are sent not from one central server, but from the nearest node. This reduces the physical distance data has to travel, which means the page loads faster. Sounds simple, but in practice CDN is often recommended where it doesn't actually help.

Mar 30, 2026Read
02

Engineering

We don't build SPAs. Here's why.

A Single Page Application — SPA — works like this: the browser downloads a JavaScript file, runs it, and only then draws the page. Until the script executes, the user sees a blank screen or a spinner. On a fast laptop with a fast connection, this takes fractions of a second. On a mid-range phone on mobile internet — it can take 3–5 seconds. And those 3 seconds are the moment when most people leave.

Mar 25, 2026Read
03

Engineering

60 frames, no compromises

Animation quality is one of the clearest signals that separates a premium product from a mediocre one — even if users can't articulate why. When a page feels sluggish, when scrolling hitches, when a hover state flickers — that's a performance problem, not a design one. And it almost always comes from the same root cause: JavaScript doing work it shouldn't be doing.

Mar 20, 2026Read
04

Engineering

TypeScript: baseline, not an option

TypeScript is JavaScript with type annotations — descriptions of what kind of data a variable holds or a function expects. When you run a build, TypeScript checks that all these descriptions match the actual code. If something doesn't match, the build fails. This sounds like friction, but it's the same kind of friction that makes a car's seatbelt annoying to put on and catastrophic not to.

Mar 12, 2026Read
05

Design Systems

Tokens, not colors

A design token is a named variable that stores a design decision. Instead of writing the hex color #0a0a0e everywhere in your code, you write --color-surface-primary. Instead of hardcoding 16px as a padding value, you write --spacing-md. The difference seems small until you need to change something — and then it becomes enormous. Tokens turn a full-day find-and-replace into a one-line change.

Mar 5, 2026Read
06

Engineering

The metrics Google measures — and so do we

Core Web Vitals are three metrics Google uses to measure how a site feels to a real user. LCP — Largest Contentful Paint — measures how long until the main content of a page becomes visible. INP — Interaction to Next Paint — measures how quickly the page reacts to a tap or click. CLS — Cumulative Layout Shift — measures how much the layout unexpectedly jumps while loading. Together they're a reasonable approximation of 'does this site feel fast and stable'.

Feb 28, 2026Read
evolve team