Aller au contenu

Bienvenue

Les codes écrits en cours se trouvent sur github. Vous pouvez partager en cours vos codes via l'espace d'écriture collaboratif.

Libertés fondamentales

Les quatre libertés fondamentales du programmeur sont :

  • la liberté de faire fonctionner le programme comme vous voulez, pour n'importe quel usage (liberté 0) ;
  • la liberté d'étudier le fonctionnement du programme, et de le modifier pour qu'il effectue vos tâches informatiques comme vous le souhaitez (liberté 1) ; l'accès au code source est une condition nécessaire ;
  • la liberté de redistribuer des copies, donc d'aider les autres (liberté 2) ;
  • la liberté de distribuer aux autres des copies de vos versions modifiées (liberté 3) ; en faisant cela, vous donnez à toute la communauté une possibilité de profiter de vos changements ; l'accès au code source est une condition nécessaire.

Éditeurs python

###

# print("Hello World")bksl-nlbksl-nl

Il y a d'autres moyens d'exécuter du code python (listés par ordre de préférence personnelle) :

  • Thonny : l'éditeur python utilisé en cours. Toutes les corrections, déboggages et analyse de code seront effectuées sur cet éditeur. Si vous n'avez pas les droits pour l'installer sur votre machine, utiliser la version portable.
  • basthon : un éditeur en ligne. Préferer l'outil "Console" pour l'écriture de code, l'utilisation de notebook demande une certaine expertise…
  • capytale : accessible sur l'ENT du lycée dans l'onglet "Mes applications".
  • vscode : un éditeur de code professionnel, très populaire et multiplateforme. Beaucoup de plugins sont développés par la communauté et le rendent très efficace dans tout type de situation.
  • ViM : un éditeur de texte extrêmement configurable qui rend la création et l'édition de n'importe quel sorte de texte très efficace.
  • emacs : un éditeur de texte extensible, customisable, libre et gratuit… Et plus.

Contenu des cours

Les thèmes de l'année

En NSI en terminale, le programme est exigent et plein de nouveautés.

  • Programmation orientée objet
  • Fonctions récursives
  • Structure de données : les listes
  • Bases de données : modèle relationnel et langage SQL
  • Structure de données : les piles et les files
  • Système d'exploitation et processus
  • Structures de données : les arbres
  • Réseaux informatiques, protocoles de routage
  • Structures de données : les graphes
  • Sécurité des communications
  • Algorithmes avancés

Pour en savoir plus

Quelques liens en rapport avec ces thèmes :

Les épreuves du bac

Épreuve écrite.

Durée : 3h30. Trois exercices sur feuille, au mois de juin 2024, portant sur tout le programme de NSI de l'année de terminale et de première.

Épreuve pratique.

Durée : 1h. Composée de deux exercices : ils sont tous accessibles en ligne avant les épreuves.

  • exercice 1 : "programmer un algorithme figurant explicitement au programme, ne présentant pas de difficulté particulière, dont on fournit une spécification"
  • exercice 2 : compléter un programme pour résoudre un problème.

Ressources :

Grand oral

L’épreuve du Grand Oral est une épreuve du baccalauréat qui nécessite pendant l’année, de prépare deux "questions" en lien avec les enseignements de spécialité. Le jour de l'oral, le jury choisit une des deux questions que le candidat présente a l'oral.

Cette présentation dure 10 minutes, pendant lesquelles le candidat expose les motivations qui l’ont conduit à choisir cette question, puis présente la réponse qu’il a élaborée.

À l’issue de ces 10 premières minutes, le candidat et le jury échangent durant 10 minutes. À cette occasion, le jury amène le candidat à préciser et approfondir sa pensée. C’est une opportunité à saisir, pour apporter des compléments à son propos, et montrer sa capacité à écouter, dialoguer, expliciter et argumenter.

Cette épreuve nécessite de s'interroger tout au long de l'année sur les cours, de vous poser des questions existentielles, et d'essayer d'aller un peu plus loin sur les questions qui vous intéressent. Il s'agit principalement une épreuve de curiosité et de passion. Pour cela les projets personnels et l'autonomie tout au long de l'année (en faisant des exercices présents sur e-nsi par exemple) vous donneront une idée des thèmes/sujets que vous pouvez aborder.

Sur l'année :

  • premier trimestre : être curieux ;
  • second trimestre : être curieux et commencer à réfléchir à un thème, une question ;
  • troisième trimestre : préparer effectivement deux questions

Formation en ligne

Énormément de ressources sont disponibles en ligne, et permettent d'étudier l'informatique en autonomie.

Sécurité

  • Le site ressource de cybersécurité de l'AEIF.
  • Le wiki du CTF NoBrackets. Beaucoup d'informations à destination des lycéens et lycéennes.
  • Hackropole : une plateforme regroupant toutes les épreuves du France Cybersecurity Challenge (FCSC) organisé par l'ANSSI (Agence nationale de la sécurité des systèmes d'information)
  • The OSINT project (TOP) : une plateforme (en français) d'introduction à l'OSINT (Open Source INTelligence : renseignement en source ouverte).
  • Le wiki et le discord du CTF NoBrackets, organisé par l'ENSIBS (École Nationale Supérieure d'Ingénieurs de Bretagne Sud)
  • PicoCTF : une compétition de type CTF (en anglais), destinée aux lycéens et lycéennes. Des ressources (tutoriels, le livre The CTF Primer, et beaucoup d'exemples de challenges) sont disponibles sur la plateforme, et en font un endroit idéal pour s'entraîner à résoudre des problèmes de cybersécurité.
  • Rootme : plus avancé, mais une référence dans le monde de la cybersécurité.
  • Tryhackme (essayer Introduction to Cyber Security) : un bon site d'introduction aux problématiques de cybersécurité.
  • Hackthebox : pour les experts !
  • cryptohack : à tester ?

Programmation

  • CodEx : pour s'entraîner en autonomie sur le programme de terminal. Un must !
  • Exercices pratiques de NSI : base de données d'exercices de NSI, de difficulté variable.
  • france-ioi : le site de l'association française d'informatique, célèbre pour les multiples concours qu'elle organise (Castor, Algoréa, Alkindi…). Il est possible de suivre les cours disponibles sur le site et de s'entraîner sur les exercices.
  • PyDefis Une liste de challenges de programmation, en français.
  • Advent Of Code : des exercices de difficulté variée pour s'entraîner à la programmation pendant les vacances de Noël.
  • hackerrank : un bon site pour s'initier à des sujets variés.
  • codingame : un site de compétitions informatiques
  • leetcode : pour s'entraîner à la programmation, une mine sans fond de problèmes algorithmiques. Certains sont tout à faits intéressants pour des élèves de terminale, d'autres sont destinés à préparer des entretiens de programmation.

Expressions régulières

Cet outil n'est pas au programme de NSI mais est indispensable dans la vie quotidienne d'un programmeur. Les expressions régulières permettent de rechercher des motifs ("patterns" en anglais) dans une chaine de caractères. Elles sont particulièrement utile pour résoudre les challenges de programmation.

  • Regex Learn (anglais) : un tutoriel sur les expressions régulières
  • RegexOne (anglais) : tutoriel et exercices sur les expressions régulières.
  • Regex Tutorials : encore plus de tutoriels, encore plus d'exercices.
  • Regex (HackerRank) : des exercices sur les expressions régulières, appliquées à Python (module re).
  • regexr, regex101 : interface en ligne "intuitive" pour construire et tester des expressions rationnelles.

Commandes Linux

Génération d'assets à l'aide d'intelligences artificielles

Il est possible de générer des assets 3D pour vos jeux à l'aide de l'intelligence artificielle :

  • Étape 1 : Télécharger une image réaliste sur ChatGPT et demander à ce qu'elle soit stylisée.
  • Étape 2 : Coller l'image stylisée dans TRELLIS (générateur de modèles).
  • Étape 3 : Télécharger le modèle GLB : vous pouvez l'ouvrir avec Blender, Unity, etc.

Voici un exemple du processus.

Concours informatiques en ligne

Une foule de concours sont dédiés aux élèves de NSI ou de SNT. Parmi les plus intéressants, citons :

Nom Type Niveau Date Adresse
Algorea Programmation Seconde Janvier https://algorea.org/#/
Alkindi Cryptographie Seconde ~Janvier https://concours-alkindi.fr/main.html#/
Nobrackets ctf CTF Terminale 11-12 Novembre https://discord.gg/68T7cnFYeK
CSAW'24 CTF Terminale 1-24 Octobre https://esisar.grenoble-inp.fr/fr/l-ecole/red-team
Passe ton hack CTF Lycée Avril https://www.defense.gouv.fr/ema/actualites/passe-ton-hack-dabord
La nuit du code Programmation Première Terminale Mai https://www.nuitducode.net/