Front-end UI pranks that turned into production incidents
Gmail’s Mic Drop button and Stack Overflow’s Stack Egg are the two April 1st pranks worth studying: one ignored user intent, the other shipped a whole execution layer for a 24-hour gag.
Gmail’s Mic Drop button and Stack Overflow’s Stack Egg are the two April 1st pranks worth studying: one ignored user intent, the other shipped a whole execution layer for a 24-hour gag.
A contact form can be technically perfect and still lose the lead if the submission just lands in an inbox. Normalizing data in the browser, guarding against double submits, and structuring the webhook payload so a CRM can read it.
GenUI promises an interface generated per user in real time. The accessibility side is not there yet, from the criticism that met Figma Sites to Jakob Nielsen’s claim that individualized interfaces will fix a11y on their own.
The CSS corner-shape property paired with a scroll timeline, using superellipse() exponents instead of keywords, plus the isolation fix for mix-blend-mode breaking your stacking context.
Overflow clipping and stacking contexts, not z-index, are what break action menus inside scrollable tables. Portals, CSS anchor positioning and the Popover API each solve a different part of the problem.
Adding delight everywhere backfires. This post compares how anime handles a tonal shift against the Marvel background-gag habit, then covers Don Norman’s three levels and the microinteractions that hold a flow together.
Chromium made the native select element styleable. This walks through appearance: base-select, the ::picker pseudo-element, sibling-index() for per-option maths, and the anchor positioning that makes a radial picker possible, without giving up keyboard support.
A pass through the CSS landing in browsers now: random() and random-item(), clip-path folded corners, the containing-block catch in anchor positioning, and tabular-nums for WooCommerce dashboards that refuse to sit still.
Moment.js is in maintenance mode and still costs you bundle size. The JS Temporal API is native, immutable and Stage 4, so this walks through creating dates, arithmetic, Intl formatting and a time zone refactor in a WooCommerce extension.
SmashingConf Amsterdam runs in April 2026 at the Pathé Tuschinski. What pulled me in is the live-work format: speakers working through CSS and accessibility problems on stage instead of walking an audience through finished slides.