swyx's site RSS Feed
Writer, Founder, and Devtools Startup Advisor based in San Francisco.
- Posts
- 442 from 2 Dec 2017 to 17 Sep 2026
- Posting
- monthly (12 in the last year)
- Kind
- personal blog
- Feed
- https://swyx.io/rss.xml
2026 9
2025 19
- How To Podcast
- personal and work-related writing
- The Impossible Triangle of LLM Infra
- The only Permanent Underclass are the ones who believe it is permanent
- The Year in Agents - AI Engineer Paris
- Cognition: The Devin is in the Details
- My 2025 New Mac Setup
- Becoming a High Taste Tester
- Gemini Nano in Chrome 137: notes for AI Engineers
- notes from Naval (2025)
- Elixir/Phoenix Liveview was a mistake
- 2025 Advice to my old selves
- Supa Pecha Kucha
- How to download YouTube Videos quickly
- Home Assistant Voice Preview is an unusable mess.
- Designing a Logo
- Actually Structured Journaling (Jan 2025)
- Pseudocode for Intentionality
- Date Me!
2024 16
- swyx in 2024 End of Year wraps
- Holding Space for Wicked (Part One)
- Engineering AI Agents - OpenAI DevDay Singapore talk
- My 2024 New Mac Setup
- Moving in Big Cities: Lugg vs Clutter
- Early Stage Company Offsites
- My Fave Podcasts 2024 - The Big Reset
- Organizing AI Engineer World's Fair 2024
- The Upload (short story)
- Organizing State of Diffusion++
- Pensieve: Mar 8 2024 - on Dune 2
- Pensieve: Mar 7 2024 - on Agency
- Bring Back Short Stories
- add Whisper to your iOS Action Button
- You Should Have A Virtual Mailbox
- My Fave New Podcasts of 2023
2023 25
- Dwell and the Tools for Thought Hackathon
- Bouldering
- Being a minor AI public figure
- Software 3.0 and the AI Engineer Landscape (talk notes & slides)
- Swyx's Simple Guide to Singapore
- On Grind - from Investor to Creator to Founder
- 250k downloads of Latent Space Pod
- How to allow popups in dynamically created webviews in Electron.js
- How to Blow Up a Category - Netlify's New Era and The JAMstack Endgame
- How to deal with fatal: bad object HEAD in git
- [Newbie Tip] What to do when you 403 during pypi twine upload
- Using Whisper to Transcribe Podcasts
- The Traction vs Trust Equation of Cofounder Dating
- Searching for The Early Founder Cadence
- My 2023 New Mac Setup
- (incomplete) Getting your O1 Visa as Fast as Possible (2024)
- My New Startup Checklist
- How to change custom domain on Substack
- How to transcribe podcast audio (WhisperX with speaker diarization)
- How to Find Podcasts That Have Been Deleted
- How to Reverse Interview Investors
- The Swyx.io 2023 rewrite
- Signs that a Startup is Going Bad
- Organizing Developer Writing Retreats
- My Fave New Podcasts of 2022
2022 41
- Ranking #1 on HN in the December Dead Zone
- The World Is Run By People No Smarter Than You
- How to add Tailwind 3 to Docusaurus 2 in 2022
- The Absolute Best Way to Run Multiple npm Scripts in Parallel in 2022
- Talk Notes for The End of Localhost (Infobip Shift 2022)
- Getting Senpai To Notice You
- Profile on Livecycle.io Devx Project
- 10x-ing Svelte (Svelte Summit 2022 Talk Notes)
- The God Endpoints will continue until morale improves
- Paradigm Lost (CascadiaJS 2022 Talk Notes)
- What if your Index Page was Smart?
- The Surprisingly High Table Stakes of Modern Blogs
- How to write a Python Twitter Unfollow Script in 2022
- Writing my first Security blogpost
- Breaking Barbarian
- The Great Unzippening
- What to do when iCloud is stuck on uploading items
- How to Manifest a Meetup
- Sharding Yourself
- On The Importance of 15-5 Updates
- Data outlasts Code, yet Code keeps winning
- The 8 Jobs of Management
- The Hard Problem of Rendering Tweets
- The End of Localhost
- Why I Moved Off Dev.to
- The Radiating Circles of DX Architecture
- Lessons in Competitive Comms from the Plaid-Stripe Kerfuffle
- Running Docker without Docker Desktop
- My 2022 New Mac Setup
- The Law of Conservation of Risk
- Talk Notes: Third Age of JavaScript - Three Years In
- Interview on Will Larson's Infrastructure Engineering
- React Miami: Temporal - React for the Backend
- The $100b Bull Case for Temporal
- How to Download Twitter Spaces That Aren't Yours
- Unabridged Conclusion to the State of JS
- The McClusky Curve - Viral vs Evergreen Content
- Moving to a GitHub CMS
- Moving to Obsidian as a Public Second Brain
- How to add JSDoc Typechecking to SvelteKit
- The Swyx.io 2022 Rewrite
2021 58
- Why TurboRepo Will Be The First Big Trend of 2022
- Using Datasette for an ELT Personal Twitter Data Warehouse
- How to customize your Transistor.fm Website with JS and CSS
- Fave New Podcasts in 2021
- Community Heat, or Why You Should Get Good at Events
- 100 Bytes of CSS to look great everywhere
- Eating the Cloud from Outside In
- Why do Webdevs keep trying to kill REST?
- September 11th from Singapore
- The Swipe Files Strategy for Part Time Creators
- 3 Reasons to Upgrade Git For The First Time Ever
- The Self Provisioning Runtime
- Why Isn't Usage Based Billing A Bigger Category?
- Measuring Developer Relations
- Why I'm not a VC (yet)
- The Genius of Apple's Name
- Temporal - the iPhone of System Design
- My 2021 New Mac Setup
- The Particle/Wave Duality Theory of Knowledge
- The 4 Types of Activity timeouts in Temporal
- Memento Vivere
- Why IaaS beat PaaS
- Bottom-Up Idea Exploration
- The Power of Personal Podcasting
- Stripe Goes No-Code — Stripe Payment Links Explained
- How To Add Prettier and ESLint Automation to a React Codebase
- $120k in Infoproduct Sales - How to Extend the Long Tail
- How To Optimize for Change
- Why Creator Clones Fail
- Revolutionizing Audio with Descript and Temporal
- Don't Rush to Simplicity
- What if Stripe is the next Google?
- 80/20 is the new Half-Ass
- How to use SvelteKit with Netlify Forms
- 35 Principles for 35 Years
- Reflexive McLuhanism
- Set Explicit Help Timeouts
- Blogpost Annealing
- Shortcodes vs MDX
- The Part Time Creator Manifesto
- Preemptive Pluralization is (Probably) Not Evil
- TL;DR of Why React is Not Reactive
- Technical Community Builder is the Hottest New Job in Tech
- Workshopping
- Love Letter to Singapore Mixed Rice
- Reviewing "TypeScript in 50 Lessons"
- The Simple Magic of Prefixed URLs
- Enablement vs Ownership Roles
- Everything You Hate About Clubhouse Is Why It Will Win
- Errors Are Not Exceptions
- Solving the Quality vs Consistency Tradeoff
- The Meta-Creator Ceiling
- My Three Strikes Rule for Blogging
- Strategy Turns
- Super Easy Automated Scraping with AWS Amplify
- What drives Optimal Overhead?
- Notes on The Psychology of Money
- Fibonacci Goals
2020 155
- My Path to Developer Relations and Thoughts on the Future of DevRel
- My Journey from No CS Degree to AWS from Age 30 - 34
- Swyx Interview on Daily Dev Tips
- You're Allowed To Make Your Own Tools
- An Annotated Guide to React Server Components
- How to Design Almost Any Backend and Deploy It to AWS with No Code
- Why You Should Pre-Sell
- Mimicry vs Reflexivity
- You Can Run Containers on AWS Amplify Now
- The Strange Case of the Danish Aarhus Mafia
- Language Servers are the New Frameworks
- The UX of Proving Our Humanity To Machines
- My Favorite New Podcasts in 2020
- Write Errors That Don't Make Me Think
- The Roaring 2020's
- The Light and Dark Side of the API Economy
- Temporal Transparency Update
- Naked Emperors in Tech
- Notes on Serverless GraphQL with AWS AppSync
- Found-Money Startups
- Moderating a 220k Developer Community
- Svelte for Sites, React for Apps
- AmpliBox - a Self Hosted File Storage App with AWS Amplify
- Notes on Time Management from a Dying Professor
- Choice Architecture
- Service as a Service
- Follow Up
- Why Tailwind CSS
- Beware The Fallacy of Composition
- 5 TILs about Node.js Fundamentals from the Node.js Design Patterns Book
- REST Endpoint + CRUD with AWS Lambda and DynamoDB in 2 minutes
- Notes from Amir Shevat on Measuring & Managing Developer Relations
- Typesafe, Fullstack React & GraphQL with AWS Amplify
- Book Review - Shoe Dog by Phil Knight
- Notes on Adversarial Interoperability
- Against Namespacing Personal Sites
- How to Set Up SvelteKit with Tailwind CSS
- If You Sell Anything Online, This Book Will Make You Money
- How to Create Luck
- Putting your Keyboard on Steroids with Karabiner Elements
- First Look at AWS Amplify Flutter (Developer Preview)
- Cheatsheet for moving from Master to Main
- Prerecording Talks for Online Conferences
- Developer Exception Engineering
- Realtime Offline-First Chat App in 100 Seconds
- A Developer's Guide to Startup Fundraising
- 5 Q&A's on Writing and Selling My First Book
- Notes on "Growing a Language"
- 4 Things I Learned from Mastering Mongoose.js
- 8 Landing Page Tips from Rob Hope
- 8 Q&A's for Bootcamp Students in 2020
- Unofficial VS Code Snippets for AWS Amplify
- Semi-Automatic npm and GitHub Releases with `gh-release` and `auto-changelog`
- Lessons and Regrets from My $25000 Book Launch
- Launching the Coding Career Handbook!
- Versioned Docs in 30 Seconds with Amplify Console's Branch Subdomains
- Notes on RSI for Developers
- #HeyForGood
- My Life as a Con Man
- 4 Q&A's on Blogging for Developers
- Making AWS Amplify work with Rollup
- Bringing AWS to App Developers
- The Third Age of JavaScript
- Working The Reverse 9 to 5
- Slack is Fumbling Developers
- IE11 Mainstream End Of Life in Oct 2020
- The Day I Became A Software Engineer
- Developer's Guide to Tech Strategy
- Cloud Distros
- OSI Layers for Coding Careers
- How to Market Yourself
- I'm Writing A Book!
- 5 Things I Learned from The DynamoDB Book
- How to Use class instead of className with Preact and TypeScript
- Want Better Design/CSS Skills? Spot the Difference!
- How and Why to Un-Reset Tailwind's CSS Reset
- Instant GraphQL with OneGraph
- How to use Web Components with Next.js and TypeScript
- Make your own Dev.to CMS livestream - Part 4
- A World Without Plugins
- 10 Principles I Learned from Tiago Forte's Building a Second Brain
- Make your own Dev.to CMS livestream - Part 3
- How To Add Monaco Editor to a Next.js app
- Make your own Dev.to CMS livestream - Part 2
- Make your own Dev.to CMS livestream - Part 1
- The Computer History Museum YouTube Channel
- Every Public Engineering Career Ladder
- Mise en Place Writing
- 6 Things Markdown Got Wrong
- Farewell, Netlify
- What You Can Do with Netlify Build Plugins
- Twitter as Universal Meta-Commentary Layer
- Observability for Frontend Developers
- Every Web Performance Test Tool
- Essential Plugins for Gatsby Remark
- Formats over Functions
- JavaScript: the First 20 Years by Allen Wirfs-Brock and Brendan Eich
- The Power of Lampshading
- Unit and Integration Testing for Plugin Authors
- React Single File Components Are Here
- You May Not Need Controlled Form Components
- The Coronavirus Recession and What it Means for Developers
- Guo Lai Ren (过来人)
- Feedback Ladders
- Working at a Startup From Series B to C
- Why Svelte? (The Short Version)
- Compile Svelte in Your Head by Tan Li Hau
- Three Jobs of Containers
- Starting Svelte Society
- Switching to Android after 13 years of iOS
- Mocking and Using CRUD APIs with MirageJS and React-Query
- How I Approach First Principles Thinking
- Digital Garden Terms of Service
- Metrics, Logs, and Traces in JavaScript Tools
- Fixing Up the Svelte Community Site
- Using DEV.to as a CMS
- Serverless Functions are Stateful
- Good Enough
- React Distros
- The Platinum Rule
- Avoiding Flash of Unthemed Code
- Branding Bundles
- How to Contribute to Open Source Frameworks
- Google Sheets v4 API with Netlify Dev
- 2019 /r/ReactJS Survey Results
- Clientside Webmentions
- To Understand Concurrent React, Look Outside React
- Big L Notation
- "No Code" vs RPA
- Intro to Node-RED
- How To Deploy a Django App to Render.com
- Scrollbar Shenanigans
- Jan 2020 Recap
- Scaling Coding Communities
- Friendcatchers
- My Favorite Podcasts
- Svelte as an Eleventy Template Engine
- How rollup-plugin-svelte Works
- Line Lengths
- Documentation Levels
- Failing to use HSL to do Palette Theming
- Eponymous Laws
- Why I Enjoy Svelte
- Two Words
- Svelte Zen Garden
- Optimistic, Offline-First Apps
- Writing an Authentication Store in Svelte
- Automated Data Scraping with Github Actions
- Collapsing Layers
- Best Practice Open Source Repo Setup
- writing Advice
- CFP Advice
- How To Learn In Private
- The Many Jobs of JS Build Tools
- Pick Up What They Put Down
2019 76
- In Defense of Hammers
- Bhags
- Nov 2019 Recap
- Swyx Faves: Software Engineering Daily
- Narrow Waists
- The Perfect Restaurant
- Oct 2019 Recap
- Private Conversations are Private
- Ensembles vs Committees
- Donating $10k to FreeCodeCamp
- "No Code" Is A Lie
- API Design: Modifying Defaults
- Ejectable Defaults
- Sept 2019 Recap
- Git-Centric Workflow
- Why I Won't Choose To Be A Manager
- The World's Greatest Netlify Demo 2019
- Adverse Status Updates and Trust
- Waterfall
- Your Site's Calling Card
- A Better Way to Get Data
- Why JavaScript Tooling Sucks
- Bad Ways to Get Data
- Static Svelte: JavaScript Blogging with 93% less JavaScript
- Using Next.js as a Static Site Generator for Netlify
- Building Authenticated Serverless Jamstack Apps with Gatsby and Netlify
- GraphQL Variables and Persisted Queries
- Keyboard First
- Compilers Copout
- JAMstack for Indie Hackers
- Book Poll 2019
- Netlify Year One - 360 Review
- (Incomplete) The introduction to TypeScript Generics you've been missing
- The Case for the React Native Web Singularity
- You Already Use Types
- Notes on 'Metaphysics and JavaScript'
- How to run Python and Portray on Netlify
- JAMstack or 'Pilha de Atolamento'? i18n in Gatsby + Netlify
- Slowmad Q&A
- 10,000 Loose Fans
- Why Naked Promises are Not Safe For Work
- Netlify Environment Variables
- Netlify Year One
- Using Novela by Narative (updated)
- Fight Link Rot with Server- and Client-side Redirects (Netlify and Gatsby)
- Tests or Types: Why Not Both?
- Deploying a Create-React-App Website to Netlify with HTTPS
- Betwixt Reason and Result
- Solve CORS once and for all with Netlify Dev
- Add Netlify Identity Authentication to any React App in 5 minutes with React Context, Hooks and Suspense
- How To Name Things
- Reinforcement Learning: Game Theory
- Learning Gears
- Unsupervised Learning: Feature Transformation
- Unsupervised Learning: Feature Selection
- Unsupervised Learning: Clustering
- Write My Code For Me
- Getting Closure on React Hooks
- a blogpost.
- Unsupervised Learning: Information Theory Recap
- Unsupervised Learning: Randomized Optimization
- Unsupervised Learning: Randomized Optimization
- Supervised Learning: Bayesian Inference
- Post Bootcamp Mindmap
- Supervised Learning: Bayesian Learning
- Supervised Learning: VC Dimensions
- Supervised Learning: Computational Learning Theory
- Supervised Learning: Support Vector Machines
- Supervised Learning: Ensemble Learning and AdaBoost
- Supervised Learning: Instance-based Learning and K-Nearest Neighbors
- Supervised Learning: Neural Networks
- Supervised Learning: Regression
- Supervised Learning: Classification Learning & Decision Trees
- Machine Learning: An Overview
- STAR Apps - A New Generation of Front-End Tooling for Development Workflows
- Cool Facts about Cuttlefish
2018 33
- Turning the Static Dynamic with Gatsby + Netlify Functions + Netlify Identity
- Networking Essentials: Network Security
- Networking Essentials: Traffic Engineering
- Networking Essentials: Software Defined Networking
- My New Mac Setup (2018-2020)
- Networking Essentials: Content Distribution
- Networking Essentials: Rate Limiting and Traffic Shaping
- 3 Tips from Kent C Dodds for People Just Getting Started
- Networking Essentials: Congestion Control
- Networking Essentials: DNS
- Networking Essentials: Router Design
- Networking Essentials: Naming, Addressing, and Forwarding
- Networking Essentials: Routing
- The Rise of Immer in React
- Networking Essentials: Switching
- Networking Essentials: Architecture and Principles
- Singapore H1B1 Tips
- A Glance through Docusaurus, Docz, and React-Static
- Specialize In The New
- Clone Open Source Apps
- Know Your Tools
- Learn In Public
- Quick Guide to setup your React + Typescript Storybook Design System
- Try React Suspense In 5 Minutes
- Source Code for Life v0.1
- React Suspense Q&A
- OCaml Speedrun! 🐫🐪
- Introduction to MobX 4 for React/Redux Developers
- A Walkthrough of *that* React Suspense Demo
- Scraping my Twitter Social Graph with Python and Selenium
- What Happens When A User Edits A Post on Dev.to?
- Hello, I am making a modern fullstack JS tutorial livestream. What questions do you have for me?
- How To Google Your Errors