My suggestion is pick job B, but keep a hobby project on the side.
The internet makes self learning easier, but then again, mostly all you'd learn from job A you could learn from hobby projects anyway. Face to face interaction with other programmers is harder to substitute.
Just in case you haven't read this already:
http://www.norvig.com/21-days.html
[Sorry, meant to post this as a top level reply.]
Fantastic article . . . I think I'm going to be engrossed in the rest of Norvig's site/articles for a long while now.
That article included a link to the video lectures of the Structure and Interpretation of Computer Programs by A&S themselves, given to HP employees back in the 80's:
The full text of the book is also available online.
I think the ideal situation would be having something like Job B for a while until you feel like you're a solidly professional duder, and then move on to something more risky and adventurous. I wasted vast amounts of time trying to teach myself to program as a teenager because I didn't know where to go to. Having some structure and guidance could help you.