Daniel Shiffman is the creator of The Coding Train, which is one of the most wonderful places to learn programming using the Processing JavaScript library P5.js
You can see his extensive catalogue of lessons here[0].
A full, pleasurable year of my programming life was inspired by this book. And what I learned from the physics part of the book made high school physics a piece of cake.
You can see his extensive catalogue of lessons here[0].
[0] https://thecodingtrain.com/CodingChallenges/