Although most of the canvases were built by modifying existing code, I gained a fairly comprehensive understanding of P5.js. I browsed at least 1,000 sketches on OpenProcessing, which gave me a solid grasp of the ecosystem.
If someone has already done what you want to do—use it. If someone’s work can be adapted to your needs—modify it. And if you can’t find a giant’s shoulders to stand on, a small giant’s shoulders will do just fine.
I started dabbling in shaders—this project marks the beginning of my journey into shader learning.
Each canvas iteration in this project was genuinely fun. I documented the process with notes, which I plan to revisit or reuse for future code snippets.