Icon
Language
Culture

Anthony Khelil - De joueur passionné à développeur indépendant.

Anthony Khelil - De joueur passionné à développeur indépendant.


"La vraie vocation, c’est avoir pour métier sa passion."

Mais est-ce possible de passer sa vie à faire ce que l’on aime ?
Comment font certains pour avoir le succès dans tout ce qu’ils entreprennent alors que d’autres n’y arrivent jamais ?
Est-ce possible de consacrer sa vie à sa passion ou faut-il se résigner à travailler toute sa vie ?

Je vais vous raconter comment je suis passé de simple joueur passionné à développeur indépendant.Je m’appelle Anthony Khelil, j’ai 18 ans et je vis en région parisienne.
Depuis tout jeune, je suis passionné d’informatique et surtout de jeux-vidéos.

J’ai découvert cet univers grâce à mes parents, et notamment mon père qui m’a offert la PlayStation avec laquelle il a grandi.

Mes premiers pas se sont fait sur Crash Bandicoot et Spyro, alors que j’avais tout juste 6 ans.
Avec l’aide de mon père, j’ai commencé à parcourir mes premiers mondes virtuels et pratiquer ses fonctionnalités de base : Courir, sauter, tuer les ennemis, … Et j’ai rapidement commencé à enchainer les niveaux les uns après les autres. Crash Bandicoot & Spyro Tant de nostalgie en revoyant ces images.
Vous n’imaginez pas le nombre de fois que j’ai pu terminer tous ces jeux, et notamment "Spyro : Year Of The Dragon" pendant mon enfance.

À force de jouer, je connaissais les niveaux par coeur et pouvais même les refaire les yeux fermés.
Mais même si Spyro et Crash Bandicoot proposaient des aventures absolument incroyables, je me suis orienté, avec le temps, vers l’univers Nintendo.
Il faut bien reconnaitre que, entre Mario, Zelda, Pokémon, et les autres, il y avait beaucoup plus de jeux qui correspondaient à mon jeune âge.

Pour l’un de mes anniversaires, j’ai reçu une Wii qui a marquée mon entrée dans un écosystème absolument incroyable : Super Mario Galaxy, Mario Kart, PokéPark, …

Tant de jeux qui ont bercé mon enfance…

C’est à cette période que je me suis vraiment passionné de jeux-vidéo et que je ne jouais plus "Juste une heure ou deux le weekend".

Un peu après est venu le tour de la Nintendo DS, une console encore plus pratique car elle pouvais me suivre aussi bien dans les longs trajets en voiture qu’aux toilettes.

Super Mario Bros, Pokémon Platine, Animal Crossing, …
Tous ces jeux resterons à jamais gravés dans ma mémoire…

Mais tout en explorant ces chefs-d’œuvre vidéoludique, une question me tournait en boucle dans la tête : "Comment ça fonctionne ?".
Cette question, tout le monde se l’ai posée au moins une fois dans sa vie.
Sauf que là, on ne parlait pas de savoir comment l’eau du congélateur se transforme en glaçon mais bel et bien de savoir comment sont crées les jeux-vidéo.

Compilateur, assembleur, code source, langage de bas niveau, variables, …
Tous ces termes, je les avait déjà entendu et je savais qu’ils étaient liés à la programmation, mais je ne savais pas ce qu’ils signifiaient pour autant.





Vers l’âge de dix ans, j’ai fait mon premier pas de l’autre coté du miroir : Je m’étais procuré une Action Replay.

À l’époque, c’était la mode de Pokémon Platine et tout le monde s’entrainait pour avoir l’équipe la plus puissante de sa cour de récré.
Mais il existait un Pokémon ultime, avec des statistiques tellement élevées qu’il pouvais mettre K.O. n’importe quel ennemi en une seule attaque.

Les fans de Pokémon le reconnaitrons, je parle évidemment d’Arceus.

Malheureusement, pour capturer ce Pokémon, il fallait un objet secret, distribué uniquement lors d’événements particuliers organisés par Nintendo.

J’ai alors entendu parler de l’Action Replay, une petite cartouche à insérer dans sa console qui permet de modifier le code d’un jeu afin d’obtenir des avantages, tels qu’une invincibilité, des attaques plus puissantes, … Ou encore des objets secrets permettant de débloquer des Pokémons inédits !

Je me souviens encore du frisson que j’ai ressenti lorsque Arceus est apparu sur l’écran de ma console, prêt à être capturé.

C’est également à ce moment là que j’ai commencé à avoir des bases en hexadécimal (Les codes Action Replay était uniquement en hexadécimal) et indirectement en binaire.

Je passais mes journées à prendre des codes sur internet et à les modifier pour faire apparaitre des Pokémons ou des objets différents.

Et même si toutes ces manipulations sont relativement simples à comprendre, quand on a dix ans et que c’est notre première expérience en informatique, on se prends rapidement pour un génie.

Et c’étais surtout mes premiers pas dans l’univers de la programmation. Action Replay Mais ce n’étais qu’un début !

Par la suite, je me suis intéressé à la façon dont on passe d’un code hexadécimal à un écran 2D avec des pixels qui s’allument en rouge à gauche et d’autres qui clignotent en bleu a droite.

J’ai rapidement compris qu’il existait deux façons de faire :

• Soit on utilise des logiciels tout prêt (GameMaker, …) qui permettent de créer des jeux rapidement et facilement, sans trop savoir comment ça marche derrière.

• Soit on apprend un langage de programmation pour avoir un contrôle total sur ce que l’on fait. C’est évidemment plus long et plus compliqué, mais c’est beaucoup plus complet et surtout, ça permet de bien comprendre comment fonctionne un ordinateur.

Évidemment, je me suis tourné vers les langages de programmation, véritable fer de lance de l’informatique qui permettent de créer aussi bien des applications dans des systèmes embarqués que des systèmes d’exploitation entiers.

J’ai alors lu de nombreux tutoriels, formations et livres sur internet, et notamment "Apprenez à programmer en C !" de Mathieu Nebra qui m’a expliqué les bases de la programmation : Variables, conditions, boucles, …

De quoi apprendre à créer mes premiers programmes alors que j’étais encore un total débutant.
Du code très basique en somme, mais du code quand même.
Et surtout, c’étais mes premières lignes de code.
Et étrangement, cela me passionnait…

Moi qui ai toujours eu un esprit assez logique, je pouvais passer des heures à essayer de comprendre pourquoi un programme ne marchait pas comme prévu.

Et après un nombre incalculable d’heures passées à tout débugger, j’ai enfin terminé mon premier jeu : Mario Sokoban !

Le jeu original datait de 1980 et consistait en un personnage qui doit déplacer des blocs dans un labyrinthe.
Autant dire que c’était assez vieillot et que les algorithmes qui régissaient le jeu sont assez basiques.

Mais ça fais toujours quelque chose quand on voit un ami avec le sourire en jouant à un jeu et qu'on lui dit à la fin de sa partie que "C’est moi qui l’ai crée !". Mario Sokoban À ce moment, je me suis découvert une véritable passion pour la programmation et j’ai décidé de m’y investir encore plus, en allant de projets en projets.

Vers l’âge de 12 ans, j’ai donc appris les bases du C++, une évolution du C permettant de faire des choses plus poussés bien plus rapidement. (Bien que le C ayant des avantages face au C++ mais je me réserve un futur article pour parler de la différence entre les deux)

Je suis ainsi monté en complexité sur mes jeux, avec, entres autres, une ébauche de Super Mario Bros. (Avec évidemment beaucoup moins de fonctionnalités)





Avec de telles compétences, j’ai commencé à m’intéresser à l’autre face de l’informatique : L’univers du web.

Suite logique et complémentaire de la programmation dite de bureau, (C/C++) j’ai dû apprendre cette fois deux langages différents en même temps :

• HTML pour tout ce qui concerne les informations à proprement parler. (Titres, images, liens, …)

• CSS afin de mettre en forme les informations en mettant par exemple les titres en rouge, souligner les liens en vert, mettre une bordure bleu autour des images, …

Sans CSS, les pages seraient une avalanche de texte, sans aucune mise en forme.
Il est donc impératif d’utiliser ces deux langages simultanément pour mettre en forme son site, lui donner de la classe, du charme et surtout se différencier de tous les autres. HTML sans et avec CSS J’ai alors compris pourquoi la programmation web se distingue tant des langages plus classiques : On se contente de décrire ce que l’on veut afficher.
Contrairement à une application où l’on doit expliquer quoi faire dans chaque situation possible.

C’est assez difficile à expliquer comme ça mais c’est véritablement une autre façon de faire.
Une façon moins logique, mais plus intuitive.
Ce qui me plaisait moins car c’est justement ce coté logique que j’adorais tant dans la programmation.
Mais je n’avais pas le choix.

Malgré cela, j’ai continué mon apprentissage et j’ai rapidement été en mesure de réaliser quelques ébauches de CV et de sites basiques, alors que je devais avoir 13 ans.

Cependant, je me suis rapidement retrouver bloqué sur les limites de ces deux langages : Une simple page HTML/CSS, c’est moche, c’est inerte et ça ne bouge pas !

On a beau créer le plus jolie des sites, ça reste assez primitif, ça manque d’interactions, d’effets visuels, …

J’ai alors découvert le langage JavaScript qui permet justement de rajouter ce coté plus "vivant" aux pages web : Cliquer en haut pour changer un fond d’écran, sur le coté pour faire défiler une image, en bas pour ouvrir un message d’alerte, …

Et le meilleur : Le JavaScript est un langage comme le C/C++, avec ses variables et ses conditions !
Comme j’avais déjà fait de la programmation plus classique avant, j’ai pu très rapidement tirer parti de ce nouveau langage.

Sans compter la balise Canvas qui permet de créer de véritables jeux-vidéos sur son site web.

Je ne vous raconte pas le temps que j’ai passer à reprogrammer mon fameux "Mario Sokoban" pour qu’il soit jouable en ligne.

Je me souviens que j’avais réalisé deux versions du jeu :

• Une de bureau jouable au clavier.

• L’autre adaptée aux supports mobiles avec des flèches autour de la surface de jeu pour permettre de jouer sur l’écran tactile, même sans clavier.

Et je racontais à mes amis : "Regardez, j’ai créé un nouveau jeu ! Et celui-là, vous n’avez même pas besoin d’un ordinateur, vous pouvez y jouer directement sur votre téléphone !".

Après avoir épaté mon entourage, j’ai compris que les trois langages que je venais d’apprendre, couplés ensemble, permettent de faire tout ce qui me passe par la tête.

Vraiment tout ?
Presque tout…
La limite était les interactions avec le serveur : Espace membres, commentaires, compteur de vues, … Tout cela était impossible sans utiliser un langage spécifique aux serveurs.

C’est génial de créer un jeu-vidéo en ligne, mais à quoi ça sert si personne ne peut sauvegarder son record ? Internet permet de jouer à distance De plus, et contrairement aux langages "Client", (Opposés des langages "Serveur") il existe de très nombreuses possibilités entre le choix du langage et le SGBD (Système Gestion Base Données) utilisés.

J’ai alors fait le choix, un peu par hasard, de prendre le couple PHP/MySQL.

Pourquoi ?
Pour commencer, c’est l’un des plus populaires au monde.
Bien que je n’aime pas Facebook, dire que son site web fonctionne avec la même technologie que le plus grand réseau social au monde, ça claque.

Et puis, je savais que PHP me donnerai les bases de la programmation serveur, mais que je pourrai toujours changer de choix ultérieurement si le besoin s’en fait sentir. (Ce qui n’est jamais arrivé)

Petit à petit, j’ai commencé à donner du dynamisme à mes sites web : Commentaires, création de compte, upload de photos, … J’avais enfin toutes les cartes en main pour créer des sites parfaits.

À cette époque, vers mes 15 ans, je me souviens avoir créer un site interactif permettant de mettre en comparaison deux images et de permettre à l’utilisateur de choisir sa préférée, d’afficher les statistiques de vote, … Ou même de créer son propre couple de photos.

Mon premier site dynamique OneOrTwo Après avoir développé ce mini-site, j’ai décidé de revenir aux bases de ma passion : La programmation de jeux-vidéos.

Passionné avant tout de jeux rétro, j’ai découvert un excellent article sur le RayCasting, l’un des premiers moteurs de jeu 3D, utilisé notamment dans Doom ou Wolfenstein 3D.

La particularité de ce moteur était de créer une illusion de la 3D, tout en utilisant très peu de puissance de calcul.
Le moteur étant utilisé dans les années 90, la puissance brute était le critère numéro un des jeux-vidéos.

J’ai alors commencé à développer en JavaScript une copie de ce moteur de jeu, avec pour objectif de créer une version plus récente des premiers jeux 3D.

Évidemment, un tel moteur était bien plus compliqué qu’un simple site web.
Il fallait calculer le cosinus de l’angle de vue, le multiplier par la projection et diviser le tout par le produit scalaire entre notre propre champ de vision et celui de l’ennemi.
Tout ça, juste pour dessiner une seule rangée de pixel.

Et il fallait recommencer cette boucle plus de 1000 fois pour recouvrir tout l’écran de jeu.
Tout ça, 60 fois par seconde !

À ce moment, j’ai encore plus pris conscience de la difficulté à concevoir des jeux vidéos : Une simple erreur dans le coeur du moteur pouvais conduire à faire un calcul de trop environ 60 000 fois par seconde, ce qui aurai énormément ralenti mon moteur.

Malgré toutes ces difficultés, j’ai tenu bon et j’ai réussi à créer une sandbox de ce jeu, c’est-à-dire une version jouable mais n’ayant pas d’objectifs spécifiques.

Le jeu consistait en une simple zone parsemée d’obstacles, avec seulement quelques ennemis qui se déplacent à l’intérieur.
Rien d’autre !
Pas de lance-missile, pas de tir enflammé, pas de pistolet laser !
Le but n’était pas de créer un remaster de Doom.
Le jeu avait simplement pour but de montrer comment les premiers moteurs donnaient l’illusion de la 3D, simplement avec des éléments 2D.

Le moteur original a été mis en ligne sur mon site et y est toujours disponible.

Nous étions alors en 2016 et je venais d’avoir 16 ans. RayCasting, moteur de jeu de Doom et Wolfenstein 3D Après ce premier projet, j’ai reçu de nombreuses remarques et critiques sur le fait que ce n’étais pas un vrai jeu avec des véritables objectifs.

J’ai alors compris que le plus beau des moteurs n’a pas pour objectif d’être mis en avant au travers de simples tests techniques comme celui-ci, mais doit au contraire être utilisé pour réaliser des jeux qui resterons dans les mémoires.

Si Sony n’avait pas proposé de véritables jeux en 3D, personne n’aurai compris le potentiel de sa PlayStation.

J’ai donc eu le choix entre reprendre mon moteur et réaliser un véritable jeu dessus ou en utiliser un déjà existant et reconnu dans le monde entier.

Malheureusement, même si mon moteur étais parfait à mes yeux, il lui manquait de nombreuses fonctionnalités telles qu’une spacialisation du son, une gestion de la lumière, des effets tridimensionnels avancés et bien d'autres paramètres... …

Il restait avant tout une copie du moteur utilisé dans les années 90.
Et à cette époque, on se contentait de beaucoup moins de prouesses technologiques qu’aujourd’hui.

J’ai donc fait le choix d’utiliser un moteur de jeu dont l’efficacité a déjà été prouvé et je me suis tourné vers la SFML (Je reviendrai dans un autre article sur ce choix plutôt que sur celui de la SDL) afin de me lancer dans mon premier projet de jeu vidéo entièrement abouti.

J’avais déjà réalisé de nombreux prototypes de gameplay, de menus, d’effets sonores et autres.
Mais un jeux-vidéo dans son intégralité, ça jamais !

Pour ce premier véritable défi, j’ai voulu rester dans la simplicité et m’inspirer de l’un des premier jeux grand public : BomberMan.

Le principe étais simplisme : Un personnage qui se déplace dans un labyrinthe 2D et pose des bombes pour détruire les blocs alentours. BomberMan, connu de tous Mais évidemment, je ne voulais pas reprendre les graphismes et musiques du jeu original et simplement sortir un "BomberMan 2017".

J’ai alors eu une idée qui allait changer la perspective du jeu : Les niveaux devraient se dérouler dans le style de Super Mario.
Tout les éléments de jeu devraient revêtir ce style cartoon qui a tant marqué mon enfance.
Et évidemment, le personnage principal n’était autre que Mario.

Le nom du jeu étais alors tout trouvé : BomberMario.





Quasiment 9 mois ont été nécéssaire afin d’arriver à la fin du développement.
Évidemment, le travail à fournir était beaucoup plus important que tout ce que j’avais pu imaginer…

Ce fus long, et très difficile.
Mais j’ai tenu bon jusqu’au bout.

C’est à ce moment que j’ai compris qu’il y avais une véritable différence entre le fait de copier une ébauche de jeux-vidéo (Notamment en RayCasting) et le fait d'en concevoir un en entier et surtout sans personne pour m’orienter.

Le plus dur a été au tout début du développement, lorsque je devais fixer un certain nombre de règles de base : Quelle vitesse pour le joueur ? Quel identifiant pour un ennemi ? Combien de tiles (Éléments de base des niveaux) différents ?

Toutes ses questions peuvent paraître banales mais sont à fixer au tout début du développement et ne seront, en théorie, pas changées.

Je ne vais pas m’attarder plus longtemps sur le développement de BomberMario (Le prochain article lui sera entièrement consacré) mais j’insiste vraiment sur la quantité de travail qui était bien plus important que tout ce que j’avais pu imaginer au début.

BomberMario a été mis en ligne à l’été 2017, alors que j’avais 17 ans.

Aujourd’hui encore, le jeu est toujours en ligne et peut être téléchargé sur son mini-site. Après 9 mois de travail, BomberMario est enfin achevé Une fois le développement de BomberMario terminé, j’étais fier de moi : Mon premier jeux-vidéo entièrement réalisé par mes soins enfin achevé !

Je me souviens d’un jour au lycée, peu de temps après l’avoir mis en ligne, en avoir parlé à un ami pendant notre TP.
Celui-ci à voulu voir le résultat de ses propre yeux et l’a téléchargé, puis une autre personne dans la salle à fait de même, puis encore une autre.
Et 5 minutes après, un bon tiers de ma classe était en train de jouer en réseau à mon jeu.

C’est à ce moment que j’ai réalisé pour la première fois que j’avais fait quelques chose de grandiose et que j’avais un immense potentiel pour la suite.

Les téléchargements ont défilés.
Et le temps aussi.
Même si le travail accompli était impressionnant d’un point de vue de mon entourage, ce n’était qu’un grain de sable comparé aux mastodontes du jeux-vidéo, tels qu’Uncharted. (Bien que ce ne soit pas le genre de jeux que je vise)





J’ai alors songé à commencer un deuxième jeu complet.
Mais basé cette fois-ci sur un concept beaucoup plus récent.

J’ai eu beaucoup de propositions, et notamment une alternative à Pokémon que j’ai finalement décider d’oublier, compte tenu du coté véritablement irréalisable pour un seul développeur.

Je me suis alors tourné vers un autre classique du jeu vidéo, beaucoup plus connu : Super Mario Bros.
Et notamment vers la déclinaison mobile sorti quelques mois plus tôt : Super Mario Run.

Sa particularité ? Le héros court automatiquement et le joueur a pour unique mission de le faire sauter.
Un excellent concept, ni trop simple, ni trop complexe à programmer.

Cependant, j’ai encore une fois voulu personnaliser mon jeu pour qu’il se différencie de tous les projets de fans qui sont de simples copier-coller.
Au début, je voulais remplacer le joueur par un Pokémon ayant un pouvoir particulier.

Et puis, au fur et à mesure que les premiers niveaux prenaient forme, j’ai voulu ajouter différents Pokémons, chacun ayant une fonctionnalité qui lui est propre. (Voler, nager, marcher dans la lave, …)

Ce concept me trottait dans la tête depuis quelques temps : Plusieurs Pokémons dans un même niveau, chacun ayant un pouvoir inédit.

L’idée de base m’étais venu en jouant à PokéPark 2 : Certaines zones cachées proposaient ce genre de concept mais avec seulement 5 niveaux sur tout le jeu, chronométrés à 120 secondes pour la plupart et limités à 4 Pokémons utilisables. PokéPark 2, fondement de mon prochain projet Comme pour BomberMario, le développement à été très long et semé d’obstacles.

Une fois de plus, j’ai dû réaliser certains réglages, normalement définitifs, en me basant sur une version expérimentale du jeu.

Par exemple choisir la vitesse du joueur, la hauteur de ses sauts, la longueur maximum d’un saut, le nombre de Pokémons, …

Petite anecdote : Pendant le développement, de nombreuses personnes m’on fait remarquer que le joueur ne se déplaçait pas assez vite et m’on conseiller d’augmenter sa vitesse.

Sauf que quand j’ai déjà terminé 15 niveaux en me basant sur cette vitesse, je ne peux plus la modifier.
Si je double la vitesse, un espace de 6 blocs pourra être traversé en un seul saut alors que j’ai conçu le niveau en ayant en tête que ce passage est infranchissable.

À un moment, j’ai même envisager de laisser le joueur modifier à sa guise sa direction, comme dans un Mario Bros classique, mais j’ai encore une fois dû revenir en arrière à cause de problèmes sur les niveaux déjà terminés…

Évidemment, si j’avais prévu ces situations au départ, j’aurai pu trouver une solution pour les mettre en oeuvre.
Mais je ne m’en suis rendu compte que bien plus tard.

Ensuite, j’avais prévu de mettre 40 niveaux, tous différents les uns des autres.
Mais les niveaux devaient permettre de s’amuser tout autant en ramassant les pièces qu’en combattant les ennemis ou en recherchant les drapeaux, tout cela en gardant un esprit puzzle.

Bien sûr, il ne fallait pas que le niveau ressemble à un labyrinthe, mais il ne devait pas non plus être trop linéaire.
Enfin, sauf pour les premiers niveaux qui doivent rester le plus accessible possible, pour accrocher les nouveaux joueurs.

Je devais également mettre en place de nombreux pièges afin de forcer le joueur à alterner entre différents Pokémons, chacun étant un emplacement prédéfini dans le niveau.

Du coup, chaque niveau prenait un temps considérable à concevoir entre la phase de réflexion, de production et de tests pour éviter qu’un Pokémon ne se retrouve bloqué dans une portion du niveau. Super Pokémon Run est prévu pour fin 2018 À l’heure ou j’écris ces lignes, Super Pokémon Run est en version "Bêta".
C’est-à-dire que l’ensemble des fonctionnalités et niveaux sont présents mais que le jeu comporte de nombreux bugs qui seront corrigés d’ici sa sortie.

J’espère pouvoir le mettre en ligne d’ici quelques mois, idéalement avant la fin de l’année, et que vous serez nombreux à l’apprécier.

Je publierai également un article à sa sortie pour raconter plus en détail le développement et les nombreux problèmes auxquels j’ai été confronté.





Et voilà comment je suis devenu développeur indépendant passionné de jeux-vidéos !

Bien sûr, j’ai passé sous silence de nombreux détails que je vous raconterai une prochaine fois, sinon j’aurai dû écrire un livre entier pour pouvoir tout vous raconter.

Mais revenons à la question initial : Pourquoi vouloir créer un blog ?

En fait, l’idée de pouvoir partager ses connaissances avec le monde entier remonte au début de mon parcours…

J’avais quelques amis qui s’intéressaient à l’informatique et je me faisait un plaisir de leur expliquer en détail ce qu’il ne comprenaient pas : On m’a posé des questions aussi bien sur le meilleur langage pour commencer à programmer que sur la mise en pratique d’une injonction SQL.

Et comme je développais depuis bien plus longtemps qu’eux, je trouvais normal de répondre à leur questions.

Le partage est la base de l'informatique Mais le plus gros problème était surtout que l’on me posait souvent les mêmes questions et que je devais recommencer mes explications du début à chaque personne qui me demandait : "Si le C++ est mieux que le C, autant commencer directement par le C++, non ?".

Et à chaque fois, je devais réexpliquer depuis le début que la notion d’orienté objet étant très complexe, un débutant devrait plutôt commencer par le C. (Encore une fois le sujet est discutable mais la question n’est pas là)

À cette période, j’avais déjà en tête l’idée d’un blog sur lequel je donnerai mes conseils au plus grand nombre de personnes possible, aussi bien sur le choix d’un langage pour débuter que sur la meilleure manière de centrer verticalement un bloc en CSS.

Mais à ce moment, je n’avais pas osé me lancer.
Par peur de ne pas intéresser, de manquer de choses à dire, de ne pas tenir la régularité ou tout simplement de ne pas être assez expérimenté pour les autres…

Et j’ai laissé l’idée en suspens, préférant me concentrer sur mes autres projets.





Tout en continuant mon apprentissage, j’ai fini par réaliser que l’informatique est avant tout basé sur un partage des connaissances et des idées.

Après tout, quoi de plus encourageant que, lorsqu’on bloque sur l’écriture d’une expression régulière en PHP, de rechercher sur Google et voir que d’autres personnes sont tombées avant nous sur ce problème, ainsi que la manière dont ils l’ont résolu ?

Tout ceci m’a motivé à ouvrir mon propre blog : Après tout, depuis que j’ai commencé à programmer, j’ai été confronté à de très nombreux problèmes et je peux maintenant en résoudre la plupart en un temps record. (Bien qu’il m’arrive toujours d’être bloqué plusieurs heures sur un problème finalement tout bête)

Je pense avoir eu le déclic lorsque je suis entré en école d’informatique : La plupart des étudiants n’avaient presque aucune connaissances en programmation et venaient souvent me demander pourquoi tel ou tel bout de code ne marche pas comme prévu.

Et lorsque je les aidais, souvent en une fraction de seconde alors que eux bloquaient parfois depuis plusieurs jours, leur réponse était : "Ah mais oui, pourquoi je n’y ai pas pensé plus tôt ? Anthony, tu es un vrai génie !".

Tout ceci m’a poussé à l’idée que mon expérience pourra être bénéfique à un maximum de personne souhaitant se lancer dans l’univers de l’informatique. Mon blog me permettra d'aider un maximum de personnes J’ai alors commencé à faire quelques ébauches d’un blog d’informatique.

Je voulais que celui-ci soit constitué d’articles divers et variés, sans pour autant se limiter au développement à proprement parler.

Après tout, on peut tout aussi bien parler des nouveautés d’Unity 5 en étant développeur de jeux que donner son opinion sur la Nintendo Switch en tant que joueur !

Car avant d’être développeur, on est tous joueur au fond de soi…

L’été arrivant enfin, j’ai décider de me plonger plus sérieusement dans la réalisation de mon blog…
Premiers designs, premiers aperçus, sujets sur lesquels faire un article et même un prototype.

Le lancement du blog approche à grand pas.

Après une longue période d’hésitation, j’ai enfin décider de me lancer.

Voici donc mon blog, j’espère qu’il vous plaira.

Anthony Khelil

Newsletter