I'm also a self-taught programmer and I find programming-logic
  seems to work better than other logics, even math. When I was
  going through pre-algebra, I'd already had BASIC (nowadays it
  would've been Python I suspect) and I was changing their
  equations in my head into a kind of pseudo BASIC, so I could
  watch the math as it was happening. It was the only way I could
  make sense of the weird math lingo. Geometry proofs pissed me
  off though. Never saw the point. Probably why I did poorly on
  Calculus... then again, I was a senior by then and stopped
  caring. smile emoticon