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

⦖ 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.

Garder un esprit critique
Linux

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 :

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.