RSS.Social

swyx's site RSS Feed

follow: @[email protected]

Posts

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!

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

(incomplete) 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

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

Ranking #1 on HN in Mid April

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

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

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

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

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

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

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

Flutter for React Native Devs in 30 Seconds

Serverless Machine Learning at Google

Are we human? Or are we reCAPTCHA?

Firebase Analytics in 30 Seconds

Medical Machine Learning in 30 Seconds