Syntax - Tasty Web Development Treats

Full Stack Developers Wes Bos and Scott Tolinski dive deep into web development topics, explaining how they work and talking about their own experiences. They cover from JavaScript frameworks like React, to the latest advancements in CSS to simplifying web tooling.
Website : https://syntax.fm
IPFS Feed : https://ipfspodcasting.com/RSS/166/Syntax-TastyWebDevelopmentTreats.xml
Last Episode : March 26, 2025 11:00am
Last Scanned : 4.7 hours ago


Episodes
Episodes currently hosted on IPFS.
Confirmed 4
888: You Need a Monorepo × Client Only React × TanStack + MoreExpires in 43 minutes
Published Wednesday
887: Vibe Coding Is a Problem
Is Vibe Coding the future of software development or just a fun way to experiment? Scott and Wes talk about coding with AI, the risks of ignoring the details, and the cool (and sometimes cursed) projects they’ve Vibe Coded. Show Notes 00:00 Welcome to Syntax! 00:31 “Personal Software”. 01:30 What exactly is Vibe Coding. 02:46 The challenges of coding with AI. Levelsio Airplane Game. 04:49 Brought to you by Sentry.io. 05:39 Vibe coding quality concerns. 07:25 Vibe Coding as a learning tool. 10:11 Things we’ve Vibe Coded. Scott’s Piano UI on X. Episode 876: MIDI & Music In the Browser. Wes’ Roomba on X. Wes’ Roomba on YouTube. Hit us up on Socials! Syntax: X Instagram Tiktok LinkedIn Threads Wes: X Instagram Tiktok LinkedIn Threads Scott: X Instagram Tiktok LinkedIn Threads Randy: X Instagram YouTube Threads
Published Monday
885: CSS Fonts Fallbacks, Variable and Trimming
Scott and Wes dig into the wild world of CSS fonts—covering fallbacks, variable fonts, and new tricks like text-box-trim. They also break down font-display, font kits, and how to avoid layout shifts when loading custom type. Show Notes 00:00 Welcome to Syntax! 01:06 Brought to you by Sentry.io. Damnit Sans. 02:53 @font-face. 03:27 Font Display. 07:40 Avoiding layout shift. Fallbacks. 10:45 Variable fonts. Fontaine. font-kit Wakamai Fondue. Syntax Ep. 782. Font Variation Settings. 16:23 Variable font sizing. 17:46 v-fonts. 19:10 text-box-trim & text-box-edge. text-box-trim examples. 21:28 Browser support. Hit us up on Socials! Syntax: X Instagram Tiktok LinkedIn Threads Wes: X Instagram Tiktok LinkedIn Threads Scott: X Instagram Tiktok LinkedIn Threads Randy: X Instagram YouTube Threads
Published 03/17
884: Typescript Just Got 10x Faster
Wes and Scott talk with Anders Hejlsberg and Daniel Rosenwasser about TypeScript’s leap to native code. They discuss the challenges, trade-offs, and the decision to port TypeScript to Go, unlocking faster compilation, better concurrency, and new possibilities for AI-assisted development. Show Notes 00:00 Welcome to Syntax! 00:38 TypeScript compiler goes native 05:24 Challenges in rebuilding TypeScript 08:49 How long has this been in development? 10:32 What does porting TypeScript to native entail? 16:36 Why choose Go? 26:48 The porting process 35:02 Brought to you by Sentry.io 35:27 Type checking and parallel compilation 42:36 Fixing TypeScript’s performance bottlenecks 49:09 Large TypeScript codebases 54:11 What’s the timeline for the new compiler? 58:39 Optimization and AI 01:00:32 New features? 01:04:15 Sick Picks + Shameless Plugs Sick Picks Daniel: pprof-it Anders: USB Hand Warmers Shameless Plugs TypeScript Hit us up on Socials! Syntax: X Instagram Tiktok LinkedIn Threads Wes: X Instagram Tiktok LinkedIn Threads Scott: X Instagram Tiktok LinkedIn Threads Randy: X Instagram YouTube Threads
Published 03/11
883: Web Vitals Explained
What are Web Vitals, and why should you care? Scott and Wes break down metrics like LCP, FCP, CLS, and INP, explaining what they measure, how they impact your site’s performance, and how to track them yourself. Show Notes 00:00 Welcome to Syntax! 03:26 What each web vital means. Web Vitals Playground. 03:38 LCP - Largest Contentful Paint. 05:04 FCP - First Contentful Paint. 06:07 CLS - Cumulative Layout Shift. 10:58 INP - Interaction to Next Paint. 13:43 Measuring the impact. 14:22 TTFB - Time to First Byte 15:27 How to track this on your own. 17:42 Checking the performance of Syntax.fm. 21:07 Brought to you by Sentry.io. Sentry Web Vitals. 21:49 Checking the performance of Wes’ site. Hit us up on Socials! Syntax: X Instagram Tiktok LinkedIn Threads Wes: X Instagram Tiktok LinkedIn Threads Scott: X Instagram Tiktok LinkedIn Threads Randy: X Instagram YouTube Threads
Published 03/10
882: Aaron Francis is putting PHP in Your JS Files
Wes and Scott talk with Aaron Francis about Fusion for Laravel, a new way to seamlessly integrate PHP into JavaScript. They discuss how Fusion expands on Inertia, its potential for React support, and how it simplifies full-stack development. Show Notes 00:00 Welcome to Syntax! 01:22 Aaron’s background in PHP Yii Laravel 02:27 What is Fusion for Laravel? Fusion for Laravel 09:14 How Fusion works 13:57 The benefits of Laravel 19:18 Invalidation and caching 25:20 Brought to you by Sentry.io 25:32 Optimistic UI 28:28 React integration? 31:44 Fusion’s original name (and the naming process) 33:30 Laravel’s approach to frontend frameworks Livewire 37:32 Databases and scaling 41:27 Postgres extensibility and hosting options Crunchy Data Xata 47:44 The vision for Fusion 48:31 Sick Picks + Shameless Plugs Sick Picks Aaron: Better Display CLI Shameless Plugs Aaron: High Performance SQLite Mastering Postgres Screencasting.com Hit us up on Socials! Syntax: X Instagram Tiktok LinkedIn Threads Wes: X Instagram Tiktok LinkedIn Threads Scott: X Instagram Tiktok LinkedIn Threads Randy: X Instagram YouTube Threads
Published 03/05
881: What Happened to Remix. Worth Using Axios? Client Only Next.js?
Scott and Wes answer your listener questions! They debate Axios vs. Fetch, discuss whether Next.js is overkill without a backend, talk htmx and Alpine, dive into tech career transitions, and tackle everything from podcast ads to password hashing myths. Show Notes 00:00 Welcome to Syntax! 00:55 Scott’s health update. 04:11 Submit your questions. 04:26 Is Axios still worth using over Fetch? shiki. xior. ky. 10:17 Does Alpine.js solve HTMX’s client-side limitations? Syntax Ep. 868: The State of JavaScript. Server Driven Web Apps With HTMX. Syntax Ep. 568: Supper Club × Caleb Porzio. Alpine.js. Inertia.js. 16:47 How should I host my database for a local-first app? Neon Tech 22:50 Brought to you by Sentry.io. 24:14 Should I use Next.js if I want a separate backend? Create Vite Extra. 32:08 Are ad networks like BuySellAds worth it for podcasts? 36:36 Can I transition from airline pilot to senior software developer? 41:23 Is Base64 encoding a valid alternative to password hashing? 45:43 How do I use unexported functions from a third-party package? 48:09 How do you stay on top of package and browser updates? Syntax Ep. 425: Updating Project Dependencies. npm-check-update. 52:38 Why are Chrome and Firefox’s mobile presets outdated? 57:20 Should I give feedback on bad UX/UI designs from agencies? 01:01:53 Sick Picks + Shameless Plugs. Sick Picks Scott: Nothing Ear (a). Wes: SmallRig Phone Cage. Shameless Plugs Wes: Syntax on YouTube. Hit us up on Socials! Syntax: X Instagram Tiktok LinkedIn Threads Wes: X Instagram Tiktok LinkedIn Threads Scott: X Instagram Tiktok LinkedIn Threads Randy: X Instagram YouTube Threads
Published 03/03
880: Creator of Home Assistant: Web Components, Self Hosting and Home Hacking
Wes and CJ talk with Paulus Schoutsen, creator of Home Assistant, about the future of smart homes, AI-powered automation, and open-source innovation. Show Notes 00:00 Welcome to Syntax! 00:29 What is Home Assistant? 03:32 Web Components in Home Assistant Home Assistant Frontend 10:41 Home Assistant’s stability and longevity 17:05 Is Home Assistant the biggest open-source project using web components? 20:03 How does the native app work? 23:34 Code sharing between Android and iOS 24:17 Self-hosting Home Assistant 28:13 Brought to you by Sentry.io 30:47 Bundle size and memory usage 32:29 How AI and voice assistants are shaping the future of Home Assistant Talking with Home Assistant 37:16 How Paulus made it possible to flash microcontrollers directly from the browser Open Home Foundation 43:48 Web Serial and Web Bluetooth APIs 47:03 Matter, Zigbee, and Z-Wave – where smart home standards are headed Matter Zigbee Z-Wave 51:17 Paulus’ smart home setup Reolink Yale 53:16 Sick Picks + Shameless Plugs Andrew Schmelyun Sick Picks Paulus: Bambu 3d Printer Shameless Plugs Paulus: Nabu Casa Hit us up on Socials! Syntax: X Instagram Tiktok LinkedIn Threads Wes: X Instagram Tiktok LinkedIn Threads Scott: X Instagram Tiktok LinkedIn Threads Randy: X Instagram YouTube Threads
Published 02/26
879: Fullstack Cloudflare
Wes and CJ break down everything Cloudflare—from Workers and R2 Storage to Hyperdrive and AI Gateway. Get the scoop on what makes Cloudflare tick, the quirks of their ecosystem, and whether vendor lock-in is a real concern. Show Notes 00:00 Welcome to Syntax! 01:40 Brought to you by Sentry.io. 01:58 What we’re talking about today. 02:48 Cloudflare Workers. 03:06 How Cloudflare Workers… work. 04:39 How Cloudflare Workers run. 06:05 Workers size limitations in JavaScript. 07:37 Cloudflare has their own way. 08:13 Potential vendor lock-in. 08:51 You pay based on CPU time, not wall time. 10:26 Cloudflare Pages. Compatibility Matrix 12:07 Durable Objects. Zeb X Post. PartyKit.io, tldraw. 16:41 Cloudflare Workflows. 19:52 How we do something similar on Syntax.fm. 20:52 Cloudflare Queues. 25:26 Files. 26:15 R2 Storage. Ep 780: Cloud Storage: Bandwidth, Storage and BIG ZIPS. 28:00 The Open Bandwidth Alliance. 28:39 Image Pipelines. 33:24 Cloudflare Stream. Streaming Video in 2025. 34:24 Data. 36:37 Key Value. 40:16 Time To Live. 41:13 Hyperdrive. How It Works. Query caching. 44:01 Vectorize Data. 45:41 AI Gateway. 47:49 Automated Rate-Limiting. 48:50 Frameworks. Orange.js. 52:13 Analytics Engine. Counterscale. Ep 761: Cloudflare Analytics Engine, Workers + more with Ben Vinegar. 52:52 WebRTC Engine. 53:01 Puppeteer API. 54:09 Sick Picks + Shameless Plugs. Sick Picks CJ: Flush MicroSD Adapter for Macbook Wes: Synology. Shameless Plugs Wes: Syntax on YouTube. Hit us up on Socials! Syntax: X Instagram Tiktok LinkedIn Threads Wes: X Instagram Tiktok LinkedIn Threads Scott: X Instagram Tiktok LinkedIn Threads Randy: X Instagram YouTube Threads
Published 02/24
878: You Are Sleeping On Nuxt, Nitro and Vue w/ Daniel Roe
Wes and Scott talk with Daniel Roe about Nuxt and Nitro, demystifying the UnJS ecosystem, serverless deployments, open-source sustainability, and the future of full-stack web development. Show Notes 00:00 Welcome to Syntax! 02:52 Daniel’s work with Nitro Nitro 06:01 What’s the connection between Nitro and Nuxt? Nuxt 09:23 What makes something an UnJS package? UnJS 12:55 Nitro’s built-in features 18:21 What would Daniel use to build an app today? Cloudflare Vercel Netlify 28:01 Brought to you by Sentry.io 28:36 Nuxt and SST SST 32:25 Nuxt vs. Next.js in 2025 Next.js 40:06 Keeping docs up to date 44:46 Who is behind the fantastic design of the Nuxt website? Anthony Fu Rmoon Vite 47:27 Why is Vue awesome? Vue alien-signals 52:47 How do you make money in full-time open source? 55:32 Sick Picks + Shameless Plugs Sick Picks Daniel: DeskPad Shameless Plugs Daniel: React to Nuxt Hit us up on Socials! Syntax: X Instagram Tiktok LinkedIn Threads Wes: X Instagram Tiktok LinkedIn Threads Scott: X Instagram Tiktok LinkedIn Threads Randy: X Instagram YouTube Threads
Published 02/19
877: Tailwind 4
Tailwind 4.0 is here, and Scott and Wes break down all the spicy new features, from CSS-powered configs to first-class container queries. Plus, they dig into Tailwind Oxide, @property magic, and whether it’s finally time to stop asking, “Why not just use normal CSS?” Show Notes 00:00 Welcome to Syntax! 00:16 Brought to you by Sentry.io. 01:03 Tailwind 4. Tailwind CSS V4.0 Blog. 02:53 Wes’ favorite new feature. 05:45 @property. CSS Houdini API. 07:28 The config is now a CSS file. 08:25 Tailwind Oxide. 10:48 P3 color space. 12:36 Dynamic Utilities + Variants. 13:36 Data attributes. 15:32 First class container query support. 17:03 Starting Style. 19:22 When to use inline styles. 20:13 Descendant selector. Styling Descendants. 20:48 Why not just use “normal” CSS? 22:03 No text shadow support. Scott has to use Tailwind. Hit us up on Socials! Syntax: X Instagram Tiktok LinkedIn Threads Wes: X Instagram Tiktok LinkedIn Threads Scott: X Instagram Tiktok LinkedIn Threads Randy: X Instagram YouTube Threads
Published 02/17
876: MIDI & Music in the Browser
Wes and Scott talk about the Web Audio and Web MIDI APIs, diving into how they enable powerful music and sound manipulation in the browser. They explore MIDI messaging, synthesizing audio, creative coding with music, and share hands-on projects, tips, and libraries to get started. Show Notes 00:00 Welcome to Syntax! 01:17 Brought to you by Sentry.io 02:04 Fun audio experiments Bebot 05:32 What is MIDI? Web MIDI API 14:18 Advanced examples with WEBMIDI.js WEBMIDI.js 17:02 Outputting MIDI messages 24:40 Exploring the Web Audio API webmidirtc 31:20 Audio sampling in the browser 37:35 Media Recorder 39:21 Fun projects MIDI chord machine 42:08 Sick Picks + Shameless Plugs Sick Picks Scott: MX Master 3S Wes: Microcontoller Shameless Plugs The MOST Starred JS Projects Hit us up on Socials! Syntax: X Instagram Tiktok LinkedIn Threads Wes: X Instagram Tiktok LinkedIn Threads Scott: X Instagram Tiktok LinkedIn Threads Randy: X Instagram YouTube Threads
Published 02/12