Soo… I’m writing this coming off of yet another frustrating experience trying to get a sketch to work. It’s wordy and somewhat meta, so bear with me. Also, I have yet no idea, if I’m actually looking for answers or just need a place to vent.
Some background: I’m not new to Processing. I’ve dabbled with it for pure fun during the years, I’ve mastered the coding fundamentals, know how to write basic OOP, have a grasp on vectors and know how to translate cartesian to polar coordinates. All of it autodidact. I write my code using Sublime. My sketches run, but they’re not optimized or “good code” and thus I’d never call myself a programmer for doing so. Let’s call me an intermediate hobbyist.
I’ve recently noticed a recurring theme, whenever I begin writing a new sketch: Every time I give it another go, I end up rage-quitting after a few days. But my frustration isn’t so much with Processing, but with the math involved for writing more complex sketches. Any my lack of understanding that math.
Enter my most current sketch: I have circles moving around the screen. Whenever two circles intersect, I want to draw a line between the two intersection points. Simple premise, right? And I’ve got it working!
Buuuuuuut… I don’t really know why.
Like any coder, I ask duckduckgo/google and try to find help and hints on the mathy parts of a sketch, in this specific case, how to calculate the intersection points. As you know, there’s a plethora of sources out there: Wikipedia, Wolfram, StackOverflow, Khan Academy, OpenProcessing, and so many more. Between these, I’ll most often find enough input to make my code run. Or I might find a block of code I can pull into my sketch and with adjustments to formatting/variables/style get it to work.
With the current project, I eventually found some intersection-calculating code on OpenProcessing that I’m using in my sketch and which eventually made it work. The foreign code is even nicely commented, so I can read what every line of code does. I just don’t understand the math.
And here is when I begin to fall into the trap. I want to know how the math works. I know my Pythagoras and basic Trig, but for anything more I bump into a wall. Then I try to deep-dive every single line of code, trying to find out what it does EXACTLY. And I sink deeper and deeper into math I have maybe heard of before, but have zero experience with. Triangle Altitude. Standard forms. Heron’s formula. Slowly I manage to make sense of the lines of code. But some lines just remain completely opaque to me.
Sure, some stuff I remember from school – many moons ago. Some stuff I never ever touched upon. So I want to learn it all, but it feels like a bottomless pit. And every solution seems to have a far more elegant and general (and more complex) way of going about it. It never ends! All the while my level of frustration grows and grows. I also completely ignore that my sketch IS already working. But for some reason, I can’t manage to let go of the notion, that I don’t “own” all of my code without completely understanding every single line in it.
So this is it in a nutshell. I start writing a sketch but quit because I feel my math is not up to snuff and thus am a “cheater” for using someone else’s code.
- Does anybody else fall into this trap?
- How do you go about learning new math topics when you constantly run into unknown terms and notation?
- When do you stop refining your sketch and just settle on code that, even if being somewhat wonky, DOES THE JOB JUST FINE.
- How do you deal with using foreign code you have little idea of how it actually works?
Thing is, this may very much just be all me. But maybe someone feels the same sometimes and might have an idea for me on how to cope with this issue in the future?
Any input on this topic is highly appreciated.