Syntax - Tasty Web Development Treats
Syntax - Tasty Web Development Treats

How does stuff get added to CSS? Adam Argyle answers!

In this episode of Syntax, Scott and Wes talk with Adam Argyle about how stuff gets added to CSS. LogRocket - Sponsor LogRocket lets you replay what users do on your site, helping you reproduce bugs and fix issues faster. It’s an exception tracker, a session re-player and a performance monitor. Get

Featured Speakers

Wes Bos & Scott Tolinski - Full Stack JavaScript Web Developers HostAdam Argyle Guest

Topics Discussed

Episode Summary

Executive Summary: Adam Argyle explains how CSS features move from idea to shipping browser support: public issues, proposal iteration, editor’s drafts, working drafts, implementer interest, web platform tests, intent to prototype/ship, and finally standardization. The conversation also covers design-system thinking, CSS “mistakes,” Houdini, Typed OM, privacy-driven browser decisions, and how developers can contribute meaningfully to the platform.

Main Topics: How CSS features get added: The episode centers on the lifecycle of a CSS feature, from a GitHub issue through proposal, drafts, implementation, testing, and shipping across browsers. Community and implementer roles: Adam explains that users, spec authors, and browser implementers all shape standards, with public GitHub discussion and weekly meetings guiding consensus. Drafts, tests, and shipping gates: The discussion breaks down editor’s drafts, working drafts, candidate recommendations, web platform tests, intent to prototype, and intent to ship as the main checkpoints. CSS language evolution and proposals: Examples like logical properties, color functions, CSS variables in media queries, and row-based selectors show how ideas are debated, refined, or delayed. Houdini and Typed OM: The episode highlights Houdini as a powerful, still-evolving area of the platform and introduces Typed OM as a richer JavaScript interface to CSS values. Mistakes and legacy decisions in CSS: Adam references a CSSWG document on mistakes and explains how some syntax and defaults reflect historical compromises that are difficult to change. Practical contribution paths: Listeners are encouraged to file issues, write Web Platform Tests, follow proposals, and engage with browser teams rather than only asking for features on social media.

Key Arguments: CSS is governed like a design system: it has maintainers, process, and staged evolution rather than arbitrary changes. A good feature proposal starts with a clear use case in a GitHub issue; a solution can be sketched, but the problem statement matters most. Time is part of standardization: discussion, counterproposals, and bikeshedding are expected and sometimes necessary. Implementer interest is essential; features need browser engineers to prototype and eventually ship them. Two browser implementations plus passing tests are key signals before a feature can be considered stable enough for broad standardization. Web Platform Tests are the web’s equivalent of unit tests and help browsers validate behavior against a shared spec. Privacy concerns can block or delay features if they expose fingerprinting or user-identifying surface area. Houdini is advancing and can unlock new layout, paint, and animation capabilities when paired with more structured CSS APIs. Typed OM reduces stringly-typed CSS/JS interactions by exposing typed values and enabling richer manipulation. Community input can accelerate a feature dramatically when the need is obvious, as with data-saver-related media queries.

Data Points: Years of CSS development before flexbox/grid maturity: 6–8 years - Scott notes that major CSS features can take many years to reach browsers. Adam Argyle age: 34 - He introduces himself as a 34-year-old developer from Seattle. Professional coding experience: 10+ years - Adam says he has written code professionally for over a decade. Weekly CSSWG conference calls: 1 per week - Adam describes regular working group calls where issues are discussed. Working group face-to-face meetings: 4 times a year - He says the group historically met in person quarterly, now often virtually. Browser engines mentioned: 3 major engines - Chromium, WebKit, and Firefox are discussed as the core ecosystem requiring broad implementation. Flex gap shipping milestone: Chrome Stable 85 - Adam mentions flex gap’s intent to ship and its Chrome stable release. Data saver proposal momentum: Fast path to candidate recommendation - He describes a proposal that moved quickly because the use case was obvious and supported. FreshBooks trial length: 30 days - Sponsor mention for FreshBooks unlimited free trial after entering Syntax. LogRocket trial length: 14 days - Sponsor mention for LogRocket free access through the Syntax link. Course promo discount: $10 off - Wes promotes a course coupon code offering an extra $10 off.

Pivotal Quotes: "How does stuff get added to CSS?" — Scott/Wes intro: The episode framing question that drives the whole discussion. "You can basically be like, This is a really common thing I build on the web, and man, there is nothing easy to help me out." — Adam Argyle: Explaining how to open a CSSWG GitHub issue with a clear problem statement. "We have web platform tests for the web." — Adam Argyle: Describing the test infrastructure used to validate CSS and browser behavior.

Implications: For developers, CSS isn’t a black box: features can be proposed, discussed, tested, and influenced. Understanding the process helps you advocate effectively, contribute tests, and adopt emerging features earlier.

🔓 Sign Up for Unlimited Episode Search

About Syntax - Tasty Web Development Treats

View all episodes from Syntax - Tasty Web Development Treats