Building our apps to be accessible is absolutely necessary, but building a great a11y friendly experience is extremely challenging when we ourselves aren't in a situation that requires the use of a screenreader is keyboard-only navigation. We can't fully rely on tools to audit the a11y score of our apps. With the challenge being distinctly human, computers aren't able to get a complete picture. That's why it's necessary for you to use these alternative methods for web navigation yourself. Try na...
Oct 04, 2021•33 min•Season 4Ep. 17
Everything that developers do is DX (Developer Experience). But, it can be hard to know when it is appropriate to spend the time to improve the DX at your workplace. You also might be curious about what you can do to enhance the DX. Repetitive tasks are an easy one to look out for. If you find yourself doing something again and again it's probably worth automating. This could come in the form of tests, scripts, generators, and snippets! For example, if you find yourself having to test some state...
Oct 04, 2021•30 min•Season 4Ep. 16
"I should really get more involved in open-source" is something that's always on the back of our minds. You are fully aware of how rewarding it could be but that perfect opportunity to contribute never comes up. Ian Sutherland, a maintainer of Create React App and contributor to NodeJS, used to be in that position. He had always struggled with getting into open source, he wanted to do something substantial but nothing ever came up. One day, he noticed a tiny bug in create react app. Ian quickly ...
Oct 04, 2021•31 min•Season 4Ep. 15
Vlad Magdalin is the founder of Webflow, a powerful visual development tool that enables people to create professional websites without writing code. Webflow is on a much lower level of abstraction than something like Squarespace, and users still need to understand the core fundamentals of web development. You might think that tools like these are going to take jobs away from developers, but it actually does the opposite! When innovative technologies allow more people to do work that was once re...
Oct 04, 2021•36 min•Season 4Ep. 14
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 use...
Oct 04, 2021•33 min•Season 4Ep. 13
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 afr...
Oct 04, 2021•36 min•Season 4Ep. 12
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 communica...
Oct 04, 2021•31 min•Season 4Ep. 11
Twitter and Instagram had a problem that would ordinarily be simple on smaller scales. They needed to be able to generate IDs on the order of millions per second. Twitter used a brute force method of having a triple-redundant service that generates the IDs. However, Instagram had the elegant solution of inserting a little script that could generate thousands of IDs per second but was sharded across 256 nodes. This illustrates that with the right abstraction for the job, you'll be saved a ton of ...
Oct 04, 2021•50 min•Season 4Ep. 10
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 what...
Oct 04, 2021•31 min•Season 4Ep. 9
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! Homework Play around on astexplorer.net Follow along with Kent's blog post - Write Your Own Code Transform for fun and p...
Oct 04, 2021•30 min•Season 4Ep. 7
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...
Oct 04, 2021•33 min•Season 4Ep. 8
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 critic...
Oct 04, 2021•30 min•Season 4Ep. 6
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, b...
Oct 04, 2021•38 min•Season 4Ep. 4
Modern web development has given us a cornucopia of powerful abstractions. But as we've moved to higher levels of abstraction Ryan has noticed that we are reinventing the wheel in places, especially with what the browser provides by default. Remix aims to solve this problem. Remix is trying today's benefits of a highly dynamic page, but still have that same feeling of simplicity that we had with PHP. The whole point of Remix is to emulate what the browser does so that you don't need those full p...
Oct 04, 2021•38 min•Season 4Ep. 5
Landing your first developer job isn't easy. Companies don't want to take the risk of hiring a junior, they have no idea how competent you are. A traditional resume doesn't adequately prove your abilities. Why would they just take your word for it? In order to standout you need to show those hard-earned skills off! You need to publicly showcase your work. That doesn't just mean spinning up a fancy blog or linking your Github full of tutorial projects you followed along with. Tutorials are excell...
Oct 04, 2021•31 min•Season 4Ep. 3
Almost everything we experience in the world we experience through metaphor. Even when we talk about abstract things that don't have physical form, we talk about them in terms of directionality and bodies. Stock markets go up, our moods are low, and past years are behind us. So what makes this useful to us on the internet? Strong visual metaphor is really key for people understanding things. Capturing someone's attention is critical, and you want people to immediately understand what you're tryi...
Oct 04, 2021•31 min•Season 4Ep. 2
Kent's spent the last several months completely focused on rewriting his website, recording new episodes for Chats with Kent, and creating an all new podcast called the Call Kent Podcast. Michael Chan joins Kent to ask him about the motivation to rewrite kentcdodds.com with Remix. Kent explains what technology he used to create the unique experience on the site and why Gatsby falls short of the needs of most apps. Michael also asks about the new teams feature of kentcdodds.com and how it helps y...
Oct 04, 2021•45 min•Season 4Ep. 1
Tanner Linsley is the creator of react-table, react-charts, and react-query. Tanner also has a startup called nozzle.io where they track rankings in Google and do cool things around technical SEO. A lot of Tanner's libraries were born out of necessity at nozzle. We often reach for abstractions that were built to solve problems that we don't have and that ends up creating awkward problems for us. We wind up with poor performance or a bigger bundle size than we need, so having a custom made soluti...
May 19, 2020•36 min•Season 3Ep. 12
Serene Yew runs Pixeltree, a software consultancy that focuses on sourcing junior talent and providing them with the mentorship that they need so they can bridge the experience gap and get a job. What better way to incite change than to be that change? You can have a huge influence on someone by taking on a mentorship role. And, not only does mentorship benefit who you're mentoring, but it also benefits you. Serene finds that every single person that she's mentored has changed her in some way fo...
May 19, 2020•30 min•Season 3Ep. 11
Saron Yitbarek started a company called Code Newbie, which started as a Twitter community and grew into a couple of podcasts and a conference. Saron first became interested in technology after she read the Steve Jobs book, it was the first time she got introduced to technology in a way that she could relate to, where tech was talked about through the eyes of design, art, and storytelling. So, she started calling CEOs of startups until she got an internship, which led to a job. Saron wanted to ge...
May 19, 2020•38 min•Season 3Ep. 10
Software development isn't limited to "nerds." During her time at Andreessen Horowitz, Preethi met thousands of entrepreneurs. What she realized was that software engineering is what these entrepreneurs use to change the world. They're able to code the future they believe in using software engineering. A lot of people were surprised that Preethi gave up a promising career in venture capital to become a developer. But, Preethi says that the greatest artists reinvented themselves often. There's so...
May 19, 2020•34 min•Season 3Ep. 9
One of the things Michael loves about React is that it's a lot easier to make a black box of abstraction with iron-clad React components that don't leak. Something that concerns Michael deeply about any technology is when we put too much inside of it. We saw this pretty early on in React, where everyone was taking all manner of state and putting it into Redux. We have to think about the principle of co-location and the fact that the closer you put related things together, the easier it will be t...
May 19, 2020•40 min•Season 3Ep. 8
It was around 2008-2010 when Michael's family's business went under due to the recession. From that point, Michael spent every spare second he had reading whatever he could. He'd be reading Ruby and JavaScript documentation while he pushed his son on the swing. In this episode, Michael talks about what it takes to break into the tech industry. He explains how interviews are a hackable skill and the importance of building relationships in the industry. Homework Sit down for 5 minutes and think ab...
May 19, 2020•33 min•Season 3Ep. 7
Most applications on the backend and the front end get built as a monolith, but you could improve your developer experience and performance if you broke your applications out into microservices. The pros and cons are the same for monorepos and microservices. Microservices is a different paradigm. And so, there's a lot of training that goes involved for different people to understand the various deployment processes. The microservices system is slightly more complex in some ways, but on the pro s...
May 19, 2020•32 min•Season 3Ep. 6
What does it mean to test in production? Simply put, testing in production means testing your features in the environment where your features will live. So what if a feature works in staging, that's great, but you should care if the feature works in production, that's what matters. An excellent tool for testing in production is feature flagging. Feature flagging allows you to separate your code deployment from your feature release. So, when you use a tool like future flagging, you're able to tar...
May 19, 2020•30 min•Season 3Ep. 5
Dr. Michaela Greiler is focused on helping teams make code reviews their superpower! During Dr. Michaela's time at Microsoft, they found that developers were spending six hours a week doing code reviews. You have to ask yourself if that time is really being well spent. How do you ensure that code reviews are worth the time? There is a huge variety of experiences with code review. It can be really good, and it can be really, really horrible as well. There is not a lot of formal training around it...
May 19, 2020•32 min•Season 3Ep. 4
The internet is one of those resources that we have available to us, and it's fantastic at what it does. However, there's a lot of content that isn't super curated and isn't in a format that makes it digestible. Courtney is interested in making the web accessible not only in the way we typically think of accessibility for people with disabilities who need screen readers and other assistive technologies but also for people with mental disabilities or difficulty learning. We can help by improving ...
May 19, 2020•29 min•Season 3Ep. 3
In her free time, Amelia Wattenberger enjoys creating "code sketches." On the surface, they might just look like silly examples, but she's learned concepts or ways of doing things through these tiny code examples. You can learn a lot by playing with something in isolation and then trying to see how you can apply it to a production application later. Amelia then goes on to share her process of creating a blog post. Step one is thinking of the main idea she wants to communicate. Step two is asking...
May 19, 2020•33 min•Season 3Ep. 2
Thorium is the software that space centers use for the computer controls and the flight director controls of simulated space ship experiences! The cool thing about Thorium is that it's entirely web-based. Alex is using React to build Thorium and a 3D universe. The 3D universe is being driven by react-three-fiber by Paul Henschel, which is a fantastic piece of software. Alex says that if you are privileged enough to have the time and the energy and the resources to be able to do side projects, th...
May 19, 2020•33 min•Season 3Ep. 1
Laurie has a tough time saying no, and she ends up trying a lot of different things, but this isn't necessarily a bad thing. Attempting to learn something new gives you the fresh perspective of a beginner starting from nothing. We get comfortable and take for granted the pieces of knowledge we have on our skills. You have to find a balance, though. It's demotivating to feel dumb all of the time. You need to use the thing you learned for some time, so you advance beyond the beginner phase of the ...
Nov 27, 2019•32 min•Season 2Ep. 12