There is an interesting web with a daily challenge throughout advent - http://adventofcode.com . Perhaps groovy enthusiasts could show their solutions for each challenge?
My son (15) has learnt a variety of programming techniques - like linked lists - in order to answer the challenges. He is using JavaScript and Python, as these are taught at school. Merlin Beedell