Computer Science is about understanding computer systems and networks at a deep level. Computers and the programs they run are among the most complex products ever created by humans; designing and using them effectively presents immense challenges. Facing these challenges is the aim of Computer Science as a practical discipline, and this leads to some fundamental questions: