Tech is political: The people under attack in Palestine 🇵🇸, Iran 🇮🇷, and Lebanon 🇱🇧 are people like us. They’re our brothers and sisters, too. Read up on their history, scrutinize what you’re told, and demand that they be respected. Hide

Frontend Dogma

“2024” News Archive

Definition, related topics, and tag feed

“2024” RSS feed (per email)

Entry (Sources) and Additional TopicsDate#
Framework Benchmarks (lis)3265
websites, frameworks, metrics, react, angular, svelte, preact, solidjs, qwik, vuejs, jquery, alpinejs, lit, comparisons
CSS Is Emotional: The Psychology of Specificity3264
css, cascade
Do I Need This Node Dependency? (bri)3263
nodejs, dependencies
A Gentle Introduction to Using a Vector Database3262
introductions, databases, vector-databases, javascript, ai, openai
Kagi, Orion, and Gopher (geo)3261
orion, kagi, browsers
Breaking Up With Long Tasks or: How I Learned to Group Loops and Wield the Yield (rvi/per)3260
performance, javascript, loops
Fabulous Font-Face Fallbacks (sto/per)3259
performance, css, fonts, typography
Designing Websites for Bad Performance (per)3258
performance, caching, web-workers, hints, optimization
5 Reasons Your Direct Traffic Can Suddenly Drop (moz)3257
traffic, analytics
Consistency Means Nothing (pjo)3256
consistency
December 2024 Google Core Update (mor/sem)3255
google, search
Page Weight (dws+/htt)3254
web-almanac, studies, research, metrics, performance, storage, web-vitals
Shallow Clones Versus Structured Clones (phi)3253
javascript
TypeScript Without Build Tools (chr/fro)3252
typescript, monorepos, tooling, link-lists
Your App Should Have Been a Website (and Probably Your Game Too)3251
mobile, native, web-apps, browsers, web-platform
The 20 Commandments of Software Engineering3250
principles, programming, complexity, documentation, commit-messages, code-reviews, dependencies, maintenance, collaboration
Using DevTools to Validate Web Performance Improvements (nuc/per)3249
performance, dev-tools, browsers, chrome, google
Datalists Are More Powerful Than You Think (two/mat)3248
html
Media (ste+/htt)3247
web-almanac, studies, research, metrics, multimedia, images, html
The Must-Have SEO Checklist for Developers for 20253246
seo, checklists, metadata, urls, performance
Using Iframes to Embed Arbitrary Content Is Probably a Bad Idea (tem)3245
iframes, embed-code, keyboard-navigation, scrolling, screen-readers, accessibility
Why Metrics Cannot Measure Software Development3244
programming, metrics, efficiency, productivity
After Rome Failure, VoidZero Is the Newest Attempt to Create Unified JavaScript Toolchain (inf)3243
voidzero, javascript, tooling
Boost Website Speed With Prefetching and the Speculation Rules API (sch/mat)3242
performance, hints, speculation, apis
CSS: How to Indicate Container Overflow, When There Is Overflow (j9t)3241
how-tos, css, overflow, techniques
Improve Accessibility of User Authentication (cer)3240
accessibility, authentication, forms, labels, validation
The Ultimate Tech Stack for Startups in 20253239
tech-stacks, nextjs, tooling
Misleading Icons: Icon-Only-Buttons and Their Impact on Screen Readers (ale/mat)3238
html, buttons, icons, images, accessibility, screen-readers
Node.js Now Supports TypeScript by Default (mat)3237
nodejs, typescript, support
Principles of Web Accessibility (hey)3236
accessibility, principles
“text-box” (fon)3235
css, typography, spacing
Why Heading Order Matters in HTML (gra)3234
html, headings, accessibility
Linux Commands and Concepts Every Developer Should Know3233
unix-like, command-line
Is It “Frontend” or “Front-End” or “Front End”? (mar)3232
guest-posts, terminology
My Favorite Web Performance Graphs of the Year (fab/per)3231
performance, metrics, visualization
URLs and Percent Encoding3230
urls, encoding
AI Needs So Much Power, It’s Making Yours Worse3229
ai
Baseline Data Choices (chr/fro)3228
browsers, support, progressive-enhancement
Nothing Moves3227
design, animations
The Underrated “<dl>” Element (luh/mat)3226
html, lists
Don’t Let Your Redesign Ruin Performance: A Case Study (mac/per)3225
performance, redesigning, case-studies
Preloading Fonts for Web Performance With “link rel=preload” (acc/mat)3224
performance, preloading, fonts, html, hints
Correlation or Causation: How Web Performance Proves Its Value (per)3223
performance, testing, metrics
CSS “margin-trim” and Line Height Units (jen/5t3)3222
css, margins, typography, units
The Search Input: They Almost Got It Right (stv/mat)3221
html, forms, labels, screen-readers, assistive-tech, accessibility
Concurrency vs. Parallelism3220
programming, concurrency, concepts, comparisons
Crawling December: CDNs and Crawling (gee+)3219
seo, crawling, content-delivery
The Curious (Performance) Case of CSS “@import” (erw/per)3218
performance, css, history
Caching Optimizations3217
json, caching, optimization, performance
15 Principles for Secure Programming (rak)3216
security, principles, validation, testing
A CSS Wishlist for 2025 (mon/css)3215
css, wish-lists
CSS Wants to Be a System (dav)3214
css
How to Use Baseline Data (rac/5t3)3213
how-tos, web-platform, browsers, support, documentation
JavaScript Benchmarking Is a Mess3212
javascript, performance
The Design Leader Dilemma (boa/sma)3211
design, leadership, principles, policies, prioritization
The Devil Is in the “<details>” (mat)3210
html, disclosure-widgets
Why Are We So Rubbish at Accessibility? (car)3209
accessibility, craft, culture
Relearning Dart3208
dart, flutter
Broadcast Channel API (5t3)3207
apis, javascript
Don’t Hide Skip Links (oze)3206
accessibility, skip-links, hiding
My Approach to Running a Link Blog (sim)3205
blogging, links, content, writing, community
On Long Term Software Development (ber)3204
maintainability, maintenance, dependencies, foss, testing, complexity
Please Keep Your HTML Tables Clean and Lean, if You Really Need to Use Them (cer)3203
accessibility, html, tables
PSA: Stop Using the “title” Attribute as Tooltip (dni/mat)3202
html, attributes, tooltips, toggles, accessibility
Frontend Engineer at Adobe Interview Experience3201
career, interviewing, adobe
Build Your Own Site Speed Testing Tool With Puppeteer (per)3200
performance, testing, puppeteer
AWS S3 Deep Dive3199
deep-dives, aws, s3, storage
Create Stunning Dashboards With ReactJS: Step-By-Step Guide3198
guides, react, visualization
Mastering npm Scripts: Automate Everything in Your Frontend Workflow3197
npm, dependencies, environments, ci-cd, automation
Accessibility First: How to Design Inclusive Frontend Experiences3196
how-tos, design, accessibility, html, semantics, alt-text, keyboard-navigation, aria, contrast, forms, focus
CSS “light-dark()” (may/5t3)3195
css, functions, dark-mode
Grouping Form Fields (mat)3194
html, forms
Important Topics for Frontend Developers to Master in 20253193
learning, javascript, typescript, css, frameworks, git, apis, testing, performance, security, ci-cd, websockets
Matt Mullenweg, WordPress, and the Battle for Control of the Internet (web)3192
automattic, wordpress, wp-engine, web
Unattributed Navigation Overhead (UNO) (tim/per)3191
performance, metrics
A Progress Update on “reading-flow” (rac)3190
css, layout
AI and the Future of Accessibility With Dr. Gregg Vanderheiden3189
podcasts, interviews, accessibility, assistive-tech, ai, outlooks
“AsyncLocalStorage”: Simplify Context Management in Node.js (tre)3188
nodejs, javascript, asynchronicity
Biggest Privacy Erosion in 10 Years? On Google’s Policy Change Towards Fingerprinting3187
google, privacy, fingerprinting
JS Import Maps (5t3)3186
javascript, dependencies, import-maps
My Favourite Colour Is Chuck Norris Red (val/mat)3185
html, colors
No ARIA Is Better Than Bad ARIA (kar)3184
videos, accessibility, aria, html
Scroll-Driven and Fixed (chr/fro)3183
css, animations, scrolling, positioning
8 Most Important System Design Concepts You Should Know3182
videos, architecture, system-design, concepts
Data-Driven SEO and Web Performance (tod/per)3181
seo, performance, web-vitals
CSS “box-decoration-break” (kil/5t3)3180
css
CSS Display Module Level 4 (tab+/w3c)3179
css, standards, layout
CSS Multi-Column Layout Module Level 2 (rac/w3c)3178
css, standards, layout
Getting Oriented With HTML Video (sco/mat)3177
html, multimedia, web-components
The Cloud and the Climate: Navigating AI-Powered Futures (mrc)3176
podcasts, interviews, cloud-computing, ai, sustainability
I Reduced AWS Bills by 80% Just by Optimizing Node.js Code3175
aws, economics, nodejs, optimization
11 YAML Configurations for DevOps Automation3174
yaml, configuration, dev-ops, ci-cd, automation, examples
CSS Layouts: Creating Structure and Flow (ath)3173
css, layout, flexbox, grids
Detecting Web Performance Regressions Using Statistical Tools (pet/per)3172
performance, regressions, tooling
Is Figma Dev Mode a Worthwhile Tool for Developers? (ele/des)3171
guest-posts, figma, developer-experience, tooling
The Bad Apple Effect: How Negativity Can Sabotage Teams’ Performance3170
collaboration, culture, engineering-management
Announcing a Free GitHub Copilot for VS Code (bur/vsc)3169
microsoft, github, github-copilot, vs-code, code-editors, ai
Declarative Shadow DOM (sch/5t3)3168
shadow-dom, dom, web-components
How to Create Multi-Step Forms With Vanilla JavaScript and CSS (css)3167
how-tos, forms, javascript, css
Microdata for Books (ala/mat)3166
html, microdata
The European Accessibility Act: Understanding Digital Accessibility (coo)3165
accessibility, legal, eaa
The Future of CSS: Construct “<custom-ident>” and “<dashed-ident>” Values With “ident()” (bra)3164
css, functions, transitions
Have an Accessible New Year With These 12 Resolutions3163
accessibility, captions, wcag, testing, headings, modals
Speculative Loading and the Speculation Rules API (qcn/per)3162
performance, speculation, apis
New to the Web Platform in December (rac)3161
release-notes, web-platform, browsers, safari, apple, chrome, google
BITV 2.0 and the Future of Digital Accessibility in Germany (lev)3160
bitv, legal, compliance, accessibility
Become a Better Developer With Clean Code Essentials: YAGNI, KISS, and DRY in Software Engineering3159
fundamentals, principles, minimalism, simplicity, maintainability
CSS “content-visibility” (kno/5t3)3158
css
CSS “::target-text” for Text Highlighting (tre)3157
css, selectors
How I Gained a New Perspective on ARIA (mei/mat)3156
accessibility, aria
How to Make Your Angular Projects More Accessible3155
how-tos, angular, accessibility, examples
HTML Conformance: A Comparison of 6.5 npm Validator Packages (With 1.5 Recommendations) (j9t)3154
html, conformance, tooling, npm, comparisons
Stylish Holidays! Creating a Scroll-Driven Christmas Tree in CSS (uti)3153
css, svg, animations, scrolling, effects
WebAssembly JavaScript Interface (w3c)3152
standards, webassembly, javascript, apis
State of JavaScript 2024 [Results] (sac/dev)3151
surveys, metrics, javascript
CSS “text-wrap” (mey/5t3)3150
css, typography
Ethical Web Principles: Building a Better Web (tor/w3c)3149
web, ethics, principles, processes, advocacy
How to Automate OWASP Security Reviews in Your Pull Requests? (cod)3148
how-tos, security, owasp, automation, code-reviews, coderabbit
Never Forgive Them (edz)3147
web, ai, user-experience, economics
React 19 and Web Component Examples (chr/fro)3146
react, web-components, examples
The Top 20 Tools UX Designers Should Know (uxm)3145
design, user-experience, tooling, link-lists
You Don’t Need the “isOpen” Class (mau/mat)3144
html, aria, accessibility
Re-Imagine the Web With View Transitions (bra)3143
css, view-transitions
When Users Interact (blu/per)3142
performance, user-experience, metrics, link-lists
Recap of the State of the Word 20243141
wordpress
Developer Guide: How to Implement Passkeys3140
guides, how-tos, authentication, security, passkeys
Why Product Owners Should Not Assign Work3139
agile, scrum, processes, product-management
Advanced and Creative TypeScript Techniques for Professionals3138
typescript, type-safety, techniques
Exploring Hono JS: Fast, Minimal, and Easy to Use Web Framework3137
hono
HTML “inert” Attribute (stv/5t3)3136
html, attributes
The Gift You Do Not Want: A Div in a Button’s Clothing (mat)3135
html, buttons, accessibility
Creating Shared Ownership for Web Performance From a Cryptic CSS Values (per)3134
performance, web-vitals, monitoring, css
11 Essential JavaScript Hooking Techniques for Reverse Engineering in 2024 (xiu)3133
javascript, debugging, techniques
Animating Entry Effects (ty/5t3)3132
css, animations, transitions, effects
How to Dehumanize Accessibility With AI (ash)3131
how-tos, accessibility, ai
Page by Page: How Pagination Makes the Web Accessible (mat)3130
accessibility, pagination, html, css, svg
Potential Dangers of Status Messages (cer)3129
accessibility, wcag, microcontent
Towards Measuring INP on All Browsers and Devices (iva/per)3128
performance, web-vitals, browsers
“align-content”: The Simplest Way to Center Content With CSS (tre)3127
css, centering
ARIA in HTML (sco+/w3c)3126
standards, accessibility, aria, html
“calc-size()” and Interpolate Size (kev/5t3)3125
css, functions, animations
How Strict Should We Be When Testing for WCAG Conformance? (sib/tpg)3124
videos, accessibility, wcag, compliance
Improving User Experience for Multilingual Web Browsing (mat)3123
user-experience, internationalization, html
Easily Check for Web Accessibility Problems in Ten Minutes or Less3122
accessibility, testing, keyboard-navigation, zooming
Your JavaScript Bundle Is Too Fat3121
javascript, bundling, performance, dependencies, code-splitting, lazy-loading, tree-shaking, minification, optimization
Node.js: A Brief History of CJS, Bundlers, and ESM3120
nodejs, commonjs, esm, bundling, history
Distributed Tracing in Node.js With OpenTelemetry (bet)3119
nodejs, observability, tracing, opentelemetry
Ethical Web Principles (tor+/w3c)3118
web, principles, ethics, w3c
HTML and CSS I Didn’t Even Know About Before I Started Creating Content in Japanese (mat)3117
html, ruby-markup, css, internationalization
Preventing Ageism in Design: Digital Accessibility for Older Adults (tpg)3116
accessibility, design, dei
Updated Drafts for Review: W3C Accessibility Guidelines (WCAG) 3.0 (w3c)3115
accessibility, wcag, w3c, standards
Customize Interpolation Syntax in Angular at Component Level3114
angular, components, customization
Top 10 Flutter Libraries in 20253113
libraries, flutter, dart
Why Your Logs Cost More Than Your Compute3112
logging, economics, processes
Full Stack GraphQL React Tutorial—Learn Apollo Client / Apollo Server for Beginners (ped)3111
videos, tutorials, graphql, react
A Deep Dive Into CommonJS and ES Modules in Node.js (app)3110
deep-dives, modules, commonjs, esm, nodejs
An Introduction to CSS Scroll-Driven Animations: Scroll and View Progress Timelines (sma)3109
introductions, css, animations, scrolling
Angular Signals: Reactive Programming Simplified3108
angular, signals, reactivity
Designer Problems: “Make the Logo Bigger!” (web)3107
design, logos, images
Makeshift Hot Reload (eva/mat)3106
html, metadata
Responsive Tables and Readable Paragraphs (chr/fro)3105
tables, responsive-design, css
The “Perilous Pitfalls” of Accessibility Maturity3104
accessibility, leadership, product-management
State of Node.js Performance 2024 (raf/nod)3103
nodejs, performance, metrics
8 Types of Load Balancing3102
load-balancing, architecture, servers, nginx
CSS Wrapped 2024: 17 Features Transforming Modern Web Design (web)3101
css, browsers, support, retrospectives
HTTP (pro/htt)3100
web-almanac, studies, research, metrics, http, protocols, hints, apis
On-Page SEO Checklist: The Complete Task List for 2025 (sem)3099
seo, checklists, html, semantics
Set Up a Micro-Frontend Architecture in 15 Mins With Vite3098
architecture, micro-frontends, vite
Site Reputation Abuse: Is Your Website at Risk? (moz)3097
seo, google
Solved by Modern CSS: Feature Image (sha)3096
css, images
Submit to the Quirks of HTML (fel/mat)3095
html, forms
To Whom Does the World Belong? (bos)3094
ai, legal, licensing
Wolvic 2024: A Year in Review (wol)3093
wolvic, igalia, browsers, retrospectives
WordPress Parent Company Must Stop Blocking WP Engine, Judge Rules (ver)3092
automattic, wordpress, wp-engine, legal
Spot Non-Composited Animations in Chrome DevTools (bra)3091
css, animations, dev-tools, browsers, chrome, google
Simple Web Performance Mentoring (per)3090
performance, monitoring, web-vitals, tooling, webpagetest
TypeScript: Zero to Hero Plus Cheat Sheet3089
typescript, cheat-sheets
Why You Should Use Laravel: Benefits of Laravel3088
laravel, php
Lifelong Learning in Tech (ema+)3087
learning, community
5 Technical Trends to Help Web Developers Stand Out in 20253086
trends, career, javascript, security, ai, low-and-no-code
Accessibility Fail Friday: “1” for “Yes” and “0” for “No”3085
accessibility, forms
AI and Accessibility: Ethical Considerations and Solutions (a11)3084
accessibility, ai, ethics
Mastering SVG Arcs (sma)3083
svg, images
Native HTML Light and Dark Color Scheme Switching (pep/mat)3082
dark-mode, html, css, javascript, functionality
WebKit Features in Safari 18.2 (jen+/web)3081
release-notes, safari, apple, browsers, webkit
Yet Another Anchor Positioning Quirk (mon/css)3080
css, anchor-positioning
AI Is Killing Coding (imp)3079
code-editors, ai, cursor
Top 5 DevOps Skills That Will Pay Big in 20253078
career, dev-ops, ai, observability, git, kubernetes
Putting Performance in Relatable Terms (eth/per)3077
performance, communication
Drizzle Database Migrations (ada/fro)3076
migrating, databases, tooling
Cloudflare Radar 2024 Year in Review3075
retrospectives, web, web-platform, metrics, comparisons, traffic, ip, http, embed-code, browsers
Accessibility Best Practices for Single Page Applications (SPAs)3074
accessibility, best-practices, single-page-apps
Buttons and Links3073
accessibility, buttons, links, wcag
Douglas Crockford Is Not Your Dad (tec)3072
websites, json, comments
Past HTML, Future HTML? (j9t/mat)3071
html
The Heartfelt Story Behind CSS’s New Logo (web)3070
css, history
What Makes a Great Engineering Manager? (tre)3069
engineering-management, career
Understanding the Main Thread in the Browser (per)3068
browsers, javascript, dom
Almost, but Not Quite, Entirely Unlike… (tin/mat)3067
accessibility, buttons, html, ai
Publishing a Simple Client-Side JavaScript Package to npm With GitHub Actions (sim)3066
dependencies, javascript, npm, github-actions
Your Website Is a Restaurant (boo/per)3065
web-platform, performance
Will AI Eat the Browser? (onm)3064
ai, xr, browsers, web
“aria-labelledby = self” (wes/mat)3063
accessibility, aria
Native CSS Nesting Is Here (tre)3062
css, nesting, examples
Node.js Delivers First LTS With “require(esm)” Enabled, Enhances Security and Release Automation (sar/soc)3061
nodejs, esm
Tools for Unmoderated Usability Testing (nng)3060
usability, testing, tooling
The Importance of Graceful Degradation in Accessible Interface Design (ele/sma)3059
design, accessibility, user-experience, graceful-degradation, progressive-enhancement
The Evolution of Instant Web: What It Means for Performance Tooling (per)3058
performance, tooling, web-vitals
What Do the State of CSS and HTML Surveys Tell Us? (rac)3057
web-platform, html, css, community
CSS “@supports”: Write Future-Proof CSS (tre)3056
css, feature-detection, progressive-enhancement
The State of UX in 2025: A Love Letter About Change (fab)3055
user-experience, design, outlooks
Exploring the Core Concepts of Node.js Readable Streams (pav)3054
nodejs, streaming, concepts
Forced Colors Mode Futility (css/mat)3053
colors, contrast, css, accessibility
Knowing CSS Is Mastery to Frontend Development (hel)3052
css, frameworks, career
Multi-State Buttons (pre/fro)3051
buttons, css
React v19 (rea)3050
release-notes, react
The Complete Guide to ARIA Live Regions for Developers (flo/a11)3049
guides, accessibility, aria, live-regions
What Is HTML Optimization? What Is It Not? (j9t)3048
html, optimization, terminology
When Is a Skip Link Needed? (tpg)3047
accessibility, skip-links, keyboard-navigation, focus
CSS Wrapped 2024 (arg+)3046
css, browsers, support, retrospectives
The Importance of Hover States3045
design, interaction-design, link-lists
Build a SolidJS App With Deno (den)3044
solidjs, deno
24 Best AI Tools for Developers in 2025 (moz)3043
tooling, ai, link-lists
Angular 19: Standalone Updates3042
angular
Control the Viewport Resize Behavior on Mobile With “interactive-widget” (bra/mat)3041
css, units, viewport, resizing, mobile, metadata, html
Googling Is for Old People: What This Means for Web Designers (web)3040
design, mobile, search, google
How React Compiler Performs on Real Code (ade)3039
react, compiling, rendering, memoization
How to Fix Storybook Screenshot Testing (not)3038
how-tos, testing, screenshots, images, storybook, vitest
How to Include Web Accessibility in Your Content Writing Process (pop)3037
how-tos, accessibility, content, writing, processes
How to Include Web Accessibility in Your Web Development Process (pop)3036
how-tos, accessibility, processes, tooling, webaim
It’s Not AI, It’s State-of-the-Art Exploitation (laq)3035
ai, myths
Release Notes for Safari Technology Preview 209 (jon/web)3034
release-notes, safari, apple, browsers
Just Say “No” to JavaScript (nic/inf)3033
javascript, typescript, programming
A Leap in the Evolution of Airtable’s Codebase: Scaling TypeScript to Thousands of Projects3032
typescript, scalability, case-studies
How Does the React Compiler Perform on Real Code (ade/per)3031
react, compiling, rendering, memoization, performance
React vs. Angular: Which Framework Should We Choose in 2024 and 2025? (bhu)3030
frameworks, react, angular, comparisons
The World Doesn’t Need More Managers—It Needs People Who Care Enough to Lead3029
design, leadership
Creating an Effective Multistep Form for Better User Experience (sma)3028
forms, html, javascript, user-experience
Smooth Multi-Page Experiences With Just a Few Lines of CSS (joh/mat)3027
css, transitions, effects
The Pixel Canvas Shimmer Effect (hex)3026
web-components, effects
Why We Switched to Astro (and Why It Might Interest You) (ste)3025
migrating, nextjs, astro
You Should Have a Website (nor)3024
manifestos, career
What a Web Performance Engineer Needs to Know About Cloud Cost Savings (per)3023
performance, cloud-computing, economics, efficiency
Pure CSS Halftone Effect in 3 Declarations (ana/fro)3022
css, effects, halftone
Astro 5.0 (eri+)3021
release-notes, astro
A Beginner’s Guide to Information Architecture in UX3020
guides, information-architecture, user-experience
Privacy (max/htt)3019
web-almanac, studies, research, metrics, privacy, apis
A Layered Approach to Speculation Rules (css)3018
performance, speculation
Hints and Suggestions: The Design of Web Design (mia/btc)3017
videos, design, css, cascade, history
How GenAI Impacts User Experiences—Even Beyond AI (uxm)3016
user-experience, ai, processes
How to Stay and Grow in Tech (Especially if You’re a Minority) (bla)3015
how-tos, career
SEO (jam+/htt)3014
web-almanac, studies, research, metrics, seo, robotstxt, metadata, structured-data, amp, internationalization
Starting Off Right: Where Autofocus Shines (kil/mat)3013
html, forms, focus
The HTML Native Search Element (tre)3012
html, semantics
The Logical Border Radius Equivalents (chr/fro)3011
css, borders, logical-properties, internationalization
WPT: An Overview and History (boa/boc)3010
overviews, history, web-platform, testing
The Danger of Defaults (nng)3009
videos, usability, design
DreamHost Removed From WordPress.org’s Recommended Hosting Page3008
wordpress, hosting
I Was Laid Off From Spotify One Year Ago: Here’s What I’ve Learnt3007
user-experience, career
Run Your Next.js SSR App on Deno Deploy (orr/den)3006
nextjs, deno, hosting
A Link on a Logo in the Header, What Should the Alt-Text Be? (ria/mat)3005
accessibility, branding, links, logos, images, alt-text
Blast From the Past: 2advanced.com (web)3004
design, flash, history, case-studies
CSS Advent Calendar3003
websites, css, examples
CSS Selectors Advent Calendar 20243002
css, selectors, examples
Designed With Care (rac)3001
websites, books, accessibility, design, content, compliance
Development Advent Calendars for 2024 (aar)3000
link-lists, learning
How to Clamp the Lightness of a Relative Color in CSS (ang)2999
how-tos, css, colors, functions
How to Usability Test Your Product (if You Want Bad UX) (ada)2998
how-tos, usability, user-experience, testing
Goodhart’s Law in Action: 3 Webperf Examples (nom/per)2997
performance, principles, lighthouse, web-vitals, metrics, google, examples
How to Join Blue Beanie Day: Wear and Share (zel)2996
awareness-days, standards, how-tos
Turn Off AI Features by Default (to Reduce Their Climate Impact) (hdv)2995
ai, sustainability, tooling
Why You Should Avoid Grand System Redesigns2994
videos, refactoring, software-design, architecture
The Future of Front-End Development: Trends to Watch in 2025 (max)2993
ai, qwik, solidjs, webassembly, esm, design-systems, headless, accessibility, sustainability, dev-tools, low-and-no-code
Angular v19 No Signals Edition (arm/dan)2992
angular
Character-Based Alignment (css)2991
html, css, alignment
Design Systems Are Dead—Long Live Design Systems (lur/zer)2990
design-systems, tooling, outlooks
Don’t Fuck With Scroll2989
websites, scrolling, user-experience, usability, accessibility, maintainability
If Not React, Then What? (sli)2988
frameworks, client-side-rendering, react, user-experience, performance
Stop Aiming for Compliance: Craft a Better Product Strategy Instead (tho)2987
accessibility, compliance, product-management, strategies, processes
Why Pipes Sometimes Get “Stuck”: Buffering (b0r)2986
command-line, unix-like
8 PHP Performance Tips Every Developer Should Know2985
php, performance, tips-and-tricks, conditionals, caching
Let’s Learn Generators in JavaScript2984
javascript, functions
The Many Faces of Digital Accessibility (aar/a11)2983
videos, accessibility, career
Designing Your Own Accessibility Vendor Monitoring Program (a11)2982
videos, accessibility, business-relations, monitoring
A False Sense of Accessibility: What Automated Testing Tools Are Missing (a11)2981
videos, accessibility, testing, automation, tooling
10 Git Commands You’ll Wish You Knew Earlier2980
git, command-line
A Quick Snapshot of the Microblogging Landscape (tch)2979
social-media, comparisons, twitter+x, bluesky, facebook+meta, mastodon, fediverse
Beyond JSON: Exploring File Formats for Design Tokens (stu)2978
design-tokens, json, yaml, comparisons
Decoupling OKRs: It’s Time to Let Go (cwo)2977
okr, processes, prioritization, leadership
Observation: CSS Math Eval (kiz)2976
css, javascript, math
Prisma 6: Better Performance, More Flexibility, and Type-Safe SQL (pri)2975
release-notes, prisma
Preloading Responsive Images (tre)2974
images, html, hints, performance, preloading
New to the Web Platform in November (rac)2973
release-notes, web-platform, browsers, firefox, mozilla, chrome, google
Understanding CSS Inheritance: A Guide to Consistent Styling2972
guides, css, cascade, inheritance
When Is It Time to Move Prototyping From Figma to ProtoPie?2971
design, prototyping, tooling, figma
The 5 Most Transformative JavaScript Features From ES15 (tar)2970
javascript, ecmascript
Jekyll to Astro: An AI-Assisted Migration2969
migrating, jekyll, astro, ai, tooling
Program Errors Out of Existence (ale)2968
programming, errors, principles
The Hype Around Signals (ati/sma)2967
frameworks, libraries, signals
Avoid Hotlinking Images With “Cross-Origin-Resource-Policy”2966
images, security
Is Next.js 15 Any Good? “Use Cache” API First Look (fir)2965
videos, nextjs, apis
How to Cut Water Usage in Cloud Data Centers2964
how-tos, infrastructure, sustainability
Create Accessible Websites: Top Free Tools You Need to Know2963
accessibility, testing, jaws, nvda, screen-readers, linting, tooling
Unit Testing in Node.js With Jest (app)2962
nodejs, testing, jest
Contributing to JavaScript and TypeScript (rob)2961
videos, javascript, typescript, foss, standards
Optimizing JavaScript Engine Performance (goo)2960
videos, javascript-engines, performance, optimization
Faster TypeScript Compilation (ash)2959
videos, typescript, compiling, performance
Building Better CLI Apps (mol)2958
videos, typescript, javascript, command-line, tooling
A Button Is Not a Link (mor/mat)2957
html, buttons, links
A Framework for Evaluating Browser Support (jos)2956
browsers, support, web-platform, graceful-degradation
Agile Is Dead2955
websites, manifestos, agile, processes, collaboration, communication
Automated Decision Logs in AI-Assisted Coding (add)2954
ai, logging
Designing (and Evolving) a New Web Performance Score (css)2953
performance, metrics
How I Feel About AI (jes)2952
ai, programming, productivity, ethics, sustainability
The Free Web (jay)2951
web, culture
Which IDEs Do Software Engineers Love, and Why? (ger)2950
code-editors, cursor, vs-code, jetbrains, neovim
Why AI Can’t Replace Developers: The Real Limits of AI in Coding2949
ai, programming
I Removed VS Code, and My Productivity Improved Tremendously (cod)2948
code-editors, vs-code, microsoft, neovim, comparisons, productivity
State of Software Architecture Report—20242947
architecture, metrics
X’s Objection to the Onion Buying Infowars Is a Reminder You Do Not Own Your Social Media Accounts (404)2946
social-media, twitter+x
Deno vs. Oracle: Canceling the JavaScript Trademark (tin/den)2945
deno, oracle, javascript, legal
From Gatsby to Eleventy (mat)2944
migrating, gatsby, eleventy, webc, performance
How Browsers Really Load Web Pages (pro/wel)2943
videos, browsers, rendering, parsing, http, performance
Language of Parts Bookmarklet (bea)2942
bookmarklets, html, metadata, accessibility
The End of the Twitter Era (san)2941
social-media, twitter+x, mastodon, facebook+meta, bluesky
WebAssembly (Wasm): When (and When Not) to Use It (tre)2940
webassembly
Design Systems vs. Style Guides (nng)2939
videos, design-systems, style-guides, comparisons, design, documentation
How to Comply With DOJ’s Seemingly Impossible Web Accessibility Regulation2938
how-tos, accessibility, legal, compliance
What Causes “Bad Days” for Developers?2937
studies, research, productivity
Figma Releases the Pattern Library (web)2936
figma, pattern-libraries
Interop and Hard Problems (bka)2935
web-platform, browsers, support, interoperability
The Semantic Interface Palette Is Simple2934
design, design-tokens, semantics, figma
JavaScript Events Made Easy: A Comprehensive Guide for Beginners2933
guides, events, javascript
Mastering JavaScript Event Delegation2932
javascript, events
Old Alt Text Advice (ste)2931
accessibility, images, alt-text, html, microcontent, best-practices
The Death of Creativity and Imagination2930
creativity, ai, prompting
Content Security Policy Level 3 (mik/w3c)2929
standards, csp, security
Git Like a Pro: 10 Things I Regret Not Knowing Earlier2928
git, command-line
Recursion Explained in Simple Terms (tre)2927
programming, concepts
Solved by CSS: Donuts Scopes (mon/css)2926
css, scope
The PHP Foundation Turns Three (the)2925
php, anniversaries
Using Severity Ratings to Prioritize Web Accessibility Remediation (web)2924
accessibility, prioritization
Screenshot-Driven Development (bla/ope)2923
processes, design, tooling
Avoid Read-Only Controls (aar)2922
html, forms, accessibility
CSS Selectors: Unlocking Advanced Selectors for Modern Web Design2921
css, selectors
Doing the Numbers: Digital Accessibility and Shifting Left (deq)2920
accessibility, processes, metrics, economics
Tailwind CSS v4.0 Beta 1 (ada/tai)2919
tailwind
Where Has All the Valid HTML Gone (j9t)2918
html, conformance, quality
Why Accessibility Matters for Your SEO Strategy (a11)2917
accessibility, seo, strategies
Every Developer Should Know These Postman Tips and Tricks2916
postman, tips-and-tricks
Exploring Alternative Interactions in JavaScript (dev)2915
videos, javascript, ai, interaction-design
What’s Next for WebGPU (dak)2914
webgpu
I Don’t Have Time to Learn React (kei)2913
career, craft, prioritization, react
Node.js 22 Runtime Now Available in AWS Lambda2912
nodejs, aws, serverless, lambda
Why We Need to Have a Change of HEART With UX Metrics2911
user-experience, metrics, product-management
Third Parties (htt)2910
web-almanac, studies, research, metrics, embed-code, monetization, analytics, content-delivery, hosting, marketing, social-media, tag-management, multimedia, consent-management
Introducing the Leader’s Guide to Accessibility2909
guides, introductions, accessibility, leadership, processes, terminology
An Outline Version of the New CSS Logo (kil)2908
css
Avoiding False Positives in Node.js Tests (app)2907
nodejs, testing
Make Creative Borders With “background-clip: border-area” (jen/web)2906
css, borders, backgrounds, safari, apple, browsers
My 3 Most-Wanted CSS Table Features (dar)2905
css, html, tables, wish-lists
Privacy Principles (rob+/w3c)2904
privacy, principles
So You Decided to Do a Technical Migration (loc/btc)2903
videos, migrating, maintenance
What We Learned Migrating From Webpack to Vite2902
migrating, webpack, vite, lessons
How to Use Lighthouse Wisely in Your Front-End Projects (ele/des)2901
guest-posts, how-tos, lighthouse, google, performance, accessibility, seo, best-practices
React.js Best Practices for Beginners: A Comprehensive Guide2900
guides, best-practices, react, components, state-management, hooks, debugging
Static Site Generation With Next.js: Using Next.js for React.js Applications2899
static-site-generation, site-generators, nextjs, react
WP Engine Updates Its Original Legal Complaint Against Automattic and Matt Mullenweg2898
wp-engine, automattic, wordpress, legal
The CSS Reset Contradiction (j9t)2897
css, resets
AI’s Transformative Impact on Web Design: Supercharging Productivity Across the Industry (boa/sma)2896
ai, design, processes, productivity
How to Prerelease an npm Package (spa/clo)2895
how-tos, npm, dependencies, versioning, semver
Mastering Accessible Modals With ARIA and Keyboard Navigation (a11)2894
accessibility, keyboard-navigation, aria, modals, javascript
Migrating From VuePress to VitePress (ole)2893
migrating, site-generators, vuejs
Node.js Corepack: Version Control for Package Managers (tre)2892
nodejs, corepack, versioning, dependencies, tooling
State of JavaScript 2024 (sac/dev)2891
surveys, javascript
Why Wasm: Quickstart2890
webassembly
Meet Angular v19 (mge/ang)2889
release-notes, angular
Anchor Positioning Is Disruptive (jam/odd)2888
css, anchor-positioning, layout
Foundations: Types of Disability (tet)2887
accessibility, fundamentals
Importing a Frontend JavaScript Library Without a Build System (b0r)2886
javascript, libraries, commonjs, esm, nodejs, html
Native Dual-Range Input2885
html, forms, css
No Fuss Light/Dark Modes (chr/fro)2884
css, dark-mode
Testing Digital Products the RITE Way (uxm)2883
usability, testing, processes
Why Responsive Design Is Failing Modern Users (web)2882
responsive-design, performance, usability, accessibility
20 Years of Firefox: How a Community Project Changed the Web (moz)2881
firefox, mozilla, browsers, history, anniversaries
The Future of Voice User Interfaces (uxm)2880
design, conversational-design, voice
Web Accessibility and the Second Trump Administration2879
accessibility, legal
AWS Lambda Turns Ten—Looking Back and Looking Ahead (jef)2878
anniversaries, aws, serverless, lambda, history, outlooks
Why Is Hiring Software So Impersonal?2877
tooling, hiring, user-experience
Addressing Users’ Painpoints: Best Practices for Identifying and Solving UX Design Problems (uxm)2876
user-experience, design, legibility, responsive-design, performance
Can [Open Source Pledge] Fix Open Source Sustainability? (tre)2875
foss, community, maintenance
Tailwind vs. Vanilla CSS—Should You Reconsider?2874
videos, tailwind, css
The Art of Clean Code: A Practical Guide to Writing Maintainable JavaScript2873
guides, principles, javascript, maintainability
The Tragedy of Running an Old Node Project2872
nodejs
CSS Gets a New Logo—and It Uses the Color “rebeccapurple” (mic)2871
css
My Issues With Shorthand Properties (hav)2870
css, shorthands
Content Design Practices for Sustainable Communication in Tech2869
content, communication, sustainability
The Root Causes for the Dev–Design Mismatch (ere)2868
design, collaboration, processes
[A Book Apart] Authors Together (dde)2867
websites, books, link-lists
Against Best Practices (arp)2866
programming, best-practices
Some Tips for Keyboard Support on Native Mobile Applications (cer)2865
accessibility, mobile, native, keyboard-navigation, tips-and-tricks
Exploring JavaScript Symbols (tre)2864
javascript
Ghost Jobs Should Be Illegal (tre)2863
hiring, legal
Help Your Code Reviewer (ant)2862
code-reviews, collaboration, communication, consistency, quality
The Next Improvement in Angular Reactivity2861
angular, reactivity
When Is the Right Time to Share Our Excitement About New Web Features? (rac)2860
web-platform, support, browsers
What Is User Experience (and What Is It Not)? (nng)2859
user-experience, terminology, comparisons
Alt Text: Not Always Needed (nng)2858
accessibility, images, alt-text, writing
1 + 2 Engineering Team Priorities (j9t)2857
engineering-management, leadership, culture, prioritization
10 Advanced TypeScript Concepts Every Developer Should Know2856
typescript, concepts
Adding Interactive Charts in Astro2855
astro, visualization, functionality
How Is Digital Accessibility Awareness Being Promoted Across the Globe? (oze)2854
accessibility, advocacy
State of HTML 2024 [Results] (sac/dev)2853
surveys, metrics, html
Reimagining Prototyping With AI2852
user-experience, design, prototyping, ai
Self-Contained Executable Programs With Deno Compile (tin/den)2851
deno, javascript, typescript, compiling
Accessibility Misinformation (col)2850
accessibility, wcag, apca
An Official Logo for CSS (arg)2849
css
Custom Progress Element Using Anchor Positioning and Scroll-Driven Animations (css/fro)2848
css, anchor-positioning, animations, scrolling, progress-indicators
Global Digital Accessibility Salary Survey (web)2847
accessibility, career, surveys
Learn Big O Notation Once and for All2846
algorithms, complexity, performance
Most Disabled People “Excluded” by Unfit Designs2845
accessibility, design, dei
The European Accessibility Act—Get Ready (int)2844
accessibility, legal, eaa
The Myth of “Accessible Components and Done” (mic)2843
accessibility, components, myths
Cookie Permissions: 5 Common User Types (nng)2842
videos, cookies, consent-management, usability, personas
AI Assistance Panel (mat)2841
dev-tools, browsers, chrome, google, ai
Modern CSS for Sites: View Transitions, Scroll Effects, and More (arg)2840
videos, css, view-transitions, scrolling, effects
View Transitions API: Single Page Apps Without a Framework (deb)2839
view-transitions, apis, single-page-apps, css
Why Developers Should Give Next.js App Router Another Chance2838
nextjs, routing
A CSS Logo Hatches! (arg)2837
css, community
AI Coding (pvd)2836
ai, tooling, code-editors, comparisons, cursor
Angular Best Practices2835
videos, angular, best-practices
Carving Your Space (hbu)2834
career, interviewing
Color in CSS or How I Learned to Disrespect Tennis (mat/btc)2833
videos, css, colors, functions
Overflow Clip (sha)2832
css, overflow, clipping
The Art in Everyday Life (sop)2831
art, creativity
The “br” Element (hey)2830
html, semantics
Understanding Bitwise Shifts in JavaScript: “<<” and “>>” (tre)2829
javascript, operators
What Accessibility Statements Are Really For2828
accessibility, documentation, legal
Let’s Talk About Memory Leaks in Dart and Flutter (flu)2827
dart, flutter, memory
Top 20 Platform Engineering Tools (spa)2826
platform-engineering, tooling, link-lists
My Favourite Software Architecture Patterns2825
architecture, micro-frontends, software-design-patterns
Automattic Launches “WP Engine Tracker” to Monitor Sites Leaving WP Engine, Sparking Controversy2824
automattic, wp-engine
New in Chrome 1312823
release-notes, chrome, google, browsers
How to Optimize Performance in Vue Apps (jac/deb)2822
how-tos, vuejs, performance, optimization
Why I Will Always Be Angry About Software Engineering (lud)2821
career, culture, programming
Accessibility (mgi/htt)2820
web-almanac, studies, research, metrics, accessibility
Are AI Assistants Making Us Worse Programmers?2819
career, programming, ai, craft, quality
CDN (htt)2818
web-almanac, studies, research, metrics, content-delivery
Don’t Forget to Localize Your Icons (eri)2817
localization, icons, images, culture
Ecommerce (htt)2816
web-almanac, studies, research, metrics, economics, ecommerce
Fonts (bra/htt)2815
web-almanac, studies, research, metrics, fonts
Implementing Astro Search Functionality2814
astro, search, functionality
Jamstack (mik/htt)2813
web-almanac, studies, research, metrics, jamstack, tech-stacks
Markup (gua/htt)2812
web-almanac, studies, research, metrics, html
Security (htt)2811
web-almanac, studies, research, metrics, security
(Up-)Scoped Scroll Timelines (chr/fro)2810
css, animations, scrolling
Design Tokens: Authoring vs. Consuming2809
design-tokens, design-systems, naming, comparisons
The Prompt API (tom)2808
chrome, google, browsers, apis, prompting, ai, gemini
Essential tsconfig.json Options You Should Use2807
typescript, configuration
Cookies (htt)2806
web-almanac, studies, research, metrics, content-delivery
Structured Data (htt)2805
web-almanac, studies, research, metrics, structured-data, semantic-web
CMS (htt)2804
web-almanac, studies, research, metrics, content-management
Sustainability (htt)2803
web-almanac, studies, research, metrics, sustainability
Performance (htt)2802
web-almanac, studies, research, metrics, performance
Anchoreum—a Game for Learning CSS Anchor Positioning2801
websites, learning, css, anchor-positioning
Biome.js, a Toolchain to Format and Lint Your Web Project2800
biome, formatting, linting, tooling
JavaScript Import Attributes (ES2025) (tre)2799
javascript, security
Should Destructive Buttons Be Hard to Find? (ada)2798
buttons, usability
Two Different Kinds of “Focusable” UI Elements (yat)2797
accessibility, focus, keyboard-navigation
Why Does JavaScript’s “parseInt(0.0000005)” Print “5”?2796
javascript
Why I Moved From Google Analytics to Simple Analytics (tre)2795
migrating, analytics, google
Test Smart: Which Automation Strategy to Choose for Peace of Mind?2794
testing, automation, strategies, product-management
5 Code Review Anti-Patterns You Can Eliminate With AI (ara/cod)2793
code-reviews, anti-patterns, ai, coderabbit
Five Lessons for Five Years in Tech (bek)2792
career, lessons
How a BBC Navigation Bar Component Broke Depending on Which External Monitor It Was On (jos)2791
debugging, javascript, case-studies
Node.js Implements Stricter Policies for Semver-Major Pull Requests Ahead of Release Deadlines (sar/soc)2790
nodejs
Release Notes for Safari Technology Preview 207 (jon/web)2789
release-notes, safari, apple, browsers
State of CSS and State of HTML 2024 (pat)2788
css, html
The Different (and Modern) Ways to Toggle Content (css)2787
content, toggles, modals, pop-overs
The Rebellion Will Be Federated (el)2786
fediverse, social-media, foss
The Path to Learn Web Development (fla)2785
learning, http, html, css, tooling, git, javascript, typescript, databases, frameworks
AI Features Must Solve Real User Problems (nng)2784
ai, user-experience, product-management
Mapping Over Promises in JavaScript (pmb)2783
javascript, promises
How to Identify Decorative Images and Boost Accessibility (a11)2782
how-tos, images, decoration, accessibility, html, aria
Next.js to htmx—a Real World Example (htm)2781
nextjs, htmx, migrating
Should Web Designers Learn JavaScript or CSS? (ope)2780
design, career, javascript, css
The Deterioration of Google (bal)2779
google, seo
The Lowdown on Dropdowns in HTML and CSS (zer)2778
html, css
Why Alpine Is the New jQuery and Why That Is an Awesome Thing (ray/fro)2777
alpinejs
How to Set Up Next.js 15 for Production in 2024 (jan)2776
how-tos, nextjs
Amazon Frontend Engineer Interview Experience 2024, Berlin2775
career, interviewing
Node.js Now Supports TypeScript Natively2774
videos, nodejs, typescript
Bluesky’s AT Protocol: Pros and Cons for Developers2773
social-media, bluesky, comparisons
Celebrating Innovation and Impact: JavaScriptLandia Community Awards (ope)2772
community, javascript
How to Automate TypeScript Code Reviews With Coderabbit (the/cod)2771
how-tos, typescript, code-reviews, automation, coderabbit
Maybe It Isn’t JavaScript (gee)2770
videos, javascript, seo, google
My Anti-Overlay Client Letter (acc)2769
accessibility, overlays, business-relations, communication, advocacy
Advanced Image Formats and When to Use Them: WebP, AVIF, HEIC, and JPEG XL2768
images, webp, avif, jpeg-xl, comparisons
Will AI Replace Web Developers? (fla)2767
ai, career
More Options for Styling “<details>” (bra)2766
html, disclosure-widgets, css