Logo
Accueil
Projets
Blog

Prêt à créer
quelque chose d'incroyable ?

Company logo

Ali Benkarrouch

Étudiant en génie logiciel à l'ETS

Get upTélécharger mon CV
LinkedInGithubEmail

Contactez-moi

© 2026 Ali Benkarrouch. Tous droits réservés.
0%
Tous les projets
Progression - Visualisation
février 2025

Progression - Visualisation

Lors de ma dernière session au Cégep de Rosemont, j'ai eu l'opportunité de contribuer à Progression, une plateforme d'apprentissage de la programmation de type "LeetCode" développée par le département. Au sein d'une équipe de sept développeurs, notre mandat était d'enrichir l'expérience pédagogique en ajoutant une dimension visuelle à la résolution de problèmes. L'objectif était de permettre aux étudiants de ne plus seulement voir du code, mais de comprendre la dynamique de leurs algorithmes en temps réel.

Ma contribution

Je me suis spécialisé dans la couche de logique d'interface responsable de la traduction des données d'exécution en représentations visuelles. J'ai développé les modules de transformation qui récupèrent les états du code soumis par l'utilisateur pour générer des animations interactives. J'ai notamment conçu la visualisation des algorithmes de tri (représentés par des blocs animés) et créé un système de grille dynamique pour les problèmes de recherche de chemin, où le tracé s'affiche en temps réel tout en identifiant les obstacles et les zones critiques.

Project Gallery

Visual Overview

Progression - Visualisation screenshot 1

Approche

Mon approche a consisté à créer un pont fluide entre le moteur d'exécution et le moteur de rendu. Travaillant dans un environnement de grande envergure, j'ai dû m'assurer que la récupération des données de débogage n'impactait pas les performances de l'application. J'ai misé sur une structure de données réactive pour que chaque étape de l'algorithme utilisateur déclenche une mise à jour précise de l'interface, transformant des flux de données abstraits en une expérience visuelle cohérente et pédagogique.

Fonctionnalités

  • Visualisation d'algorithmes en temps réel
  • Animation dynamique de tris (Sorting)
  • Tracé de chemin sur grille interactive
  • Feedback visuel pédagogique immédiat

Technos

JavascriptJavascriptPHPPHPVueVuePythonPython

Sources

Gitlab
Gitlab

More Projects

Explore Other Work

Genie Optiroll

Genie Optiroll

En tant que pianiste, je trouve souvent la lecture de partitions traditionnelles chronophage et je préfère de loin les représentations visuelles de type "piano roll". Comme toutes les chansons ne disposent pas de ce genre de tutoriel en ligne, j'ai voulu créer un outil capable de convertir instantanément n'importe quelle partition en un piano roll interactif. L'intégration de contrôles de vitesse me permet de ralentir les passages complexes, ce qui facilite grandement l'apprentissage de nouveaux morceaux directement à mon piano. Par ailleurs, cela faisait un moment que je voulais reprendre mon projet "Genies" de 2024 pour en créer une "v2". J'ai donc décidé de lancer une nouvelle série de projets indépendants sous l'appellation "Genie", qui regroupera toutes mes applications liées à l'IA et à la vision par ordinateur. C'est la raison pour laquelle le nom du projet commence par "Genie:", tandis que "Optiroll" est la contraction de "Optique" (pour la reconnaissance optique de musique) et "Roll" (pour le piano roll).

mars 2026

Easystay

Easystay

Le projet Easystay a été réalisé dans le cadre du cours d'Applications Natives 3 au Cégep de Rosemont. Développé en équipe de quatre, l'objectif était de concevoir une plateforme complète de gestion hôtelière répondant aux standards de l'industrie. Ce projet m'a permis d'approfondir mes compétences en développement collaboratif et de maîtriser le cycle de vie d'une application native, de la conception des interfaces jusqu'à la mise en place d'une logique métier complexe.

décembre 2024

Runebound

Runebound

Avec Runebound, mon objectif était de concevoir un RPG roguelite ambitieux qui explore la dualité dimensionnelle au sein du gameplay pour mon cours de développement de jeu vidéo au Cégep de Rosemont. J'ai voulu créer une expérience narrative forte où l'évolution du mage se reflète non seulement par ses pouvoirs, mais aussi par la transition technologique du jeu. Ce projet m'a permis de pousser mes compétences sur Unity en gérant deux styles de jeu distincts au sein d'une seule et même boucle de progression.

décembre 2024

View All Projects