Introduction
In this series, I attempt to deeply understand React. I will be learning, building projects, listening to experts and courses and I will attempt to communicate my understanding via writing on this blog post. The idea is something approximating the Feynman technique, that by putting what I learn in words, it solidifies the learning in my head, exposing flaws of thinking.
Why React?
I started developing websites in React, in my opinion, fairly prematurely. Back then I approached it as a fun declarative style way to write websites, which was much simpler and more straightforward to me at the time. But I faced obstacles when I started to do things that are much more complex, and as I developed more and more, I realised that there are gaps in my information that are hindering my ability to understand complex frameworks built upon React like NextJS. While Javascript basics are simple enough to understand, React is lot of JS written by developers that are of a class of calibre above me. From this code has emerged a whole other way of writing declarative code, but without understanding it and building a clear mental model, it can be hard to debug.