Have a look at Probabilistic Programming & Bayesian Methods for Hackers: http://camdavidsonpilon.github.io/Probabilistic-Programming-and-Bayesian-Methods-for-Hackers/
Also "Bayesian Reasoning and Machine Learning" from David Barber is freely available online: http://web4.cs.ucl.ac.uk/staff/D.Barber/pmwiki/pmwiki.php?n=Brml.HomePage
spent some time fiddling with "Probabilistic Programming & Bayesian Methods for Hackers" as recommended above by Matti
quite interesting way of introducing the notions through "hands on" programming and definitely a useful complementary pedagogical approach to the more formalism-oriented approaches such as C. Robert's book