Introduction
Ici nous allons parler du logiciel principal que vous (les développeurs) utilisez pour développer. Bien souvent c’est l'IDE ou encore un simple éditeur de fichier.
Le but de ce billet n’est pas de débattre pour choisir quels outils est meilleur que l’autre. Nous cherchons à faire une discussion légère afin d’échanger sur les raisons de votre choix.
Dire qu’un outil est mieux qu’un autre parce que ce dernier comporte une fonctionnalité que vous préférez est identique à dire qu’une couleur est meilleure qu’une autre parce que vous la préférez.
Mes besoins
Lorsque j’ai fait mes premiers pas dans le domaine du développement j’ai appris presque parallèlement un peu de Bash, du Python et du JavaScritp (Node).
En suivant les conseils des gens qui m’entouraient à ce moment là, je me suis orienté vers un outil qui permet d’être polyvalent. Le but était de ne pas appendre 3 outils différents pour travailler en plus d’apprendre à maitriser les outils pour réaliser mes projets (les langages de programmation).
En plus de cela on m’a orienté vers un outil extensible afin de pouvoir ajouté de fonctionnalités selon mes besoins.
Ma problématique (la souris)
Depuis que j’utilise un ordinateur (environ quand je suis entré au lycée, il y a environ 10 ans) quelque chose me génais. C’était la souris. Ce que je n’aime pas est le fait de passer ma main du clavier à la souris.
Bien sûr il existe des solutions pour ne pas déplacer sa main entre le clavier et la souris. On peut penser au RollerMouse ou SliderMouse mais ce n’est pas le sujet ici.
J’étais donc déjà convaincu par l’utilisation du terminal qui me permettais d’utiliser uniquement mon clavier pour utiliser mon ordinateur.
Vim
Suite à mes besoins et comment je souhaitais utiliser mon ordinateur, Vim semblait être l’outil approprié.
J’ai commencé à utiliser cet outil dès mes débuts dans l’informatique (au moment où je me suis intéressé à Linux, il y a environ 10 ans).
Bien sûr je me suis cassé les dents, car la courbe de progression de Vim commence par un mur de 2m à escalader tandis que nous savons pas encore marcher.
Maintenant, après plusieurs années à utiliser cet outil (pendant toutes mes études et aujourd’hui quotidiennement au travail ou pour mes projets personnels) il me permet de développer très rapidement.
Ce qui me plaît le plus dans cet outil est le fait de pouvoir naviguer dans mes projets rapidement sans lever les mains de mon clavier.
En plus de cela il met à disposition des commandes pour effectuer rapidement des actions complexes.
Non, je ne veux pas de votre extension
Certains me diront de me diriger vers des outils comme VSC ou IntelliJ et d’y ajouter l’extension qui va bien pour avoir les fonctionnalités de Vim dans des outils plus modernes.
C’est un compromis que j’ai essayé pendant plusieurs mois. J’ai cependant constaté deux soucis.
Le premier est que les extensions ont une limite. Certaines fonctionnalités n’étaient pas implémentées lorsque je les ai essayé (je pense aux commandes de substitution). J’ai donc trouvé comme alternative d’utiliser les raccourcis claviers des outils plus modernes.
La seconde est que les outils plus modernes sont conçus avec les interfaces modernes, donc avec l’utilisation de la souris. De ce fait les raccourcis ne me semblent pas intuitifs ou plus complexes à utiliser. J’étais moins à l’aise pour utiliser ces outils.
À chaque fois, je suis donc retourné à Vim.
Conclusion
J’utilise Vim car il me permet de développer avec de multiples technologies le tout sans lever les mains de mon clavier (pas même pour toucher à la souris).
Et vous ? Quel est votre outil de développement préféré et pourquoi vous avez choisi celui-ci ?
la discussion originale était ici.