Adam Wathan

Full Stack Radio

A podcast for developers interested in building great software products. Every episode, Adam Wathan is joined by a guest to talk about everything from product design and user experience to unit testing and system administration.

Author

Adam Wathan

Category

Technology

Podcast website

fullstackradio.com

Latest episode

Aug 21, 2025

Where to listen?

Podcasts in the app Replaio Radio Coming soon

Podcasts are coming to the app soon. Install now and be the first to see a whole new take on podcasts

Get it on Google Play Install for free Android 5M+ downloads · 4.8 rating iOS soon

Episodes

103: Steve Schoger - Design Q&A + Refactoring UI Details 05.12.2018

Questions include: What's your process for getting started on a new design? How do you make your designs feel original? How do you choose fonts for a new project? How do you make complex tables look good, and how do you make them work on mobile? What's the best way to style multiple secondary actions on a page? Refactoring UI topics include: Structuring the book to make it easy to read in a short...

102: Paul Jarvis - Staying Small 21.11.2018

Topics include: Why "success" shouldn't mean the same thing to everyone How to stay small without doing all the work you don't want to do yourself Why it's important to define what "enough" is for your business instead of always feeling the need to do better than you did last year Questions to ask yourself to figure out what "success" would be for you How knowing your "enough" can help you build b...

101: Ben Orenstein - How to Build an App in a Week 07.11.2018

Topics include: Why deadlines are critical Using manual processes to avoid building features entirely How launching a stripped down version of your idea can help you build the right thing Recognizing when you don't need to solve a problem yet Why you shouldn't design your entire UI up front How evolutionary design applies to both code and interface design Why you should always finish a feature bef...

100: Sébastien Chopin - Building Universal Vue.js Apps with Nuxt.js 24.10.2018

Topics include: The history behind Nuxt.js How Nuxt.js uses special Page components and file-based routing instead of using a traditional router Creating dynamic page-based routes without a custom server How the asyncData lifecycle hook works How server-side rendering works in Nuxt.js How Nuxt.js uses intelligent code-splitting to improve performance How to use the fetch method to dispatch Vuex ac...

99: Tim Neutkens - Building React Apps with Next.js 10.10.2018

Topics include: How Next.js is different than using create-react-app How page-based routing works in Next.js vs. a traditional router The mechanics behind how components are server-side rendered and picked up by React on the client What it really means to server-render a React app and how it's different from a traditional server-rendered web app How to use "getInitialProps" to tell Next.js how to...

98: Ryan Chenkie - Securing Single Page Applications 26.09.2018

Topics include: What JSON Web Tokens are and how to use them to authenticate users Strategies for invalidating stateless API tokens Using cookie and session authentication Using authentication-as-a-service solutions like Auth0 Proxying requests to your API to simplify CORS issues Protecting against XSS attacks Sponsors: Cloudinary , sign up and get 300,000 images/videos, 10GB of storage and 20GB o...

97: Ryan Florence - Building Accessible UI Components 12.09.2018

Topics include: How modern JS frameworks have made the web less accessible How Reach UI is making it easier for people to build accessible components without sacrificing customizability The importance of using the correct markup How focus trapping works Adding keyboard navigation to components in a way that makes sense for screenreader users The challenges of building an accessibility-focused UI l...

96: James Clear - Designing Your Environment to Shape Your Behavior 29.08.2018

Topics include: Why goals aren't useful on their own The four rules that guide human behavior Using environment design to encourage the habits you want to adopt Building habits of avoidance Why being productive is really about decision making Sponsors: Cloudinary , sign up and get 300,000 images/videos, 10GB of storage and 20GB of monthly bandwidth for free Netlify , incredibly powerful static sit...

95: Frank de Jonge - Implementing Event Sourcing 15.08.2018

Topics include: How to fetch and reconstitute an aggregate from its events Using generators to make it easy to transform event streams What it looks like to apply an event to an aggregate How to create events and what they look like Implementing a message repository for fetching events from storage How to raise events from inside your aggregates How to persist aggregates at the end of a request Wh...

94: Ben Orenstein - The Art of Pairing 01.08.2018

Topics include: The benefits of pairing with someone more experienced than you The benefits of pairing with someone less experienced than you How pairing helps you build things faster Why pairing often removes the need for code review How to get started with pairing if you've never done it before Sponsors: Cloudinary , sign up and get 300,000 images/videos, 10GB of storage and 20GB of monthly band...

93: Justin Jackson - Who You Want to Help > What You Want to Build 18.07.2018

Topics include: Why you should choose a market before getting too attached to the type of product you want to create Why it can make sense to create products in different categories if they are for the same people Why a CSS framework and a TDD course have more in common than it sounds Why you might be happier having a job than running a business if you want to spend your time doing a specific type...

92: Derrick Reimer - Building an SPA with Elm, Phoenix and GraphQL 03.07.2018

Topics include: Why Derrick chose to build Level as an SPA Choosing Elm over React or Vue How Elm is sort of like a language and framework combined Moving to Phoenix from Rails Why getting abstractions right feels easier in a functional language How "contexts" help you organize your Phoenix code The benefits of GraphQL over REST What it looks like to implement GraphQL on the server Avoiding n+1 qu...

91: Derrick Reimer - Designing a Calmer Team Communication Platform 20.06.2018

Sponsors: Cloudinary , sign up and get 300,000 images/videos, 10GB of storage and 20GB of monthly bandwidth for free Rollbar , sign up at https://rollbar.com/fullstackradio to try their Bootstrap Plan free for 90 days Links: Level The War on Developer Productivity , the Level manifesto Level live-coding screencasts on YouTube Ghost , open-source publishing platform Discourse , open-source discussi...

90: David Hemphill - Using JSX with Vue.js 13.06.2018

Topics include: What even is JSX, really? Why JSX is not a templating a language How render functions work Advantages of JSX over templates How to translate template features like v-if to JSX How event listeners work with JSX JSX gotchas to watch out for Sponsors: Cloudinary , sign up and get 300,000 images/videos, 10GB of storage and 20GB of monthly bandwidth for free Rollbar , sign up at https:/...

89: Sam Selikoff - Choosing Ember.js in 2018 23.05.2018

Topics include: Why has Ember stuck around when other frameworks from the same era haven't? What do you get when you choose Ember that you don't get with other frameworks? How does Ember's UI layer compare to React/Vue? What choices does Ember make differently than frameworks like React and Vue? How does Ember do state management? Why Ember is a great choice if you value stability Sponsors: Rollba...

88: Blake Newman - Vue.js State Management with Vuex 10.05.2018

Topics include: What is Vuex and where did it come from? The benefits of centralizing all of your application's state into one place What sort of state belongs in Vuex and what state should stay local to a component What all the Vuex terminology means, like actions, mutations, getters, etc. How you initially populate a Vuex store Strategies for organizing all of the state in a store Common mistake...

87: Chris Fritz - Vue.js Anti-Patterns (and How to Avoid Them) 25.04.2018

Topics include: Why global state is better than an event bus Why and how to avoid using this.$parent Custom events vs. callback props When to use watchers and when you don't need to Why you should prefer computed properties over methods Inline templates vs. scoped slots Using components to share code instead of mixins or directives Sponsors: Rollbar , sign up at https://rollbar.com/fullstackradio...

86: Jonathan Reinink - Rebuilding a SaaS with Vue.js and Tailwind CSS 11.04.2018

Topics include: Wrapping non-Vue libraries as Vue components to maintain a consistent paradigm Using Popper.js with Vue to build dropdowns and tooltips Using portals to build better modal components Patterns for making it easier to reuse components throughout an application Which Tailwind CSS component classes Jonathan chose to extract (and which ones he didn't) How Jonathan chose to customize his...

85: Frank de Jonge - Event Sourcing for Beginners 30.03.2018

Topics include: What does "event sourcing" even mean? What do terms like "aggregate" and "projection" mean in the context of event sourcing? What are the benefits of modeling something with event sourcing vs. a traditional state-based approach? How events are usually stored Why and how you might build multiple projections from a single event stream How events in event sourcing differ from the sort...

84: Edd Yerburgh - Testing Vue.js Components 14.03.2018

Topics include: Challenges with testing Vue components prior to vue-test-utils How vue-test-utils works and what it looks like to test a component Choosing a test runner Common mistakes people make when testing their components Mocking and stubbing external dependencies Combining unit testing with snapshot testing Sponsors: Codeship , check out how they performed in Forrester's latest Continuous I...

83: DHH - Stimulus in Practice + On Writing Software Well 28.02.2018

Topics include: What JavaScript looked like at Basecamp before Stimulus Why Basecamp chose to create a new framework instead of using React, Angular, or Vue How Basecamp uses server-rendered partials instead client-side templates Why David decided to start "On Writing Software Well" Evaluating patterns in practice and choosing between conflicting approaches Using concerns/mixins to organize classe...

82: Sarah Drasner - Animating the Web with CSS and JavaScript 14.02.2018

Topics include: Using animation to make interfaces easier to use The difference between animations and transitions When to use CSS animations vs. JavaScript animations Which CSS properties are safe to animate How to use techniques like FLIP to make sure your animations are performant Recommended libraries for building complex animations Strategies for keeping animation code maintainable Sponsors:...

81: Evan You - Advanced Vue Component Design 31.01.2018

Topics include: What is a "higher order component"? How do you replicate the render prop pattern from React with Vue? Using scoped slots to build components with no UI Using render functions without using JSX How Vue's built-in components like `` work under the hood Sponsors: Codeship , check out how they performed in Forrester's latest Continuous Integration Tools report Rollbar , sign up at http...

80: Tom Schlick - Building Multitenant Applications 17.01.2018

Topics include: What makes an application "multitenant" really? Choosing between a shared database or multi-database setup Approaches for identifying the current tenant Performance considerations How multitenancy impacts how you integrate with external services Sponsors: Codeship , check out how they performed in Forrester's latest Continuous Integration Tools report Rollbar , sign up at https://r...

79: Kent C. Dodds - Building Reusable React Components with Render Props 21.12.2017

Kent gives a behind-the-scenes look at how the library uses the render prop pattern to allow maximum customizability without complex configuration. Sponsors: Rollbar , sign up at https://rollbar.com/fullstackradio to try their Bootstrap Plan free for 90 days Codeship , check out how they performed in Forrester's latest Continuous Integration Tools report Links: downshift on GitHub "Introducing dow...

Listen to the Full Stack Radio podcast in Replaio

Radio and podcasts in one app - free, with no sign-up. Install today and do not miss the launch

Get it on Google Play

Replaio is not a podcast publisher; show names, artwork and audio belong to their authors and are distributed through public RSS feeds.