Don't forget the basic stuff like practising and experimenting with the code seeing what small changes do to understand it better