Couvre l'importance et les défis des systèmes d'exploitation, leur omniprésence, leur impact sur les programmes et leur rôle d'illusionnistes et d'arbitres.
Explore les défis de programmation, les techniques de débogage, les tests de logiciels et les pratiques de sécurité dans le développement de logiciels.
Introduit les fondamentaux de l'ingénierie logicielle, couvrant le traitement de l'instruction, les algorithmes, les langages de programmation, les abstractions, les tests, la sécurité et l'open source.
Couvre l'abstraction de données en nombres rationnels, y compris la vue du client, l'auto-référence, les conditions préalables, les assertions, les constructeurs et les marqueurs de fin.
Explique comment les systèmes d'exploitation créent l'illusion de ressources dédiées et infinies grâce à la virtualisation et à l'abstraction des processus.