Episodes

  • Creating Technical Content (with Adam Jahr)
    Jan 9 2025

    In this episode, Michael talks with Adam Jahr, Founder of Vue Mastery, all about creating technical content - and how this is relevant for you as a developer.

    Tune in and figure out how Adam founded Vue Mastery, what his biggest learnings from his Coding Bootcamp times were and learn key tips that can set your content apart from others!
    And as a bonus - learn what creating content, regardless the format, has to do with Harry Potter or Lord of the Rings.

    Ready? Then wait no further

    Enjoy the Episode!

    Our Guest

    Adam Jahr

    • Vue Mastery
    • Adam on X
    • VueMastery on YouTube


    Chapters

    • (00:00) - Welcome to DejaVue
    • (01:03) - Why creating technical content is key
    • (02:16) - What is Vue Mastery?
    • (05:52) - Biggest learnings from Coding Bootcamp times
    • (09:46) - Getting in touch early with the Vue community
    • (15:03) - Splitting time between marketing and creating content
    • (18:40) - Importance of different Creators and learning Formats
    • (20:07) - How to reach and teach developers
    • (31:41) - The same framework applied to sales
    • (33:19) - Applying it to your own stuff
    • (34:44) - A glimpse down the rabbit hole
    • (39:22) - Creating an open loop
    • (43:32) - Music Production and Sourdough
    • (47:47) - Show them the "Why"
    • (52:45) - Isolating focus
    • (58:26) - Magic Move and Animations
    • (01:03:18) - Where can we follow you Adam?
    • (01:04:19) - Wrapping up


    Links and Resources


    • Join Vue.js Amsterdam 2025* and get 10% off with code DEJAVUE


    • Hero's Journey
    • Vue Mastery
    • Michael's Composable Design Course (out now!)
    • DejaVue Episode #020 - Documentation and Migration: From Vue 2 to Vue 3 (with Natalia Tepluhina)



    Your Host

    Michael Thiessen

    • Twitter
    • YouTube
    • Website


    ---

    Links marked with * are affiliate links. We get a small commission when you register for the service through our link. This helps us to keep the podcast running. We only include affiliate links for services mentioned in the episode or that we use ourselves.

    Show more Show less
    1 hr and 5 mins
  • The Quadruple Migration (with Rijk van Zanten)
    Jan 2 2025

    To start the year light and fun, Michael and Alex are joined by Rijk van Zanten, the creator of Directus.


    Of course we talk about his journey into web development, the Vue.js ecosystem, what Directus is and why he chose Vue over other frameworks for it's extensible frontend.


    Further, Rijk shares his thoughts on the Vue.js job market and how his "Quadruple Migration", over to the Composition API, Pinia, Vue 3 and Vite, went. As a cherry on top - this all started *very* early in the development cycle of Vue 3!


    But the fun doesn't and there because Rijk comes with the one or the other hot take on topics like TypeScript and whether our libraries will be worse for JavaScript developers, testing, and many many other scenarios.

    Enjoy the Episode!

    Our Guest

    Rijk van Zanten

    • Directus
    • BlueSky
    • Web


    Chapters

    • (00:00) - Welcome to DejaVue
    • (00:47) - How did you got into Web Development and Vue?
    • (03:10) - Does Vue appeal to a certain kind of people?
    • (05:35) - The web as the primary platform
    • (07:47) - What is Directus?
    • (10:34) - Why Vue.js and not React for Directus?
    • (18:28) - Jobs for Vue vs. React Developers
    • (26:33) - Green Flags for Hiring Candidates
    • (27:19) - Composition API and Pinia from 0.0.1
    • (39:02) - Breaking changes and Migrating from early versions
    • (44:28) - Testing when Prototyping - Unit and E2E
    • (53:11) - The right level of Testing for the project
    • (55:56) - Mutation Testing
    • (59:09) - Does TypeScript makes us writing worse JS libraries?
    • (01:09:09) - Dealing with Legacy and EOL
    • (01:18:38) - Where can people Follow you?
    • (01:19:42) - Wrapping up


    Links and Resources


    • Join Vue.js Amsterdam 2025* and get 10% off with code DEJAVUE


    • ConTejas Podcast with Alex
    • Michael's Clean Components Toolkit
    • Michael's Upcoming Composable Design Course
    • Daniel Roe's React To Nuxt Course
    • Alex's Next to Nuxt Migration in less than 1h Video
    • Stryker Mutation Testing Framework
    • DejaVue Episode #038 - Self-founding and growing a Nuxt-based SaaS (with Sumit Kumar)



    Your Hosts

    Alexander Lichter

    • Twitter
    • YouTube
    • Website


    Michael Thiessen

    • Twitter
    • YouTube
    • Website


    ---

    Links marked with * are affiliate links. We get a small commission when you register for the service through our link. This helps us to keep the podcast running. We only include affiliate links for services mentioned in the episode or that we use ourselves.

    Show more Show less
    1 hr and 21 mins
  • Composition API vs Options API Special
    Dec 26 2024

    This DejaVue episode comes as a little special! As a belated Christmas present, we got everything, literally everything that was discussed on this podcast about one big topic: Composition API vs. Options API.
    A lot of our previous guests had their own takes on the two APIs - and some might surprise you! So, why not tuning in and hear fifteen people talk about their opinions, insights and suggestions when it comes to using their preferred API in Vue - and why.

    Oh, and yes - there is even a little spoiler for next weeks episode

    Enjoy the episode!

    Chapters

    • (00:00) - Welcome to the DejaVue Special
    • (00:37) - Evan You
    • (18:04) - Natalia Tepluhina
    • (26:09) - Tim Benniks
    • (27:11) - Joe Tannenbaum
    • (30:14) - CJ Reynolds
    • (37:33) - Simone Cuomo
    • (41:28) - Sumit Kumar
    • (48:29) - Jakub Andrzejewski
    • (49:54) - Rijk van Zanten
    • (53:47) - Eduardo San Martin Morote
    • (57:46) - Vue Toronto Panel
    • (58:18) - Wrapping Up


    Links and Resources


    • Organizing Composition API Code Video
    • Michael's Inline Composable Article
    • Screenshot CAPI OAPI Comparison
    • Evan's Migrated File
    • Pinia


    Referenced Episodes

    • DejaVue #E015 - Ten Years of Vue.js (with Evan You)
    • DejaVue #E020 - Documentation and Migration: From Vue 2 to Vue 3 (with Natalia Tepluhina)
    • DejaVue #E009 - Vue.js in Large Applications (with Tim Benniks)
    • DejaVue #E029 - Inertia.js (with Joe Tannenbaum)
    • DejaVue #E033 - Vue or React (with CJ Reynolds)
    • DejaVue #E032 - Getting Started with Vue.js (with Simone Cuomo)
    • DejaVue #E039 - Migrating a SaaS from Nuxt 2 to Nuxt 3 (with Sumit Kumar)
    • DejaVue #E036 - Secure your Vue and Nuxt Applications (with Jakub Andrzejewski)
    • DejaVue #E041 - The Quadruple Migration (with Rijk van Zanten) is coming up NEXT WEEK
    • DejaVue #E030 - Pinia and Data Loaders (with Eduardo San Martin Morote)
    • DejaVue #E037 - VueConf Toronto Panel (with Evan You, Daniel Roe, Sigrid Huemer and John Leider)


    Your Hosts

    Alexander Lichter

    • BlueSky
    • Twitter
    • YouTube
    • Twitch
    • Website


    Michael Thiessen

    • Twitter
    • YouTube
    • Website


    Links marked with * are affiliate links. We get a small commission when you register for the service through our link. This helps us to keep the podcast running. We only include affiliate links for services mentioned in the episode or that we use ourselves.

    Show more Show less
    1 hr
  • Migrating a SaaS from Nuxt 2 to Nuxt 3 (with Sumit Kumar)
    Dec 20 2024

    The second half of the conversation with Sumit Kumar focuses all on the technical side of his SaaS.

    At first, Michael and Alex talk about Sumit's experience with the migration from Nuxt 2 to Nuxt 3 - and we all know this isn't an easy one. Further, the Composition API vs. the Options API, as well as structuring code and writing good composables are discussed.
    And of course, the question if Sumit considered rewriting the application based on another tech stack was part of it too - he had really good reasons why he didn't!

    Time to tune in.

    Enjoy the Episode!

    Our Guest

    Sumit Kumar

    • Parqet (GER)
    • BlueSky
    • Twitter
    • YouTube


    Chapters

    • (00:00) - Welcome to DejaVue
    • (00:44) - How did your Nuxt migration go?
    • (02:32) - When did you start considering migration and why not earlier?
    • (04:42) - Composition API only packages and other pitfalls
    • (06:46) - Steps that you tried out
    • (10:11) - No such migration anymore
    • (10:28) - Time frame of the migration
    • (12:07) - What is CAPI and what stays OAPI
    • (15:31) - Getting acquainted with the Composition API
    • (18:28) - Structuring your Script part
    • (26:00) - Reusing Composables
    • (30:56) - Changing the Tech Stack?
    • (38:35) - Wrapping Up


    Links and Resources


    • Fill out the State of Vue.js Survey


    • Pinia
    • Michael's Inline Composable Article
    • Organizing Composition API Code Video
    • Michael's Composable Design Patterns Course (Early Access)
    • Screenshot CAPI OAPI Comparison
    • Evan's Migrated File
    • DejaVue #E020 - Documentation and Migration: From Vue 2 to Vue 3 (with Natalia Tepluhina)
    • DejaVue #E010 - Design Patterns in Vue.js



    Your Hosts

    Alexander Lichter

    • Twitter
    • YouTube
    • Website


    Michael Thiessen

    • Twitter
    • YouTube
    • Website


    ---

    Links marked with * are affiliate links. We get a small commission when you register for the service through our link. This helps us to keep the podcast running. We only include affiliate links for services mentioned in the episode or that we use ourselves.

    Show more Show less
    41 mins
  • Self-founding and growing a Nuxt-based SaaS (with Sumit Kumar)
    Dec 12 2024

    In this episode of DejaVue, Alex and Michael are joined by Sumit Kumar, the founder of Parqet.

    Sumit shares his journey from getting into Web Development and Vue.js over to working at Stripe and eventually founding Parqet, a (German) portfolio tracker SaaS. Topics covered in the first part of our conversation include a lot of business insights, such as the transition from being a developer to being a founder, the challenges and benefits of bootstrapping, as well as the importance of marketing.


    If you are interested in the business side of things, you definitely should not miss out.


    Enjoy the episode!

    Our Guest

    Sumit Kumar

    • Parqet (GER)
    • BlueSky
    • Twitter
    • YouTube


    Chapters

    • (00:00) - Welcome to DejaVue
    • (01:28) - How did you get into Web Development and Vue.js?
    • (04:53) - Converging Frameworks
    • (07:39) - Previous Work Experiences and joining Stripe
    • (10:15) - What did you learn from working at Stripe?
    • (14:05) - The Front Page Test
    • (16:39) - How did your start Parqet?
    • (20:12) - The Transition from Developer to Founder
    • (23:02) - Can you focus only on Programming as a Founder?
    • (27:03) - Finding a CEO instead of being one
    • (29:25) - Marketing is Half the Job
    • (30:24) - How did Parqet grow?
    • (39:56) - Why don't you share your MRR anymore?
    • (43:15) - Why did you choose to bootstrap
    • (49:26) - Niche down strategy
    • (51:47) - Dealing with GDPR and localization
    • (01:00:40) - Wrapping up


    Links and Resources


    • Fill out the State of Vue.js Survey
    • And also the State of JS Survey 🙌


    • Mastering Nuxt 3*
    • DejaVue #E031 - All About VoidZero (with Evan You)
    • Parqet (GER)
    • The EMyth Revisited
    • MAKE
    • The Launch Livestream of Parqet fka. Tresor One (GER/ENG)
    • Minimal Empires (GER)
    • Verhältnismäßigkeit
    • How to center a div



    Your Hosts

    Alexander Lichter

    • Twitter
    • YouTube
    • Website


    Michael Thiessen

    • Twitter
    • YouTube
    • Website


    ---

    Links marked with * are affiliate links. We get a small commission when you register for the service through our link. This helps us to keep the podcast running. We only include affiliate links for services mentioned in the episode or that we use ourselves.

    Show more Show less
    1 hr and 1 min
  • VueConf Toronto Panel (with Evan You, Daniel Roe, Sigrid Huemer and John Leider)
    Dec 5 2024

    For the first time, the DejaVue Podcast goes "live"! Alex and Michael met up at VueConf Toronto and could do a whole DejaVue episode on stage. Of course, this is even more fun with guests, so they are joined by four speakers of the Conference.

    • Evan You, Creator of Vue, Vite, Rolldown and Founder of VoidZero,
    • Daniel Roe, Lead of the Nuxt Team,
    • Sigrid Huemer, Software Engineer at Sentry, and
    • John Leider, Creator of Vuetify.

    But that's not the end! The audience could ask questions to the whole panel, while the DejaVue hosts curated and selected the most interesting ones.
    Learn more about how all of the panelists started with Open Source, which were their biggest achievements, how Impostor Syndrome influenced them, what talks they'd be interested in as speakers and much more

    Enjoy the Episode!

    Our Panelists

    Evan You

    • Vue.js
    • Vite
    • VoidZero
    • Bluesky

    Daniel Roe

    • Website
    • YouTube
    • Bluesky

    Sigrid Huemer

    • Website
    • Bluesky

    John Leider

    • Website
    • Twitter


    Chapters

    • (00:00) - Welcome to DejaVue Live
    • (00:38) - Introducing our panelists
    • (02:29) - How did you get into Open Source?
    • (06:23) - What side projects are you working on?
    • (11:40) - Do you feel the impostor syndrome?
    • (18:53) - What were your biggest achievements so far?
    • (22:42) - How to get started contributing to Open Source?
    • (34:37) - What kind of talks would you be interested in?
    • (38:55) - Quickfire questions - What is your favorite Vue feature?
    • (39:32) - Options API or Composition API?
    • (39:46) - ref or reactive?
    • (40:03) - Tabs vs. Spaces?
    • (40:34) - Favorite Editor?
    • (40:52) - Conferences in person or remote?
    • (41:06) - Git - Rebase or Merge?
    • (41:28) - Podcast, Video or Blogposts?
    • (41:48) - Your favorite way of writing CSS?
    • (42:42) - What is your favorite Frontend Framework?


    Links and Resources


    • Fill out the State of Vue.js Survey
    • And also the State of JS Survey 🙌



    Your Hosts

    Alexander Lichter

    • Twitter
    • YouTube
    • Website


    Michael Thiessen

    • Twitter
    • YouTube
    • Website


    ---

    Links marked with * are affiliate links. We get a small commission when you register for the service through our link. This helps us to keep the podcast running. We only include affiliate links for services mentioned in the episode or that we use ourselves.

    Show more Show less
    43 mins
  • Secure your Vue and Nuxt applications (with Jakub Andrzejewski)
    Nov 28 2024

    Security is a topic that is often overlooked in the frontend world. But at least for you all - no longer! To make sure we cover Security for Vue and Nuxt applications as broad as possible, Michael and Alex are joined by Jakub Andrzejewski, who is not only a Senior Frontend Developer but also author of the Nuxt Security Module. We cover not only the module but also how to avoid common security mistakes as a Vue developer and how to protect your applications from vulnerabilities, and which are the most common ones.


    Of course, we can't miss out on the State of Vue.js Survey, which is currently running and was co-created by Jakub as well!


    Besides talking about the Security and the State of Vue.js, we also discuss how Jakub got into Vue.js at first and how he perceived the transition to Vue 3 and the Composition API.


    Enjoy the episode!

    Our Guest

    Jakub Andrzejewski

    • Blog
    • Bluesky
    • Twitter


    Chapters

    • (00:00) - Welcome to the DejaVue Podcast
    • (00:12) - Introducing our Guest
    • (02:07) - The Nuxt Ecosystem Team
    • (07:47) - How did you get into Vue.js
    • (13:09) - Transition to Vue 3 and Composition API
    • (17:00) - React Livecoding as a Vue Dev
    • (18:10) - vue-vine for multiple components
    • (20:34) - State of Vue
    • (30:30) - The Nuxt Security Module
    • (37:36) - Will the module project you from everything?
    • (41:59) - The ShipFast incident
    • (45:05) - Ethical Hacking and NPM Security Vulnerabilities
    • (49:24) - Privilege Escalation at Shopify
    • (51:45) - Nuxt Security without a Server
    • (54:28) - More Logic in the Frontend
    • (55:38) - Nothing to Hide?
    • (57:28) - Security Mistakes to Avoid as a Vue Developer
    • (01:02:13) - Wrapping up


    Links and Resources


    • Fill out the State of Vue.js Survey
    • And also the State of JS Survey 🙌


    • Nuxt Security Module
    • Vue Vine
    • State of Frontend (Results out)
    • OWASP Top 10
    • DejaVue #E006 - Nuxt Server Components (with Julien Huang)
    • Shipfast incident writeup



    Your Hosts

    Alexander Lichter

    • Twitter
    • YouTube
    • Website


    Michael Thiessen

    • Twitter
    • YouTube
    • Website


    ---

    Links marked with * are affiliate links. We get a small commission when you register for the service through our link. This helps us to keep the podcast running. We only include affiliate links for services mentioned in the episode or that we use ourselves.

    Show more Show less
    1 hr and 5 mins
  • Error Handling in Vue
    Nov 25 2024

    All of you have seen users do weird things with your application and running into strange scenarios - who can't relate to this?
    For this and many other reasons, the right way of error handling is important in you application. Join Michael and Alex on a discussion of the different ways one can handle errors in their application.
    That includes not always showing an error page, but also handling errors request-based or component-based!

    On that note, error messages and how to write decent ones that are helpful for the users are discussed, as well as how components like NuxtErrorBoundary work under the hood

    Enjoy the episode!

    Chapters

    • (00:00) - Welcome to DejaVue
    • (01:22) - The good old error page
    • (01:58) - Write good error messages!
    • (03:11) - The Vue global error handler
    • (05:07) - Server vs. Client Errors in Nuxt.js
    • (08:34) - The vue:error hook
    • (09:05) - Global error handling for $fetch and interceptors
    • (11:10) - Throw unhandled errors in Prod with Vue 3.5?
    • (13:07) - Component-level error handling
    • (16:33) - NuxtErrorBoundary
    • (18:01) - defineAsyncComponent
    • (18:53) - Request-based error handling
    • (21:45) - New default values in Nuxt 4
    • (23:30) - Error Tracking
    • (26:33) - Actually handling the errors
    • (28:54) - Wrapping up


    Links and Resources


    • State of JS Survey
    • Sentry
    • Bugsnag
    • Rollbar
    • Michael's talk on error handling in Nuxt
    • Michael's article on error handling in Nuxt*
    • And another deep dive into Nuxt 3 error handling*
    • DejaVue #E034 - Data Fetching in Vue and Nuxt
    • Vue Issue regarding throwing errors in production (low level)
    • Vike
    • NuxtErrorBoundary component Source Code
    • ofetch
    • Zod
    • Valibot
    • Nuxt 4 error and data will be undefined by default
    • Create abstractions for your headings and buttons


    Your Hosts

    Alexander Lichter

    • BlueSky
    • Twitter
    • YouTube
    • Twitch
    • Website


    Michael Thiessen

    • Twitter
    • YouTube
    • Website


    Links marked with * are affiliate links. We get a small commission when you register for the service through our link. This helps us to keep the podcast running. We only include affiliate links for services mentioned in the episode or that we use ourselves.

    Show more Show less
    29 mins