redoing the material for programming from a to z