Formations en informatique pour adultes
Informations sur le contenu de chaque formation
Système Unix
⦖ Public
Ce cours s'adresse principalement aux débutants (ou aux autodidactes qui veulent renforcer leurs connaissances empiriques).
Il est conseillé à tous ceux qui migrent d'un autre système vers Unix (Linux ?), ou veulent utiliser les fonctionnalités avancées de MacOS (qui est une variante d'Unix), et aux étudiants qui préfèrent prendre un peu d'avance quand ils savent qu'ils auront des cours d'informatique à la rentrée !
⦖ Objectifs
la terminologie propre à ce système (descripteur de fichier, pipes, inodes, etc.)
être à l'aise avec l'interface shell
pouvoir construire des commandes complexes
savoir maintenir un système à jour, installer de nouveaux logiciels, etc.
⦖ Quelques sujets abordés
⦔ Base de l'architecture des ordinateurs, éléments principaux, leurs interconnexions et rôles respectifs
⦔ Base de ce qu'est un système d'exploitation, gestion des ressources matérielles, mise à disposition de bibliothèques logicielles
⦔ Un peu d'histoire
⦔ Naissance d'Unix, ses principales caractéristiques
⦔ Le Shell, les variables, les commandes internes, externes
⦔ Le système de fichiers
⦔ Le Shell, les redirections, les pipes, la programmation, shell-scripts, gestion des jobs, les meta-caractères
⦔ Les commandes principales, ls, cat, date, etc.
⦔ Les commandes plus complexes, sed, awk, ps, top, sort, tr, head, tail, etc.
⦔ Le système de fenêtrage
⦔ La maintenance du système
⦔ etc.
⦖ Certifications
Oui : voir la page des certifications.
Programmation en langage C
⦖ Public
Ce cours s'adresse à des débutants en langage C ou même en informatique. Il est souvent mixé avec un peu d'Unix, afin de pouvoir retrouver ses fichiers, lister leurs propriétés, exécuter son programme, etc.
⦖ Objectifs
⦔ Apprendre à programmer en C, en utilisant les bibliothèques et appels systèmes proposés par Unix
⦔ Compilation (assemblage, édition de liens, etc.)
⦔ Préprocesseurs
⦔ Structure des données (simples, complexes)
⦔ Structures de contrôle (boucles, sauts, etc.)
⦔ Fonctions en bibliothèques
⦔ Appels système Unix
⦔ Techniques de debugging (gdb)
⦔ Outils annexes, comme make, github, etc.
⦖ Certifications
Oui : voir la page des certifications.
Aide aux projets / examens
⦖ Public
Les étudiants ou stagiaires qui doivent rendre un projet de programmation en C, ou un rapport dans le domaine de l'informatique.
⦖ Objectifs
⦔ aider l'étudiant à décomposer le problème en sous-problèmes facilement gérables
⦔ compléter les connaissances
⦔ relecture/rédaction de code, mémoire ou rapport
⦖ Quelques thèmes abordés
⦔ Programmation en C
⦔ Programmation de shell-scripts
⦔ Recherches bibliographiques
⦔ etc.
⦖ Exemple
Architecture des ordinateurs
⦖ Public
Tous ceux qui veulent savoir ou ont besoin de savoir comment sont construites ces machines, des plus petites aux plus imposantes (super-ordinateurs).
⦖ Objectifs
Comprendre comment sont assemblés les composants les plus simples (portes logiques) pour arriver à faire des calculateurs rapides et interactifs. Ce cours ne fera pas de vous un ingénieur capable de fabriquer un ordinateur, mais vous saurez ce qu'il y a dedans, et comment est conçue chaque partie.
⦖ Quelques thèmes abordés
⦔ Logique mathématique et circuits logiques (portes, etc.)
⦔ Logique combinatoire, logique série
⦔ Mémoire, mémoires caches, translation d'adresses
⦔ Processeur (CPU)
⦔ Microprocesseurs en tranches
⦔ Co-processeurs (calculs flottants, cryptographie, etc.)
⦔ Microprogrammation
⦔ Architectures CISC, RISC,
⦔ Super-ordinateurs, passés, présents, futurs
⦔ Architectures parallèles SIMD, MIMD
⦔ Autres architectures, dataflow, matrices systoliques, tolérance de pannes, etc.
⦔ Bus
⦔ Entrées/sorties
⦔ Réseaux locaux
⦔ Périphériques
Microprocesseur en tranche AMD2903
Un super-ordinateur vectoriel.
Systèmes d'exploitation
⦖ Public
Étudiants (universitaires), ou personne désirant enrichir ses connaissances en informatique.
⦖ Objectifs
⦔ Comprendre le rôle des briques de base d'un système d'exploitation
⦔ Interactions avec le matériel (hardware)
Tout le monde se sert d'un système d'exploitation quand il utilise un moyen informatique. Les plus connus sont iOS, Android, Windows, MacOS, etc. Ils ont tous le même but : optimiser les ressources fourni par le matériel (hardware), le processeur, la mémoire, le stockage, etc. Ce cours est progressif, il comment par les concepts de base, considéré du point de vue historique : comment étaient construit les premiers ordinateurs ? Comment les programmait on ? Qu'est ce que cela impliquait et implique encore ? Quelles solutions ont été mise en place à chaque évolution ? En répondant à ses questions, en prenant compte chaque élément du matériel, on comprends quels choix one été fait, quelles technologies ont été inventé au fur et à mesure que le domaine de l'informatique s'élargissait.
⦖ Quelques thèmes abordés
⦔ L'ordonnanceur (scheduler, temps partagé, FCFS, SJF, etc.)
⦔ Mémoire paginée, segmentée, mixte (table de pages, segments, etc.)
⦔ mémoire virtuelle (pagination, swapping)
⦔ Protections, trappes, interruptions (interruptions logicielles, matérielles)
⦔ Méthode d'allocation de l'espace de stockage (disque durs, pistes, cylindres, etc.)
⦔ Gestion des requêtes d'entrée-sortie
⦔ etc.
Translation d'adresse sur un système paginé.
Nom de domaine, hébergement, sites et blogs
⦖ Public
Tous ceux qui ont besoin de savoir comment fonctionne l’hébergement de sites sur Internet, soit pour prendre en charge certaines tâches (par exemple la gestion de noms de domaine) soit pour être en mesure de comprendre ce qu'on essaie de leur vendre comme prestation !
Cette prestation se trouve deux fois sur ce site :
dans la rubrique Cours (c'est ici !)
dans la partie Services
Les personnes désirant mettre en place leur site Internet rapidement avec notre assistance préfèreront l'option 2, c'est un service que nous proposons tel que décrit ici.
Ceux qui aimerait bien comprendre comment Internet est bâti, qu'est ce qu'un site, comment on s'y connecte et comment on le parcours, préférons choisir l'option 1 pour commence, éventuellement passer sur l'option 2 s'ils décident de se lancer et créer leur site. Vous êtes sur la bonne page.
⦖ Objectif
Devenir autonome quant à la gestion de ses noms de domaine et hébergement de ses sites ou blogs.
⦖ Quelques thèmes abordés
⦔ Terminologie
⦔ Fonctionnement de base de l'internet
⦔ Adresse IP
⦔ Le DNS, résolution des noms
⦔ Création, mise à jour, maintenance d'un DNS
⦔ Bureau d'enregistrement (registrar)
⦔ Cacher l'adresse IP de son serveur
⦔ Les accélérations possibles via des CDN (content delivery networks)
⦔ etc.
Cryptographie, chiffrement
⦖ Public
Ceux qui veulent comprendre comment les données sont chiffrées sur Internet, et comment échanger des données de façon sécurisée.
⦖ Objectif
⦔ Comprendre les infrastructures à clés publiques.
⦖ Quelques thèmes abordés
⦔ Créer ses clefs
⦔ Chiffrer et signer ses emails
⦔ Chiffrer et signer des fichiers
Bitcoin & Blockchain
⦖ Public
Tout public.
Nota bene : ce n'est pas un cours sur la finance.
⦖ Objectif
Comprendre comment est construit le système de la chaîne de blocs.
Le bitcoin et les cryptos monnaies sont des sujets controversés. Certains considèrent le système comme étant le plus sûr du monde, d'autres comme un système comme les autres, avec ses forces et ses faiblesses. On peut même ne pas les considérer comme étant de la monnaie, mais juste un système de stockage distribué. Quoiqu'il en soit, pour faire votre propre avis, vous devez comprendre en quoi cette invention est unique et donc comment le système fonctionne. Bien que basé sur des concepts qui peuvent s'avérer pointus si l'on rentre dans les détails, il n'y a aucune raison d'aborder les points extrêmement techniques pour comprendre la mécanique du système dans son ensemble. Ce cours n'est pas fait pour que vous deveniez un programmeur de la blockchain, mais pour comprendre son fonctionnement global.
La chaîne de block est basée sur des principes listé ci-dessous dans la rubrique « Quelques thèmes abordés »
Il est prévu des travaux pratiques en installant un portefeuille sur son smartphone et en faisant des transactions, c'est à dire en s'envoyant et en recevant des valeurs.
Aucun investissement n'est nécessaire, pas même 1 euro (à part le prix du cours !)
⦖ Quelques thèmes abordés
⦔ Le chiffrement
⦔ La signature numérique
⦔ Le chaînage d'objets
⦔ La mempool
⦔ Le minage
⦔ Création d'un portefeuille
⦔ etc.