When you write about software development or in any way try to teach others about any topic that is tied to technology or learning new or foreign concepts, it is imperative to write and teach from a beginners perspective so that you do not alienate or leave out important information that your readers or students may need. Try to put yourself in the shoes of someone starting from scratch and remember the things that tripped you up on your journey, these will be sometimes very small and seemingly minuscule items but have a huge impact on someone's learning if you leave them out.
For one, it allows me to learn along with the reader. As a fairly recent convert from Angular to React, it definitely benefits me to write from this perspective. As well, I feel that I can reinforce my fundamentals and think about the gotchas that others will run into on the same topic. With React, I entered this space just as Hooks started to become available in the 16.x alpha releases. I knew that what I needed to do was start over from a beginner's level perspective and learn how Hooks would be beneficial to those just starting, but this also meant going back and understanding how React apps were written before Hooks so that I could talk on the subject with some authority.
When Hooks were released, I had just finished learning as much as possible about React, it's funny because instead of jumping straight in, I knew that I needed to go back and study class-based React a lot more. The one thing I hate is when someone writes about "New Shiny Stuff" but cannot explain why it's great and where we came from. I wanted to be able to not only do this but also answer tough questions about why I thought they were so great and how they would help us to write better apps. It was a way for me to hit the ground running. I also knew that it would be best to write about React from a beginner's perspective considering that in order to start using Hooks, kind of means starting over with how we write and compose React components.
I knew that I could use this chance to not only further my knowledge of React, but the product that I would be advocating for as well. One of the things I would do is start converting our simple product demos over to React Hooks. This helped me commit some of my learning to memory by doing it over and over. Writing also does this for me. Then it was time to start learning how to refactor an actual application with React Hooks, Kent C Dodds has a great YouTube video on this, but I can't find it all the sudden. If I do, I will post it.
Below are the first four articles that I wrote React on Hooks and I try to approach the topic from a beginner's perspective. I would love to hear if any of you like them or not!
If you would like to see some all my content and talks on the subject of React and Hooks, I have those here.
I would also like to link to some advice from a great friend of mine Michael Chan who gives some advice about avoiding shortcuts and I think the advice is great considering the topic at hand. Someone who knows how to teach or write from a beginner's perspective will inherently understand that shortcuts usually should be avoided when learning something for the first time, they serve a great purpose for us once we have mastered a topic. but they can harm us if taken during our initial learning phase.