various learning notes and exercises