

Chats with Kent C. Dodds
Kent C. Dodds
Kent C. Dodds chats with developers.
Episodes
Mentioned books

Oct 4, 2021 • 33min
Taylor Bell Chats About Effective Teaching
Teaching what you know is a great way to give back to your community, grow your reputation as an expert, and to even make some extra income. But, just because you're an expert doesn't automatically mean you'll be able to effectively transfer your knowledge and skills to others.Taylor Bell works for egghead, and one of his main focuses is helping instructors plan courses through an academic discipline known as "instructional design". Specifically, the "Understanding by Design" methodology is used. This process ensures that instructors are able to effectively teach what they know and be confident in learners retaining the knowledge. From a high level, it's a three stage process of determining the desired results, determining the evidence that proves the learner is achieving those results, and developing a plan that results in the learner being able to apply what they've learned to other scenarios. So if you're interested in writing better instructional blog posts, recording better videos, and just becoming a more effective teacher in general, check out this episode!HomeworkThink of something that you could teach to somebody else, and try to frame it in the three stages of UBD. Email Taylor your homework - taylor@egghead.ioResourcesUnderstanding by DesignMake It StickGuest: Taylor BellTwitter: @taylorbellGitHub: @tayiorbeiiWebsite: taylorbell.comHost: Kent C. DoddsWebsite: kentcdodds.comTwitter: @kentcdoddsGitHub: @kentcdoddsYouTube: Kent C. DoddsEpic React: epicreact.dev

Oct 4, 2021 • 31min
Daria Caraway Chats About Having a Generalist Skillset
Software development has always been a fast-paced sector. New and better technologies are constantly coming out and if companies don't keep up they'll soon be out of date. Daria has experience with multiple teams who were upgrading their stack, and through that has discovered joy in being a generalist who is capable of working with a variety of technologies and able to see the big picture.She has found having a generalist skillset both keeps her interested and gives her the ability to communicate with the front and backend teams in ways they both understand. With her ability to understand the different levels and keep everyone on the same page she is on the path to becoming an effective engineering manager in the coming years. "Generalist" doesn't just mean full-stack developer, there are many more skill areas than front and back end. Maybe you could work on the CI pipeline, or maybe automated testing. There is a lot of value in choosing this path instead of building the deep knowledge of a specialist. They can't work in isolation, someone has to be able to coordinate and "be the glue" between the different parts of the stack. HomeworkTake five minutes to think about whether you want to be a generalist or a specialist, and then write down the three things you can do to get your career to go in that directionTalk to your manager about your career goalsGuest: Daria CarawayTwitter: @dariacarawayGitHub: @darcar31Website: dariacaraway.comHost: Kent C. DoddsWebsite: kentcdodds.comTwitter: @kentcdoddsGitHub: @kentcdoddsYouTube: Kent C. DoddsEpic React: epicreact.dev

Oct 4, 2021 • 36min
Daria Caraway Chats About TypeScript
TypeScript has been taking over, and for good reason. Have you ever had good end-to-end or integration tests that ended up being invaluable during some refactoring? You can think of TypeScript in the same way. It's amazing when it's done well, but when done poorly it's misleading and a huge headache. Because of this, migrating to TypeScript is not a magic bullet. When converting large pieces of code from JavaScript to TypeScript you need to be cautious about typing things correctly, don't be afraid of using unknown and moving on if you're unsure. In this episode, you'll learn more about these realities of working with TypeScript and why it's all totally worth it! HomeworkTypeScript Users: Take a look at five interfaces you wrote recently and see if you can refactor them to make them easier to read for the next person.Non-TypeScript Users: Think about the last complex code that you had to interface with and whether it would have been easier to interface with if it had types.Guest: Daria CarawayTwitter: @dariacarawayGitHub: @darcar31Website: dariacaraway.comHost: Kent C. DoddsWebsite: kentcdodds.comTwitter: @kentcdoddsGitHub: @kentcdoddsYouTube: Kent C. DoddsEpic React: epicreact.dev

6 snips
Oct 4, 2021 • 50min
Michael Jackson Chats About Remix
In this podcast, Kent C. Dodds and Michael Jackson discuss the elegant solution Instagram used to generate millions of IDs per second. They also talk about the philosophy behind Remix and how it encourages using the web's built-in features. Michael shares their academic journey and their latest project, Remix. They explore the strategy of caching data client-side for quick navigation and discuss funding challenges in open source software.

14 snips
Oct 4, 2021 • 31min
Lydia Hallie and Evan Bacon Chat About Leveling Up Your JS
The JavaScript ecosystem is vast and solves a wide array of problems. Because of this, it is key that you have a foundational understanding of JavaScript if you want to be able to work across the JS spectrum. It is also helpful to know the layers of abstraction that are going on. Become familiar with what comes with the browser like the navigator API and what comes with Node like file system or assert. If you can understand these parts then it becomes easier to know how to use JavaScript in whatever context you are in. Inspiration is the most important thing when learning to code. Do what excites you. Without that fire, you are going to burn out when things get difficult. Try to build whatever sounds fun to you, and see how you can incorporate what you're trying to learn into that. Afterward, you can learn a lot by trying to optimize your project!Always strive to gain a deeper understanding of your tools beyond their applications. When you read specs and source code you'll become more familiar and be able to write much better code. HomeworkTake 30 minutes to dive deeper and try to understand how a tool you use works under the hood.ResourcesAdvice From A 19 Year Old Girl & Software DeveloperGuest: Lydia HallieTwitter: @lydiahallieGitHub: @lydiahallieWebsite: lydiahallie.ioGuest: Evan BaconTwitter: @BaconbrixGitHub: @EvanBaconWebsite: evanbacon.devHost: Kent C. DoddsWebsite: kentcdodds.comTwitter: @kentcdoddsGitHub: @kentcdoddsYouTube: Kent C. DoddsEpic React: epicreact.dev

Oct 4, 2021 • 30min
Titus Wormer Chats About Natural Language Processing Tools
Titus Wormer does a lot of work with natural language processing. He is the creator of Retext, Remark, and many many more open-source projects. In this episode Titus chats about his extensive open-source work, and goes a bit deeper into his ecosystem of natural language processing tools and plugins. You'll also learn about abstract state trees and their practical applications!HomeworkPlay around on astexplorer.netFollow along with Kent's blog post - Write Your Own Code Transform for fun and profitResourcesSponser Titus on GithubGuest: Titus WormerTwitter: @wooormGitHub: @wooormWebsite: wooorm.comHost: Kent C. DoddsWebsite: kentcdodds.comTwitter: @kentcdoddsGitHub: @kentcdoddsYouTube: Kent C. DoddsEpic React: epicreact.dev

Oct 4, 2021 • 33min
Titus Wormer Chats About ECMAScript Modules
It's time to embrace ESM (ECMAScript Module). NodeJS is providing support for ESM out of the box. With ESM modules coming out of the experimental stage we're going to see a lot of packages begin to embrace it. ESM provides superior organization of your code by allowing you to more easily create smaller, reusable chunks of code. ESM gives you a "module scope" where not only are functions and variables available to each other in the same module but also allows you to explicitly make them available to other modules. There is also the Loader API that is currently in its experimental stages.In this episode, you'll also learn about more differences between ESM and CommonJS, and some of the challenges and potential problems of using native ESM today. HomeworkFollow along with one of the following blog posts:Super Simple Start to ESModules in Node.jsSuper Simple Start to ESModules in the BrowserResourcesMisunderstanding ES6 Modules, Upgrading Babel, Tears, and a SolutionGet Ready For ESMGuest: Titus WormerTwitter: @wooormGitHub: @wooormWebsite: wooorm.comHost: Kent C. DoddsWebsite: kentcdodds.comTwitter: @kentcdoddsGitHub: @kentcdoddsYouTube: Kent C. DoddsEpic React: epicreact.dev

Oct 4, 2021 • 30min
Will Johnson Chats About Landing a Job in Tech
Will Johnson used to work for call centers and factories, but he managed to make the daunting career change into tech. This especially isn't easy when you're clocking in 12 hour days. To make time to grow Will was waking up early, staying up late, and doing stuff on weekends."It was very, very time consuming, but it was one of those things where like I knew if I got that one chance that all of this would be worth it."In addition to building up technical skills, networking is absolutely critical for landing a roll."I knew that I had to network and meet people in the industry to advocate for me, because I knew that my resume wasn't going to have anyone beating out the door saying, 'Let's hire him.' Right? But as far as the process of building relationships was completely organic. There's not any strategy or networking books I've read. I just knew that taking people's advice, sharing things with them that they might find interesting, and following up with them was a good way to nurture a relationship with someone.""Growth hacking" style networking is disingenuous and suboptimal. It's about building genuine trust and relationships with people. When you have real trust, there won't be fear when they take the risk of referring or hiring you. To build those relationships just help people out without an expectation of something in return. Chances are you might be the person they think of when they need a podcast guest, a role needs filling at their work, etc.HomeworkFind somebody who has a need, and try to fill that need, whether it's on Discord or Twitter or wherever, without any expectation of reciprocation.ResourcesHow I Switched Careers Into Tech With No Degree In My Mid 30'sGuest: Will JohnsonTwitter: @willjohnsonioGitHub: @wjohnson85Website: williamjohnson.devHost: Kent C. DoddsWebsite: kentcdodds.comTwitter: @kentcdoddsGitHub: @kentcdoddsYouTube: Kent C. DoddsEpic React: epicreact.dev

10 snips
Oct 4, 2021 • 38min
Ryan Florence Chats About Remix
Ryan Florence chats about Remix, a web framework aiming to simplify web development by emulating the browser's abilities and eliminating full page reloads. They discuss their early experiences with React, compare it to other frameworks, and share their excitement and early involvement with Remix. The chapter also explores the evolution of web development and the challenges faced in UI programming.

Oct 4, 2021 • 38min
Cher Scarlett Chats About The Consequences of Modern Software
Web development isn't as simple as it used to be. We can't view the source of any webpage and be able to recreate it anymore, it's all bundled and obfuscated. That increased complexity comes from the increasingly larger role that the internet is taking on in our society and the need for our websites to do more than display static information.The growing role of software in our society has had its consequences. Addictive design, and biases being built into software waste people's time at best, but also have the devastating ability to ruin lives. In this episode, Cher Scarlett brings awareness to these issues and recommends some books that you can read to educate yourself further.HomeworkRead one or more of the following booksRace After TechnologyTechnically WrongAlgorithms of OppressionHello World: Being Human in the Age of AlgorithmsGuest: Cher ScarlettTwitter: @cherthedevGitHub: @cherscarlettWebsite: cher.devHost: Kent C. DoddsWebsite: kentcdodds.comTwitter: @kentcdoddsGitHub: @kentcdoddsYouTube: Kent C. DoddsEpic React: epicreact.dev


