Synthesized from these two series:
- https://www.youtube.com/watch?v=j4jtjk_1wcQ&list=PLCnmpqh8sKKynYSJqrrC0nWwPB3OVf5lt&index=2
- https://www.youtube.com/watch?v=UBqme9A_O3c&list=PLn3eTxaOtL2Ns3wkxdyS3CiqkJuwQdZzn&index=2
I find the content very hard to follow because of OO. So I created content in a procedural way to help myself learn.