Notes on improving programming skills