Consume ➡️ Build ➡️ Teach

Rate this content
Bookmark

How do you level up? How do you jumpstart your learning when getting into something new? Nobody has more than 24 hours a day, so how do you maximize the impact of your limited time?


In this keynote, I'm going to tell you a bit of my own story, and some tips and tricks that I've learned so you can be as productive as you can be at learning new things and solidifying that knowledge so it's there when you need it.

FAQ

The 'consume, build, teach' method is a learning strategy where one starts by consuming curated content to gather knowledge, then applies this knowledge by building projects, and finally solidifies understanding by teaching others about the learned concepts.

Early in his career, Kent C. Dodds created several projects including SpendMyCents.com, a web application for finding products on Amazon within a specific price range, and Infinite WPM, a fun typing tool that simulates extremely fast typing speeds.

Teaching helped Kent C. Dodds deepen his understanding of technologies and concepts he was working with. It also provided opportunities for recognition and career advancement, such as his involvement with Egghead.io after giving a talk that caught the attention of its co-founder.

Kent recommends resources such as Epicreact.dev and testingjavascript.com, along with engaging in community discussions on platforms like Discord, and participating in coding communities like Reactiflex.

The Genie.js project was significant as it was Kent's first open source library, created to handle an overflow of keyboard shortcuts by implementing an Alfred-like tool for web apps. This project impressed his colleagues and helped him secure his first full-time job at Domo.

Kent views teaching as a crucial step in the learning process. By teaching, individuals not only reinforce their own understanding but also expose gaps in their knowledge, which can lead to deeper insights and learning.

Kent C. Dodds advocates for a learning philosophy centered around the 'consume, build, teach' cycle. This approach emphasizes consuming information, building with the acquired knowledge, and teaching to solidify understanding and contribute to the community.

Kent C. Dodds
Kent C. Dodds
29 min
17 Jun, 2021

Comments

Sign in or register to post your comment.

Video Summary and Transcription

Kent C. Dodds discusses the consume, build, and teach approach to learning and upgrading oneself in a software development career. He emphasizes the importance of consuming curated content, learning from others, and applying different learning methods. Kent shares his experiences in creating personal projects, building projects to understand technologies, and learning through projects. He highlights the power of teaching, the benefits of learning clubs, and the importance of balancing personal life and learning. Kent also introduces Epic React, his workshop-focused approach to teaching React.

Available in Español: Consume ➡️ Build ➡️ Teach

1. Introduction to Consume, Build, and Teach

Short description:

Hi everyone, my name is Kent C. Dodds and I'm so excited to talk with you about consume, build and teach. This is the way that I learn and from my observations in teaching other people about various topics, this is the best way that I've found to actually learn and solidify and be able to apply the things that you want to learn to upgrade yourself in your career. So this is some stuff about me. This is how I work for myself. I have testingjavascript.com and Epicreact.dev which you should absolutely take a look at. And you can find a link to my slides here. It's kcd.im slash cbt and that's consume, build, teach. And with that let's just go ahead and get started. This talk is my personal experiences, some things that I missed up, some things that I got right and how I recommend you focus your learning, how you structure your learning just kind of in a general way and also based on a previous talk that I gave called zero to 60 in software development, how to jumpstart your career. So I've taken out a couple of the career specific things and just focused totally on consume, build and teach which is a really important aspect for us upgrading ourselves in our career. So without any further ado, let's jump into it.

JavaScript for Web Design A course by Jonathan Atkinson A message by Christopher R. Mead ReactiveJS A course by Jonathan Atkinson A message by Christopher R. Mead A message by Jonathan Atkinson A message by Christopher R. Mead A course by Jonathan Atkinson A message by Christopher R. Mead A message by Jonathan Atkinson A message by Christopher R. Mead A message by Christopher R. Mead A message by Christopher R. Mead

Hi everyone, my name is Kent C. Dodds and I'm so excited to talk with you about consume, build and teach. This is the way that I learn and from my observations in teaching other people about various topics, this is the best way that I've found to actually learn and solidify and be able to apply the things that you want to learn to upgrade yourself in your career. So this is some stuff about me. This is how I work for myself. I have testingjavascript.com and Epicreact.dev which you should absolutely take a look at. And you can find a link to my slides here. It's kcd.im slash cbt and that's consume, build, teach. And with that let's just go ahead and get started. This talk is my personal experiences, some things that I missed up, some things that I got right and how I recommend you focus your learning, how you structure your learning just kind of in a general way and also based on a previous talk that I gave called zero to 60 in software development, how to jumpstart your career. So I've taken out a couple of the career specific things and just focused totally on consume, build and teach which is a really important aspect for us upgrading ourselves in our career. So without any further ado, let's jump into it.

Consume. So a little bit of a story from my past. When I was just getting started, I read a bunch of books. I actually worked at a company in San Antonio called USAA just as an intern for a summer. And I lived just south, I think south of the campus, and my office where my chair was was at the north side. The campus was a mile long, so it was a mile to campus and then a mile to the other side of the campus. And that whole time I was reading books. I would just grab a book from the library, maintainable JavaScript, this giant thick thing. At the time I was doing AngularJS, so I got an AngularJS book. Just tons of books as I was just getting into software development in general. I was still in school at the time.

2. Tips for Consuming Information and Learning

Short description:

Reading was a big help for me. Consume curated content from sources like epicreact.dev, testingjavascript.com, newsletters, podcasts, and more. Learn from others through water cooler chats, listening to engineers, open source projects, Stack Overflow, Twitter meetups, and conferences. Everyone learns differently, so apply different consumption methods based on your learning style. Once you've consumed enough information, start building.

And so I would read these books and fill my mind with tons of information. So this is one tip I actually don't read anymore, like at all, but this was really useful to me as I was just getting started into software development. And what it did for me was it exposed me to lots of different ideas that I never even considered, things that I didn't know, and it helped me get an idea of what was possible with this amazing thing that we call technology and writing software.

So reading was a big help for me. In general the idea is I want you to consume curated content. So things like epicreact.dev and testingjavascript.com, but also newsletters from Peter, awesome person, and ui.dev, that Bytes stuff, and then we've got React podcast. So podcasts, I've got my own newsletter, so I'll send you blog posts that I write. And then we've got Syntax FM. So really it's just consume as much information as you can. And what this does is it exposes you to what's possible, to the things that people are doing, to the opportunities and in particular with Epic React and testing JavaScript, I hope that it not only exposes you to what's possible, but also gives you the exercises and the tools that you need so that you can go beyond just consuming and actually building and even teaching. And I'll talk a little bit more about those aspects here in a little bit. But just in general, just fill your mind with what is happening in the ecosystem and what's possible with software.

So learn from others, water cooler chats, or during the pandemic, maybe Discord is a more appropriate place to just hang out and lurk a little bit, see what other people are talking about. When I was first getting into software, I worked at a company called Domo. I was actually still in school. And I would just listen to the other engineers in the building talking about the problems that they were facing. And I learned a huge amount of things from that. Maybe I didn't dive in deep, but I at least got an idea of what types of problems people are facing and what are the buzzwords that they're using that I can go and look up later. So yeah, pay attention to what other engineers are talking about, and then you can just have that kind of at the surface level of your mind so you can dive in deeper later. Open source is a huge opportunity for learning. So that's another area where you can just watch a repo and see how people solve different problems. You're not actually getting anything that you can maybe apply right away, but it's exposing you to different ways of thinking about problems. Even Stack Overflow, Twitter meetups, conferences, this is how we can learn from other people. George Evans once said, every student can learn, just not on the same day or the same way. So we have lots of different ways that we learn, and I would also suggest to you that you're not just a single-dimensional learner either. You learn from different mechanisms and different concepts, you learn in different ways. So maybe you think that you're a visual learner or you're a hands-on learner. No, you're actually both, and so you're going to want to apply the different consumption methods at different levels. You'll have your own recipe for consuming information and learning. So once you've consumed enough information, then you want to go out and build something.

Check out more articles and videos

We constantly think of articles and videos that might spark Git people interest / skill us up or help building a stellar career

Impact: Growing as an Engineer
React Summit 2022React Summit 2022
27 min
Impact: Growing as an Engineer
Top Content
Becoming a web engineer is not easy, but there are tons of resources out there to help you on your journey. But where do you go from there? What do you do to keep growing, and to keep expanding the value you bring to your company? In this talk we’ll look at the different kinds of impact you can have as a web engineer. We’ll walk through what it means to take on bigger, more complex projects, and how to scale yourself, and grow the community around you. By driving our own development we can all grow our impact, and in this talk, we’ll discuss how to go about this.
Fighting Technical Debt With Continuous Refactoring
React Day Berlin 2022React Day Berlin 2022
29 min
Fighting Technical Debt With Continuous Refactoring
Top Content
Let’s face it: technical debt is inevitable and rewriting your code every 6 months is not an option. Refactoring is a complex topic that doesn't have a one-size-fits-all solution. Frontend applications are particularly sensitive because of frequent requirements and user flows changes. New abstractions, updated patterns and cleaning up those old functions - it all sounds great on paper, but it often fails in practice: todos accumulate, tickets end up rotting in the backlog and legacy code crops up in every corner of your codebase. So a process of continuous refactoring is the only weapon you have against tech debt. In the past three years, I’ve been exploring different strategies and processes for refactoring code. In this talk I will describe the key components of a framework for tackling refactoring and I will share some of the learnings accumulated along the way. Hopefully, this will help you in your quest of improving the code quality of your codebases.
AI and Web Development: Hype or Reality
JSNation 2023JSNation 2023
24 min
AI and Web Development: Hype or Reality
In this talk, we'll take a look at the growing intersection of AI and web development. There's a lot of buzz around the potential uses of AI in writing, understanding, and debugging code, and integrating it into our applications is becoming easier and more affordable. But there are also questions about the future of AI in app development, and whether it will make us more productive or take our jobs.
There's a lot of excitement, skepticism, and concern about the rise of AI in web development. We'll explore the real potential for AI in creating new web development frameworks, and separate fact from fiction.
So if you're interested in the future of web development and the role of AI in it, this talk is for you. Oh, and this talk abstract was written by AI after I gave it several of my unstructured thoughts.
JavaScript Haikus: My Adventures in Tiny Coding
JS GameDev Summit 2023JS GameDev Summit 2023
27 min
JavaScript Haikus: My Adventures in Tiny Coding
Discover the art of crafting extremely small JavaScript programs. In this talk you’ll learn principles and techniques behind crafting compact yet powerful scripts that are shorter than this description! Dive into the captivating world of minimalist coding, where we use these scripts to conjure art, games, tools, and a myriad of intriguing experiments.
Forget Bad Code, Focus on the System
React Summit US 2023React Summit US 2023
27 min
Forget Bad Code, Focus on the System
Top Content
Prop drilling is fine. Duplication is great. Long functions are love.

We talk a lot about bad complicated code because it’s easy to see the problem. But research shows engineers can work around self-contained bad code just fine. What really trips them up is something else entirely – architectural complexity.

Architectural complexity makes your code hard to work with, causes 3x more bugs, halves productivity, and may even cause devs to ragequit. In this talk we explore what you can do.
Confessions from an Impostor
JSNation 2022JSNation 2022
46 min
Confessions from an Impostor
Top Content
You know what impostor syndrome is, right!? Most all of us have felt that nagging feeling that we're faking it and that we're sure to be found out by all the experts around us at any moment.But before you go assuming this talk is the same ol' song and dance full of platitudes that encourage you to ignore that syndrome, let me clue you in on a little secret: there's no experts around you. Impostorism is not a syndrome at all, it's a pragmatic mindset and perspective, one we should all embrace and be proud of. In fact, it's vital to us getting our jobs done.