Top articles

  • Comment démarrer un serveur sur un port aléatoire en Java

    25 septembre 2018 ( #Java )

    Lorsqu'on veut démarrer un serveur pour tester une partie de son application (par exemple pour simuler une resource avec laquelle notre application interagit) il est préférable de démarrer le serveur sur un port aléatoire (entre 1024 et 65535). Ceci permet...

  • Comment détecter le séparateur utilisé dans un fichier csv

    16 mars 2015 ( #Php )

    J'ai dû développé en PHP un petit module d'import de fichier csv. La solution que j'ai utilisée se base sur le LOAD DATA INFILE de MySQL. Un des besoins était de pouvoir utiliser un autre séparateur de champ que la virgule. J'ai donc écrit une petite...

  • Comment monter un volume docker depuis un conteneur avec docker-compose

    18 septembre 2018 ( #docker )

    Docker-compose permet facilement de monter des volumes à l'intérieur d'un conteneur docker. Cela se fait simplement en définissant une liste de volume à monter depuis votre fichier docker-compose: volumes: - ~/.aws:/etc/aws - data:/opt/application/data...

  • Comment executer une fonction javascript avec le bon objet this

    13 mars 2015 ( #Javascript )

    En javascript la résolution de l'objet 'this' peut vite devenir compliquer. Heureusement il est possible d'exécuter une fonction en précisant explicitement sur quel objet la fonction s'applique. Au lieu d'appeler la fonction directement il faut utiliser...

  • java.lang.OutOfMemoryError: unable to create new native thread

    06 mars 2015 ( #Java )

    J'ai dernièrement rencontré cette erreur en testant une appli assez conséquente. Comme l'erreur est une OutOfMemoryError j'ai naturellement penser à augmenter la mémoire allouée à la JVM mais cela est resté sans effet. En fait la mémoire n'est pas le...

  • Comment executer une class main spécifique avec sbt

    04 janvier 2017 ( #Scala )

    Si dans votre projet sbt vous avez plusieurs classes principales, vous avez surement besoin d'executer ces différents programmes sans pour autant vouloir changer votre build.sbt. Une classe principale est un objet (scala object) qui contient une méthode...

  • Valeur par défaut dans un script bash

    24 mai 2016 ( #Linux )

    Si vous écrivez des scripts bash de temps en temps il y a une astuce simple et efficace que l'on peut utiliser lors de l'exécution du script. Par exemple imaginons un script qui exécute un programme et qui prend quelques paramètres en entrées. Pour faciliter...

  • Sous-projets SBT avec différentes versions de Scala

    15 juin 2017 ( #Scala )

    SBT permet de définir des sous-modules (ou sous-projets) à l'intérieur d'un seul projet. Cela se fait en utilisant des sous-répertoires pour chaque sous-module puis en déclarant chacun d'eux dans le build.sbt. lazy val commonSettings = Seq( organization...

  • Comment supprimer un commit dans Mercurial

    04 mars 2015 ( #Version control )

    Au niveau des modifs de l'historique je trouve que Mercurial n'est pas aussi souple que git. Mais bon on peut quand même supprimer un commit à l'aide de l'extension mq. Pour activer l'extension mq il faut ajouter la ligne suivante dans le fichier ~/.hgrc:...

  • Comment faire un pattern matching sur une expression régulière en Scala

    23 novembre 2016 ( #Scala )

    En scala l'utilisation des expressions régulières combinée avec le pattern matching permet de simplifier l'extraction de groupes à l'intérieur des regex. Par exemple imaginons que nous devons extraire les composants d'une date au format aaaa-mm-dd (soit...

  • Comment faire automatiquement le ménage dans ses branches GIT

    23 septembre 2016 ( #git )

    Si vous utilisez git avec les feature branch vous avez probablement beaucoup de branch qui ont été mergées et qui ne servent plus à rien mais qui reste là car c'est un peu ennuyeux de les supprimer manuellement. En revanche sur le repo central les branches...

  • Comment formater un enum en json avec Play

    10 octobre 2016 ( #Scala )

    Play ne supporte pas nativement la serialisation d'enum vers json. (Je pense qu'il s'agit d'une sombre histoire de compatibilité avec la version Java de Play). Qu'à cela ne tienne on peut facilement écrire un json format qui fonctionne pour n'importe...

  • Comment assigner un conteneur docker à un processeur

    26 septembre 2016 ( #docker )

    Il peut être intéressant de limiter les nombres de cores CPU disponible pour un conteneur. Par exemple on peut vouloir n'utiliser qu'un seul core pour les conteneurs docker de façon à laisser assez de CPU disponible pour l'hôte. docker permet de préciser...

  • Comment afficher le fingerprint d'une clé ssh

    19 mai 2017 ( #SSH )

    Github affiche le fingerprint des clés SSH associées à son compte. Comme j'utilise différente clés SSH j'ai parfois du mal a retrouvé la bonne clé. Heureusement on peut comparer les empreintes (fingerprint) des clés SSH pour retrouver la bonne. Par contre...

  • Commet faire du ménage dans les conteneurs et images docker

    19 septembre 2016 ( #docker )

    Si vous utilisez docker vous avez surement remarqué que l'espace disque utilisé augmente rapidement. Voici quelques règles pour économiser un peu de place sur votre disque. Supprimer les volumes associés à un conteneur Lorsqu'on supprime un conteneur...

  • XCode - Command /usr/bin/codesign failed with exit code 1

    15 décembre 2015 ( #iOS )

    Comme j'ai perdu pas mal de temps récemment avec la signature de mon app iOS j'ai pensé que ça pourrait servir à d'autres presonnes. Le problème Donc voilà j'ai récemment réinitialisé ma keychain et j'ai donc dû régénérer tous mes certificats et profiles...

  • Comment accéder à un repertoire local depuis un conteneur docker

    14 juillet 2016 ( #docker )

    Pour accéder un répertoire local depuis un conteneur docker il faut le monter en temps que volume docker. C'est l'équivalent des "shared folders" de Virtual box. La définition d'un volume s'effectue avec l'option -v de manière similaire au mapping des...

  • Comment regrouper plusieurs PDFs en un seul fichier

    11 juillet 2016 ( #Linux )

    Ghostscript (gs) permet de générer un fichier PDF à partir de plusieurs PDFs. Ghostscript est évidement disponible sous linux mais également sur Mac. brew install ghostscript La commande gs est très puissante et très complexe à la fois. Il faut donc l'utiliser...

  • Comment mettre à jour toutes les images docker

    07 juillet 2016 ( #docker )

    J'utilise un docker registry privé sur lequel les développeurs pousse régulièrement de nouvelles images. Il faut donc régulièrement mettre à jour les images locales que nous utilisons et quand on commence à avoir beaucoup d'images cela devient vide fastidieux....

  • Comment créer un alias avec sbt

    04 août 2017 ( #Scala )

    Effectuer toutes les validations d'un projet SBT peut vite devenir complexe. Par exemple il faut: Supprimer les résultats des compilations précédentes (clean) Compiler le project en incluant les tests unitaires et d'intégration (compile, test:compile,...

  • Comment formatter une map en Json avec Play

    10 octobre 2016 ( #Scala )

    Play ne fournit pas par défaut de format pour sérialiser une map en Json. Bien sûr si vous utiliser une Map[String, V] et que vous avez un format implicitement disponible pour le type V alors vous pouvez sérialiser votre map sans effort supplémentaire....

  • Mac OS X: Outdated version of /usr/bin/install_name_tool

    18 juin 2015 ( #mac )

    Si vous avez installé une clé 3G Huawei sur votre Mac, Brew n'a sans doute pas apprécié et affiche sans doute l'erreur suivante: $ brew doctor Warning : You have an outdated version of /usr/bin/install_name_tool installed. This will cause binary package...

  • Comment installer R sur mac OS X

    22 mai 2015 ( #R )

    L'installation de R sur Max OS X est assez aisée avec homebrew. Il y a cependant un écueil car R n'est pas disponible par défaut. Il faut d'abord ajouter un nouveau "repo" à homebrew: brew tap home-brew/science Penser à mettre à jour les taps homebrew...

  • Comment générer un PDF directement depuis le navigateur

    08 mai 2015 ( #Javascript )

    Jusqu'à présent j'ai toujours générer les PDF côté serveur mais je viens de découvrir une librairie javascript qui permet de le faire directement dans le navigateur. Il s'agit de jsPDF. Cette librairie est assez facile d'utilisation il suffit de voir...

  • Comment compiler un template Angular

    07 mai 2015 ( #angular )

    Maintenant qu'on sait comment télécharger un template angular il va falloir le traiter ou le compiler. C'est à dire remplacer toutes les doubles accolades {{}} par les valeurs correspondantes. Cela se fait en 2 étapes: La compilation qui va produite une...

<< < 1 2 3 4 5 6 7 8 9 10 > >>