Algorithmique & Performance

Algorithmique & Performance

29 sessions disponibles

29/04/2025 38mn

Comprendre et créer des context managers

Introduction pratique aux context managers Python à partir de l’exemple classique d’ouverture de fichiers, puis mise en place pas à pas de ses propres context managers.
28/01/2025 1h0mn

Session de mentorat TOSA

Session de mentorat TOSA.
31/10/2024 2h40mn

Algorithmes de tri (live coding)

Les algorithmes de tri sont des méthodes pour ranger dans l'ordre des listes de valeurs mélangées. Ils ont un rôle très important dans de nombreux algorithmes, et les optimiser est un problème majeur de l'informatique. Apprendre à implémenter ces algorithmes est un excellent exercice, car cela permet à la fois d'apprendre à manipuler des listes et de comprendre de nombreux concepts de base en algorithmique. Je vous propose donc un live coding dans lequel j'expliquerai en détail plusieurs algorithmes de tri, ainsi que la manière de les coder en python.
21/10/2024 47mn

Session de mentorat TOSA

Pour cette session nous allons parler de la récursivité et des dataclasses.

Gabriel TROUVÉ

Voir la session
07/10/2024 46mn

Session de mentorat TOSA

Nous allons revenir sur des exercices qui sont tombés au TOSA

Gabriel TROUVÉ

Voir la session
10/09/2024 2h6mn

Live coding avec Alex Traveylan

Passons à la pratique en codant ensemble et en direct une application de budget familial Au sommaire : - Codage depuis le départ d’une api django qui permet de gérer la logique d’une application de gestion de budget dans un foyer. - Création de l’application django et settings. - Créations des models. - Créations des vues pour contrôler ces models. - Test des vues avec pytest. - Si le temps le permet, mise en production avec pythonanywhere. - S’il reste du temps, mais j’en doute, mise en place d’un front pour consommer l’api.

Alex Traveylan

Voir la session
07/09/2024 1h38mn

Live coding jeu de la vie

Nous avons déjà parlé du jeu de la vie pendant l'événement : [Le fascinant jeu de la vie](https://discord.com/channels/396825382009044994/1244547016449851423). C'est une simulation informatique qui possède des propriétés intéressantes. Je vous propose un live coding : comment coder le jeu de la vie en python !
05/09/2024 1h6mn

Session de mentorat TOSA

Dans cette session nous allons revenir sur différents modules : csv, json, collections, sys, urllib. Nous verrons également comment réaliser l'exercice TOSA parmi les plus difficile qui nécessite de déterminer les relations de parenté dans un graphe

Gabriel TROUVÉ

Voir la session
31/07/2024 1h53mn

Wildroyale : Jeu 2d multijoueur sur navigateur

Comment communiquer entre le client et le serveur Les websockets de base L'optimisation des messages envoyés en binaires (+ envoyer seulement les coordonnées/updates des joueurs dans le FOV, création d'un schéma de donné spécifique..) afin d'avoir des messages plus petits gérer la synchronisation client - serveur pour éviter un changement de position pendant une frame L'utilisation de l'interpolation qui permet d'avoir des mouvements fluides même avec une mauvaise connexion, (et permet aussi l'utilisation d'uint16 dans les updates de positions au lieu de floats) L'optimisation des collisions et toute sorte d'interaction entre entités du coté serveur

DarePhoenix

Voir la session
27/06/2024 2h3mn

Le fascinant jeu de la vie

Le jeu de la vie est une simulation informatique aux règles très simples, mais qui montre des comportements incroyablement complexes. Je vais vous présenter les figures étonnantes que l'on peut construire dans ce jeu "zéro joueurs". Nous parlerons d'automates cellulaires, un concept entre informatique et mathématiques, et qui possède une diversité d'applications impressionnante. Live coding prévu sur le sujet dans 1 mois.
13/06/2024 56mn

Le cryptojacking

Le cryptojacking : ou comment vos appareils sont utilisés pour miner des cryptomonnaies.

Kévin SILLIAU

Voir la session
17/05/2024 1h36mn

Session de mentorat TOSA + Premium

Dans cette session, nous allons parler d'optimisation, notamment lors de l'utilisation d'itérables.

Thibault HOUDON

Voir la session
11/05/2024 1h37mn

Mentorat TOSA

Format JSON et le module JSON, structures de données itérables, module collections.

Thibault HOUDON

Voir la session
09/05/2024 1h27mn

Présentation sur la cybersécurité

Introduction à la cybersécurité.

Kévin SILLIAU

Voir la session
18/04/2024 1h17mn

Mentorat TOSA

Retour sur les évalutions TOSA, révision des notions fondamentales de Python.

Thibault HOUDON

Voir la session
30/11/2023 1h53mn

Session de mentorat

Dernière session de novembre : on va en profiter pour passer en revue les projets du mois terminés, notamment celui de Gabriel qui nous fera une présentation de son projet. J'en profiterai pour faire une correction en live du projet pour vous montrer les points à améliorer. Venez nombreux poser vos questions à Gabriel concernant la réalisation de A à Z d'un projet d'envergure comme celui-ci !

Thibault HOUDON

Voir la session
28/09/2023 1h14mn

Générer des bons de commande avec Python

Exercices de création de bon de commandes .txt depuis un fichier excel. On verra du coup entres autres: - manipulation excel avec pandas - création de fichiers et utilisation de regex - optimisation avec du multi threading

Pierre-andré COURBET

Voir la session
31/08/2023 2h11mn

Session de mentorat

Exploration de l'API de Queryset de Django : - Introduction aux Querysets - Récupération d'éléments - Tri et limitation de Querysets - Relations et Lookup complexes - Utilisation des objets Q - Agrégation et Annotations - Optimisation des performances - Mise à jour de plusieurs objets - Problèmes de performance N+1 - select_related et prefetch_related Liens vers les différentes branches du dépôt Git avec les sources : - [Opérations de base](https://github.com/DocstringFr/django-querysets/tree/basic-operations) - [Opérations avancées](https://github.com/DocstringFr/django-querysets/tree/advanced-operations) - [Optimisations et performances](https://github.com/DocstringFr/django-querysets/tree/query-optimizations)

Thibault HOUDON

Voir la session
29/06/2023 1h19mn

Déploiement Django Docker et astuces Python

Dans cette session de mentorat, Pierre-André discute avec les étudiants de divers sujets : - Déploiement d'une application avec **Docker sur Proxmox**. - Comment déployer des services **Docker avec Portainer**. - **Résolution d'exercices d'algorithmie** avec Python. - Comment utiliser **le modulo** pour vérifier les multiples d'un nombre.

Pierre-andré COURBET

Voir la session
23/03/2023 1h0mn

Automatiser résumés Word et labyrinthe en Python

Découvrez comment manipuler des fichiers Word en Python, préparer des appels à l’API ChatGPT pour les résumer et modéliser un labyrinthe avec des arbres.

Pierre-andré COURBET

Voir la session
02/03/2023 1h1mn

Camel Case, chaînes et front Streamlit

1. Revue d'une question d'un étudiant sur l'ex de Camel Case 2. Revue des vitesses d'algo 3. Mise ne place du frontend en streamlit pour une api

Pierre-andré COURBET

Voir la session
23/02/2023 1h0mn

Générateurs Python, LaTeX et complexité

Découvrez les générateurs avec yield, une librairie LaTeX en Python et les bases de la complexité O(n) tout en évoquant un workflow de déploiement avec Git.

Pierre-andré COURBET

Voir la session
17/12/2022 1h40mn

Déboguer une connexion et structurer son code

Présentation en live de la résolution d'un bug sur la connexion de Docstring. On va voir également la différence entre isnumeric et isdigit, la fonction dir ainsi que quelques erreurs faites avec les modules. On corrigera le projet de librairie de Lionel et on va voir comment intégrer Bootstrap pour le front-end. On verra également comment résoudre un problème avec le bot Discord en lisant la documentation et le "changelog". Pour finir, on discute de Tailwind et je montre en live comment j'aborde la résolution d'un problème de code.

Thibault HOUDON

Voir la session
08/12/2022 1h0mn

Structurer son code et optimiser les données

- Organisation de son code lorsqu'on a beaucoup de données d'entrées - Utilisation des set. Un peu comme des listes mais permet les opérations Booléennes (union , intersection) - Un moyen pour optimiser le temps de chargement d'un gros dictionnaire ou dataframe dans un projet qui dure plusieurs jours

Pierre-andré COURBET

Voir la session
24/11/2022 1h0mn

Bien distinguer terminal et interpréteur Python

- Rappel sur le terminal et l’interpreteur - Approfondissement d'une question de et cas pratique de passage d'argument optionnels avec args et tri d'un dico - Création de l'illusion d'un graphique animé en créant un gif en utilisant python uniquement bien sûr - On verra ensuite, si on est pas au bout et que vous n'avez pas de questions j'évoquerai la mesure de complexité d'un algorithme avec la "Big O" notation. ça peut paraitre complexe mais vous verrez c'est simple

Pierre-andré COURBET

Voir la session
17/11/2022 1h40mn

Debug Python, héritage et complexité

- dictionary setdefault exercice avec debug - classe et heritage (exemple avec modélisation sol) - algorithmie et big 0 notation - du fun avec turtle

Pierre-andré COURBET

Voir la session
28/06/2022 1h22mn

Récursivité et tests unitaires en Python

Plongez dans une correction d’exercice en Python pour comprendre la récursivité, les tests unitaires et les bases de la qualité de code de façon accessible.
06/06/2022 1h11mn

Refactoring Python : bases et bonnes pratiques

Dans cette session, on va aborder le concept de refactoring : qu'est-ce que c'est, quelles sont les bonnes pratiques, pourquoi et quand refactorer du code ? <a href="https://www.notion.so/docstring/6-juin-2022-742504ca6e124af69601cab1718c47bf" class="link" target="_blank">Notes de la session <i class="fad fa-external-link"></i></a>
07/05/2022 1h1mn

Mesurer les performances Python et exploiter GitHub

Dans cette session, on a vu comment mesurer les performances d'un script Python avec le module timeit. On a également parlé des différentes librairies existantes (ressource, profile et cProfile...). On a également parlé de la différence entre git, github et git bash, et pour finir on a vu un aperçu de Github Copilot et de la façon dont il peut aider à écrire du code plus rapidement.

Thibault HOUDON

Voir la session

Rechercher sur le site

Formulaire de contact

Inscris-toi à Docstring

Pour commencer ton apprentissage.

Tu as déjà un compte ? Connecte-toi.