Kent C Dodds
Consume, build, and teach, with Kent C Dodds
Kent is a one-man JavaScript task force! While working at PayPal, Kent creates a lot of open source projects like Downshift and Glamorous, and makes contributions to Webpack, Babel, and ReactJS, to name just a few. In addition to his open source work, Kent created the Angular Air and JavaScript Air podcasts, runs a short podcast called 3 minutes with Kent, and writes about Javascript on a weekly basis on his blog and newsletter. Kent is an instructor on both Egghead.io and Frontend Masters, is a Google Developer Expert, and represents PayPal on the TC39, which is the ECMAScript Committee that maintains the JavaScript language standard.
Time Stamped Show Notes
1:20 – Kent lives in Utah, USA with his wife and four kids. He is grateful that he can work from home to allow him more time with his family.
2:14 – Kent is passionate about making software accessible to people. He spends a lot of time blogging, writing his newsletter, creating example repos on Github, and posting to his Youtube channel with the goal of making it easier for people to learn how to code and to do their job more effectively. All this content is totally free!
4:48 – Kent followed his elder brother’s path and started studying electrical engineering. He was required to complete two programming classes, and although he did really well in them, he couldn’t imagine spending 8 hours a day writing code. After a 2 year mission for his church, Kent decided not to pursue electrical engineering.
5:36 – Kent got an internship at a non-profit organisation where he was required to do menial “monkey” work. He decided to automate some of his repetitive tasks using programming. This is when he realised that programming could be used to solve real problems.
6:39 – In 2012 Kent started working with JavaScript. He began speaking at meet-ups, was invited to speak at conferences, and started giving workshops at Frontend Masters and other venues. Kent says that the process of “consume, build, and teach” is what got him to where he is today.
8:29 – At his first job, Kent was given the task of fixing a cross-site scripting bug on the company-wide chat. When attempting to fix the bug, he ended up adding a pop-up on the production version that said “You’ve been hacked” on every page a user would visit!
9:49 – At the same company, Kent also spent two weeks trying to add a single checkbox to a form because of the way the code was implemented. This was one of the experiences that made Kent think about component-based models for UIs.
13:24 – Kent says he’d have a hard time living without open source. He gets so much value out of other people’s code and so much joy from contributing to the open source community.
14:39 – One of Kent’s biggest frustrations is deploying applications. He finds that smaller companies have freedom to choose from various tools to deploy applications, whereas bigger companies often have their own architecture that’s difficult to upgrade.
16:42 – Kent still gets excited about React even though he uses it all the time.
17:02 – Kent has released two courses on egghead.io one of which is totally free. It is a beginner’s guide to React.
17:18 – Kent is excited about getting into Reason ML by facebook in the next few months.
17:41 – Downshift is a project Kent has built for PayPal that allows you to build React autocomplete or dropdown components.
18:25 – Kent is also excited about the Babel transpiler. He built a plugin called Babel Plugin Macros that allows you to write plug-ins more easily and create transforms that you don’t have to configure.
19:29 – Kent likes Dave Geddes’s blog post called Deciding What Not To Learn. Dave suggests that you map out all of the things that you could possibly learn. Next, simply pick the ones that you’re really interested in right now and cross out the rest.
20:26 – Kent finds Dave Geddes’s process of deciding what to learn and what not to learn prevents him from feeling overwhelmed.
21:27 – Kent advises against prematurely optimising code for speed. Rather optimise it for readability and maintainability.
22:40 – Kent acknowledges that functional programming might not be the fastest implementation, but finds that it is easy to maintain and understand should he come back to his code after a month or two.
Quickfire Questions
23:48 – Best advice about programming
What really matters is how well your code communicates to the people who are going to read it later. This includes yourself. Kent references Kyle Simpson’s talk, “The Economy of Keystrokes“.
24:10 – Habits for writing better code
Spend a lot of time coding to get good at it! Also, a good work-life balance, meaningful relationships, good sleep, and healthy eating.
24:43 – Book
“Start with Why: How Great Leaders Inspire Everyone to Take Action,” by Simon Sinek. Kent finds it helps him communicate what he is working on and why it’s important.
25:09 – Inspiring devs
Sarah Drasner for the cool things she just keeps on building!
Nitin Tulswani who made redocx, a React library that allows you to create Microsoft Word and Excel documents. He also made React Web AR, an augmented reality renderer for React, and a tutorial called Making a Custom React Renderer.
26:46 – How to learn to code from scratch
Get experience in software development. Spend a ton of time doing it yourself, and teach it to others. Consume, build, teach.
27:46 – How to work smart
Teach others, market yourself, and be nice.
Tools, Tips, and Books Mentioned
“The Economy of Keystrokes”, by Kyle Simpson
“Start with Why: How Great Leaders Inspire Everyone to Take Action,” by Simon Sinek
Contact Kent
Kent’s website: kentcdodds.com
Kent’s Blog: blog.kentcdodds.com
Kent’s Newsletter: kcd.im/news
Kent’s Youtube Channel: kentcdoddsfamily
twitter: @kentcdodds