Trying to learn synths as a programmer

Hello! First of all, I would like to express how exciting sonic pi is. I was always curious about making music, since the days of the Amiga, but always failed when experimenting with trackers, Fruity Loops and similar software. I understand the general aspects and how everything works technically, but manipulating synths to achieve the sounds I want always has been a challenge.

I am a big fan of Psy Trance, for instance, and I tend to follow artists and tutorials like these:

But the creation of the bass lines and characteristic instruments always feels like: turn these magic knobs here and there, and boom, draw the rest of the fucking owl. I end up using samples and preset instruments, and structuring my music without creating my own instruments, which kinda sucks.

However, with sonic pi, it seems that there is a different way of working with synths and, as a software engineer, I am eager to try this from a perspective familiar to mine. How would you guys recommend the approaching of discovering/playing with instruments in sonic pi? Is there a 1:1 translation to other synths from traditional software?

along with