I'm learning Scheme with SICP after a failed attempt at picking up OCaml. I didn't make significant progress beyond writing toy OCaml
and was experiencing some serious culture-shock in my first foray into the functional programming world. After some floundering it became clear that I needed a better introduction to the functional programming mind-set. Purchasing SICP turned out to be an excellent decision.