Go down to level up

In the process of shipping software, you often get things working and then move on to the next step. When you're ready to increase your velocity, you dive into the abstractions you use to understand how they work so you can use them more effectively.

Examples

  • You've been using a JavaScript library for date manipulation, but you want a deeper understanding of how it works. You spend time learning the basics of JavaScript Date objects and create a few date functions manually. You even build your own mini-version of the library. Now, when you use the library, you understand its underlying principles and can troubleshoot edge cases more effectively.
  • You use useEffect in React extensively and find some unexpected re-renders. To understand why, you study the React lifecycle and learn about how dependencies affect re-renders. This insight allows you to optimize your component behavior and avoid unnecessary updates, making you a better React developer.