Born in Parc (a village in Gwynedd near Bala), Puw studied music composition at Bangor University with John Pickard, Andrew Lewis and Pwyll ap Siôn. Puw was awarded with a MMus degree in 1996 and a PhD degree in 2002. He was then awarded an Arts Council of Wales bursary and studied with the composer John Metcalf. Puw was appointed as a Lecturer in Music at Bangor University in 2006, having previously been a Teaching Fellow in Music from 2004. A Welsh speaker, he has been the Welsh Medium Teaching Fellow for the School of Music. He was the founding member and conductor for , a Welsh-language choir based in Y Felinheli near Bangor.