Mes loisirs

Here you can find out who I am. Well, also my CV, my publications

LinkedIn : http://www.linkedin.com/in/ghazibouselmi  View Ghazi Bouselmi's profile on LinkedIn

Pour mes loisirs, j'aime le cinéma la musique et les jeux vidéo. 

Toutefois, une de mes plus grandes passion est sans doutes la programmation. Dès l'age de 13 ans, j'ai découvert la programmation sur ordinateur avec "GW Basic" sur une console de jeux, je me suis pris de passion. Depuis, j'ai utilisé plusieurs languages de programmation dont QBasic, Turbo Pascal, Assembleur, C/C++, Delphi, Java ... Je siterai quelques uns des programmes que j'ai développé, y compris ceux liés à mon cursus universitaire: au delà de la nécéssité du développement de ces programmes pour mes études, il y a là l'expression d'une passion.

Le premier grand programme que j'ai développé était le jeux Monopoly, sur QBasic. On peut y jouer à plusieurs, avec une interface graphique ressemblant au tapis du jeu réel. J'ai pris beaucope de plaisir à le développer.

J'ai développé ensuite deux programmes de compression de fichiers. Le premier, simple sous Pascal, atteignait les 80% des performances du logiciel ZIP. Le second, sous C++, était plus compliqué: gestion de répertoires et fichiers multiple, ajout et supression de fichiers de l'archive, mot de passe... Il donnait des performances équivalentes à celles de ZIP. 

Je me suis intéressé plus tard à la compilation, j'ai mis au point un compilateur de compilateurs: un programme qui prend en entrée une grammaire pour le language cible et génère un code C++ pour le compilateur de ce language (à la facon de yac/bison de Linux). Il suffit de compléter les actions dans ce code C++ et de le compiler pour obtenir un compilateur pour le language cible.

J'ai mis au point un compilateur pour le language Assembleur qui prend en compte les instructions du processeur Pentium 4 de Intel. Ce programme génère des fichiers exécutables au format COM et EXE pour le système d'exploitation MS-DOS. J'ai pris beaucoup de plaisir à le développer, malgrès le gros travail qu'il a nécessité vu le très grand nombre d'intructions traitées.

Durant un stage de programmation en techniques multimédia à l'ENSI, j'ai développé un serveur mail  en C++ supportant le protocole SMTP. Durant un second stage de programmation à l'ENSI, mon ancien camarade "Houssem Bdioui" et moi avons mis au point un backdoor pour le système d'exploitation MS-Windows 98. C'est un virus invisible qui permet à une autre personne de prendre le controle de la machine infectée à distance: déplacement de la souris, clicks, changement de curseur de souris, entrées clavier, gestion de programmes (lancement de programmes, fermeture de programmes ...), gestion de fichiers (création, suppression, consultation), ouverture/fermeture du lecteur CD, éteindre la machine ... Nous avons pris beaucoup de plaisir à développer ce virus. Durant un autre stage à l'ENSI, "Houssem Bdioui" et moi avons développé un jeu de course automobile en 3 dimensions, jouable à 4.

Dans un autre stage à l'ENSI (encore un) pour le cours de base de donné, j'ai développé en C++, un compilateur pour le language de gestion de bases de données CODASYL. J'ai rajouté des commandes au language CODASYL pour prendre en compte les aspects algorithmiques tels que les boucles, les controles (switch, if then else, ...). Encore une fois, cette expérience m'a apporté beaucoup de plaisir.

Ce sont des expériences parmis d'autres, plus ou moins importantes et ayant demandé plus ou moins d'efforts. Toutefois, elle partagent toutes une meme constante: le plaisir du développement et de la création.