I did this tutorial as a Sunday afternoon project. It's one part of one box of the developer roadmap mentioned earlier. What I've discovered doing tutorials like this is that there's quite a bit of build-up to it. For example, instead of doing it in the Codepen environment provided, I used my own development environment (using VS Code; I began by installing Yarn to use instead of NPM, just because). I did it this way because I wanted to eventually deploy it to my website; here it is. Doing it this way created unexpected bugs - for example, I had to add a step (yarn install) and I had to remove a previous and outdated version of Babel (by manually ripping out the directory!). Still, this was an excellent tutorial, well constructed to illustrate some key concepts (such as data immutability).