Felleisen, M., Findler, R. B., Flatt, M. and Krishnamurthi, S. (2015) “How to Design Programs: An Introduction to Programming and Computing”., Education Review. doi: 10.14507/er.v0.173.