Vulnérabilité Log4Shell

Qu’est-ce que Log4j et JNDI ? Log4j est un utilitaire de gestion des logs pour les applications développées en Java. Ce framework open-source est développé par l’Apache Software Foundation depuis 2001. Il permet de configurer précisément les fichiers de sortie, les niveaux et le format des logs.  JNDI (Java Naming and Directory Interface) est une API Java qui permet d’effectuer des […]

Installation de Xdebug avec PhpStorm

Xdebug est une extension indispensable qui va vous permettre de « débugger » votre code PHP. J’ai installé ce débugger sur de nombreux projets PHP, si vous suivez ce guide pas-à-pas vous pourrez installer Xdebug sans aucun problème !  I. Récupérer la bibliothèque Xdebug La première étape consiste à télécharger la bibliothèque adéquate.  Si vous êtes sous Windows, il s’agit […]

Qu’est ce que le Hoisting en javascript?

Introduction Le « hoisting », qu’on peut traduire par « hissage » en français est un concept important en Javascript. En effet, il permet de mieux comprendre comment le code est exécuté et d’éviter pas mal d’erreurs au quotidien. On va voir ensemble de façon très concrète ce qu’est le hoisting. On utilisera des exemples que vous pourrez run directement dans la page donc […]

Les différences entre les doublures de test: Dummy vs Fake vs Stub vs Mock

Introduction Lorsqu’on réalise nos tests unitaires, le SUT (system under test) interagit avec différents objets dont le comportement n’est pas à tester.  On peut prendre l’exemple d’une méthode qui aurait pour but d’effectuer des calculs puis envoyer un mail via un service d’envoi: il n’y a pas de valeur ajoutée à initialiser ce service, on voudrait simplement vérifier que la […]

Squasher ses commits Git

Pour ne pas retrouver ses commits de travail dans votre branche de production, il est essentiel de squasher ces commits avant de fusionner votre branche (cf l’image d’illustration! 😉 ). Si vous ne savez pas ce que ce terme signifie ou comment l’appliquer, cet article est fait pour vous! On verra dans un premier temps ce que “squasher des commits” […]

Démarrer son projet Symfony 5 en local

Vous venez de créer votre projet Symfony 5 et vous voulez à présent le démarrer en local, cet article est fait pour vous 🙂 On va voir toutes les solutions qui s’offrent à vous ( et il y en a beaucoup ! ) pour démarrer votre projet. Qu’est ce qu’il vous faut pour démarrer un projet ? Le minimum nécessaire […]

Connecter Doctrine à une base de données PostgreSQL dans un projet Symfony 5 sous Windows

Il y a plus d’un an, nous avions fait un article équivalent pour Symfony 4. Si vous l’avez lu, vous ne serez pas dépaysé, la démarche est quasiment identique ! Aujourd’hui on va voir pas à pas comment établir une connexion vers une base de données PostgreSQL dans Symfony 5 🙂 Versions utilisées pour l’article : Symfony 5.2 Doctrine 2.8 […]

Installation de XDebug sur VS Code – partie 2

Avant de commencer, assurez vous d’avoir bien suivi la partie 1! C’est fait? Alors c’est parti! 🙂 On va devoir configurer notre IDE et notre navigateur Web pour qu’ils communiquent ensemble. I. Configuration du navigateur Il va simplement falloir installer une extension sur votre navigateur préféré. Je vous donne 2 extensions que j’ai testé mais il en existe une multitude. […]

Liste des compétitions pour les développeurs

Il existe de nombreux challenges à destination des développeurs. J’ai découvert l’univers du « competitive programming » récemment et j’ai vraiment accroché ! C’est l’occasion d’améliorer ses compétences et de se challenger avec d’autres développeurs 😉 En plus, il est possible d’y participer en choisissant son langage de programmation préféré parmi une liste très fournie, il n’y a aucune raison de ne pas essayer ! 😊 […]

Livre – Programmation en C# aux éditions ENI

Le premier ouvrage publié aux éditions ENI dont je vais parler est : “Programmation en C# – Préparation aux certifications MCSA – Examen 70-483“ écrit par Benoît PRIEUR , ingénieur informatique qui intervient sur des missions de conseils et de formation autour de .NET et Python.