42, born2code
Voici un récap de mon cursus à l'école 42, des projects effectués, des notes obtenues et du code sources, HF !
J'étais sur le campus de 42 Lyon, de la promo 2021, piscine d'Août (objectivement la meilleure) !
(Si vous êtes dans le cursus, pas de triche 🤫)
mars 2023
ft_transcendence
Voir le dépôt4 personnes pour travailler sur le premier projet de développement web de 42. L'objectif : créer un Pong multijoueurs en ligne avec des fonctionnalités de chat (amis, channels) et de matchmaking (+ quelques bonus de notre part).
décembre 2022
ft_irc
Voir le dépôtft_irc est un projet de groupe qui, comme son nom l'indique, nous fait recréer un serveur IRC (from scratch, en C++). Le serveur suit la spécification RFC 2812 et peut donc être utilisé avec les clients IRC existants.
novembre 2022
Inception
Voir le dépôtOn utilise Docker de façon poussée avec docker-compose dans ce projet aux multiples contraintes : hébergement d'un wordpress multi-conteneur, reverse-proxy et certificats SSL. J'ai profité de mon expérience avec Docker pour faire tous les bonus : un cache avec Redis, un FTP, un GUI pour la base de données, du monitoring et la création puis l'hébergement d'un site NestJS.
septembre 2022
cub3D
Voir le dépôtcub3D est un projet graphique en duo dans lequel nous créons un jeu qui ressemble à un vieux FPS, comme Wolfenstein 3D. Nous avons donc du Raycasting à faire en C avec une bibliothèque graphique très minimaliste, la MinilibX (elle ne permet que d'afficher un pixel).
août 2022
NetPractice
Voir le dépôtNetPractice est un projet de 10 exercices qui ont pour objectif de nous faire découvrir le réseau (masques de sous-réseaux, routeurs, switch, etc.).
juin 2022
Piscine C++
Voir le dépôtUne piscine de C++, composée de 8 modules destinés à approfondir les notions de classes et de polymorphismes, de templates et de casts.
avril 2022
Minishell
Voir le dépôtGros projet en binome. L'objectif est de créer un interprêteur de
commande qui mime un bash. Minishell gère les variables d'environnement,
lance des programmes et gère leur retour, les pipes et les redirections.
Nous avons aussi un certain nombre de fonctions built-in, comme
cd, echo, env, exit,
export, pwd et unset.
mars 2022
Philosophers
Voir le dépôtModéliser le problème du Dîner des philosophes. Dans un premier temps en représentant chaque philosophe par un thread et chaque fourchette par un mutex, et dans un second temps en représentant chaque philosophe par un fork (processus enfant) et les fourchettes par des semaphores.

février 2022
push_swap
Voir le dépôtTrier une pile avec le moins d'opérations possibles à l'aide d'une pile temporaire. Nous avons droit à deux opérations qui n'existent normalement pas sur les piles, rotate et reverse rotate. Pour le résoudre, j'ai créé mon propre algorithme de tri (c'est en réalité probablement l'adaptation d'un algorithme existant, adapté au sujet et à ces deux instructions supplémentaires).
janvier 2022
minitalk
Voir le dépôtFaire communiquer deux programmes, un serveur et un client, via deux signaux unix envoyé avec KILL, c'est-à-dire envoyer les données en binaire via des signaux unix. Difficultés ? Recevoir les bits dans l'ordre d'envoi ;)
janvier 2022
FdF
Voir le dépôtPremier programme graphique, nous devons afficher une carte de points en 3D, reliés par des segments (FdF, Fils de Fer). La carte est interactive (déplacement, rotation, zoom) et est développée avec une librairie graphique simpliste, nous permettant seulement de placer des points en 2D.
décembre 2021
ft_printf
Voir le dépôtRecréer la fonction printf de la librairie standard C. ft_printf
fonctionne exactement de la même manière, mais "uniquement" avec les
flags suivant : %cspdiuxX et les flags de précision :
-0.# +.
novembre 2021
get_next_line
Voir le dépôtRecréer la fonction getline() de la librairie standard C.
get_next_line permet, comme getline, de retourner chaque ligne d'un
fichier successivement. Il est possible de faire varier la taille du
buffer.
novembre 2021
Born2beroot
Voir le dépôtInstaller Wordpress sur un serveur Debian en suivant des règles très strictes en matière de sécurité, de chiffrement et de partitionnement. Création d'un script simple de monitoring avec Bash.
novembre 2021
Libft
Voir le dépôtCe projet a pour but de nous faire créer une lib(ft, pour forty-two) contenant plein de fonctions très utilisées en C, mais que nous recodons à partir de rien. On utilisera notre propre librairie standard "libft" dans les futurs projets de 42.