Arch Linux toolbox pour programmeur

Je me relance, quittant le mode "Marmot" pour mettre à jours mes compétences et donc je pense que faire un petit livre pour Arch Linux avec les domaines que je dois étudier et approfondir est une solution viable. J'ai donc préparer le sommaire de mes notes et thématiques d'études à mettre au propre.

Titre: Arch Linux toolbox pour programmeur

0. Prologue à la communauté FOSS pour les archers

I > Linux essentiels
1. Le système de fichier
2. Les commandes CLI
3. Les éditeurs de texte
4. L'administration système

II > Arch package management
1. L'archivage
2. Connaitre Pacman
3. La sécurité des paquets
4. La mise à jour du système
5. Construire et packager un logiciel avec ABS (Arch Build System)
6. Repository utilisateur de la communauté via AUR
7. Repository des outils de hacking Blackarch

III > Les langages de programmation sous Linux
1. Bash Shell Scripting
2. Python Scripting
3. C/C++ 
4. Java
5. Ruby

IV > Construire depuis les sources
1. Les outils
2. Le processus
3. Comprendre les erreurs et les warnings
4. Debugging

V. > Maintenir du code avec Git
1. Les commandes Git
2. Manager les fichiers avec Git
3. Manager les différences entre fichiers
4. Git avancée

VI. Documentation et aides 
1. Doxygen
2. docstring
3. man pages
4. Arch Wiki
5. Autres ressources en ligne

VII. Réseaux
1. TCP/IP
2. Modèle OSI
3. DNS
4. MAC
5. Autres protocoles
6. Sockets
7. Les outils CLI

VIII. Les bases du kernel
1. User mode versus Kernel mode
2. Le processus d'ordonnancement
3. Comprendre les devices et devices drivers
4. I/O ordonnanceur
5. Management de la mémoire dans l'espace utilisateur

IX. Comprendre les processus
1. D'ou viens les processus
2. La fonction exec
3. Processus synchronisation avec wait
4. L'empreinte d'un processus
5. Configurer les limites d'un processus
6. Processes et procfs
7. Outils CLI pour manager des processus

X. Communication entre processus
1. IPC utilisant plain Files
2. Mémoire partagée
3. Signals
4. Pipes
5. Sockets
6. File de message
7. Semaphores