menu

Projets

julienc.io

Il s'agit du site sur lequel vous vous trouvez actuellement. Sa première version a été développée en 2014 et utilisait le framework Django. L'interface comme le back-end ont été entièrement revus en 2016 pour la seconde version : le site utilise aujourd'hui Flask et SQLAlchemy, tandis que le design adopte désormais les règles du Material Design, et utilise à cet effet le framework Materialize.

CSS
Flask
HTML
Javascript
jQuery
Python
SQLAlchemy

Laptop

Le projet laptop a été réalisé par un groupe d'étudiants de l'ENSEIRB-MATMECA en 2014 dans le cadre de l'enseignement "Sécurité des réseaux". Le thème choisi par notre groupe était celui de la sécurité du chiffrement des disques durs. Plusieurs logiciels ont été testés (TrueCrypt, Luks et BitLocker), et, pour chacun d'entre eux, des méthodes de contournement ont été trouvées et mises en application. Ce projet a permis de mettre en évidence le fait que le chiffrement à lui seul ne suffit pas à s'assurer de la protection des données.

L'image d'illustration est tirée de xkcd.

Linux
Shell
Sécurité

Guitar Tutor

Conçu par un groupe d'étudiants de l'ENSEIRB-MATMECA sous la tutelle de chercheurs du LaBRI en 2013, GuitarTutor est un serious game visant à faciliter l'apprentissage de la guitare à des débutants. À la manière d'un Guitar Hero, le joueur choisit son morceau et doit jouer les notes qui défilent sur l'écran. Le programme récupère l'audio via un micro et analyse la justesse de chaque accord par rapport au résultat attendu pour finalement donner une note globale de performance à la fin du morceau.

Le logiciel a été codé en C++ à l'aide de la bibliothèque Qt, et fonctionne sur les systèmes Windows, OS X et Linux. Le projet a par la suite été présenté à des écoles de musique de la région bordelaise.

C++
Qt

heygo

heygo est une plate-forme privée de partage de fichiers vidéos, un peu à la manière d'un serveur ownCloud. Un système de gestion des droits permet à l'administrateur de régler finement les accès à chacun des fichiers disponibles.

Le back-end est codé en Go et interagit avec l'API de opensubtitles pour récupérer automatiquement les sous-titres des vidéos. La partie front-end, quant à elle, utilise AngularJS.

À l'heure actuelle, le projet, bien que fonctionnel, est toujours en version alpha.

AngularJS
CSS
Go
HTML
Javascript

pystassh

pystassh est une bibliothèque pour Python 3 permettant l'établissement de connexions SSH pour se connecter sur une machine distante et exécuter des commandes de manière très simple. Il s'agit d'un wrapper autour de la bibliothèque libssh, codée en C.

C
pytest
Python
Travis CI

utools

utools est une bibliothèque pour Python 3 comprenant un ensemble de fonctions pratiques telles qu'un test de primalité, un getter récursif pour dictionnaires, ou un chronomètre permettant de mesurer la durée d'exécution d'un bloc de code. De nouvelles fonctionnalités y sont ajoutées au fur et à mesure des versions.

Cette bibliothèque est intégralement couverte par des tests unitaires et est téléchargeable sur Pypi.

pytest
Python
Travis CI

terimg

terimg est un programme écrit en Go conçu pour afficher des images sur un terminal. En prenant en entrée une image au format png ou jpg, l'algorithme va découper celle-ci en blocs – dont le nombre est calculé en fonction de la taille du terminal – puis calculer la couleur à utiliser pour chacun d'entre eux. Le rendu est finalement affiché sur la console de l'utilisateur.

Une vidéo de démonstration est disponible ici.

Go
Linux
Shell

La #ChansonDeLaSemaine

Partager une œuvre musicale par semaine, tous genres confondus : la #ChansonDeLaSemaine. Il s'agit d'un projet personnel initié en 2012 pour lequel j'ai créé le site éponyme en PHP. La seconde version du site sort l'année suivante, avec l'aide d'un ami pour refaire totalement le design. Après plus de 100 éditions hebdomadaires, la dernière publication est faite en été 2014. En attendant peut-être une reprise un jour ?

CSS
HTML
Javascript
jQuery
MySQL
PHP

Google Code Jam

Tous les ans depuis 2003, Google organise un concours mondial de programmation, auquel je participe depuis 2013. Chaque année, une série de problèmes est donnée à résoudre aux participants dans un laps de temps limité avec comme seul objectif marquer suffisamment de points pour se classer parmi ceux qui passeront au tour suivant.

C
Python

Project Euler

projecteuler.net est un site proposant, depuis 2001, une série de problèmes mathématiques à résoudre à l'aide de programmes informatiques. Si les premiers problèmes peuvent être résolus rapidement, les suivants deviennent très rapidement complexes. Je compte actuellement plus de 130 problèmes, ce qui me place dans le premier centile d'une communauté de près de 650 000 membres.

C
Python

Codewars

Fort d'une communauté de plusieurs dizaines de milliers d'utilisateurs, Codewars est un site proposant un grand nombre de défis algorithmiques à relever dans une large sélection de langages, tels que la conception d'un interpréteur Brainfuck ou d'un encodeur Ascii85. Ayant à ce jour complété plus de cent épreuves dans quatre langages différents, je figure parmi les 400 premiers du classement général.

Go
Javascript
PHP
PostgreSQL
Python
Shell