Mon expérience de passage de VSCode à Zed
(tenthousandmeters.com)- Les ajouts fréquents de fonctionnalités d’IA et l’instabilité de VSCode ont dégradé l’expérience utilisateur existante, poussant à chercher une nouvelle alternative
- Zed est un IDE léger et rapide écrit en Rust, qui propose une interface et des raccourcis familiers aux utilisateurs de VSCode
- Lors de la configuration de l’environnement de développement Python, il y a eu une confusion liée au mode de vérification de types du serveur de langage Basedpyright, mais le problème a été résolu via la configuration de
pyproject.toml - La vitesse, la stabilité et la simplicité de configuration de Zed constituent ses principaux atouts, et même si son écosystème d’extensions est plus réduit, il suffit largement pour le développement au quotidien
- Il s’impose comme un IDE concurrent capable de défier la position dominante de VSCode et de restaurer un workflow léger centré sur les développeurs
Pourquoi j’ai quitté VSCode
- VSCode a été utilisé de façon stable pendant longtemps, mais après des mises à jour centrées sur les fonctionnalités d’IA, il est devenu pénible de devoir désactiver de nouvelles fonctions à chaque version
- Même sans utiliser GitHub Copilot, des messages comme “cmd+I to continue with Copilot” s’affichaient de manière répétée
- Des fonctions inutiles comme les suggestions en ligne dans le terminal entraient en conflit avec l’autocomplétion du shell
- Le fichier
settings.jsons’est allongé en une liste de paramètres de désactivation, tandis que des bugs fréquents, des ralentissements et des crashs apparaissaient - L’auteur espère que l’intégration de l’IA dans VSCode redeviendra moins intrusive et plus stable, mais en l’état il a préféré chercher une autre solution
- Les IDE JetBrains ont été écartés car trop lourds, et Vim/Emacs à cause de la charge de configuration
- Zed, écrit en Rust, a donc été essayé comme nouvel IDE
Premières impressions sur Zed
- Lors d’un passage depuis VSCode, l’interface et les raccourcis sont similaires, ce qui offre immédiatement un environnement familier
- En revanche, Zed n’a pas de panneau listant les fichiers ouverts, et la navigation se fait via la recherche de fichiers avec
Cmd+P - Il est possible d’importer automatiquement la configuration de VSCode, mais ici les réglages ont été faits manuellement pour repartir de zéro
- En revanche, Zed n’a pas de panneau listant les fichiers ouverts, et la navigation se fait via la recherche de fichiers avec
- Les principaux réglages se limitent à la taille de police, le thème, la désactivation de Git blame et l’activation de la sauvegarde automatique, ce qui reste simple
- La vitesse et la réactivité sont nettement supérieures à celles de VSCode, et en deux semaines d’usage il n’y a eu ni bug ni crash
- Utilisé pour le développement Python et Go
- Go fonctionne immédiatement, sans configuration particulière
- Python a demandé un peu plus de temps pour la configuration initiale
Processus de configuration de l’environnement Python
- Zed s’appuie sur des serveurs de langage (Language Server) pour fournir l’autocomplétion, la navigation dans le code, la vérification de types, etc.
- Le serveur de langage Python par défaut est Basedpyright, qui repose sur Pyright mais utilise un
typeCheckingModeplus strict- Si une section
[tool.pyright]existe danspyproject.toml, le moderecommendeds’applique par défaut - Pour utiliser le mode
standardsouhaité, il faut le définir explicitement danspyproject.toml
- Si une section
- Exemple de configuration :
"basedpyright.analysis": { "typeCheckingMode": "standard" } - Un problème où les erreurs de type entre fichiers n’étaient pas reflétées immédiatement a été résolu avec le paramètre
"disablePullDiagnostics": true - La détection des environnements virtuels fonctionne correctement
- Le serveur de langage ty (développé par Astral, en version bêta) a aussi été testé et a bien fonctionné, mais Basedpyright a été conservé pour rester cohérent avec la CI
Évaluation actuelle de l’usage de Zed
- Il s’est imposé comme IDE principal pour le développement Python et Go
- Rapide, stable et familier, avec des fonctionnalités de base solides
- Son écosystème d’extensions est plus réduit que celui de VSCode, mais il est largement suffisant pour le développement quotidien
- Le seul manque notable est un visualiseur de diff aussi puissant que GitLens
- Les fonctionnalités d’IA de Zed existent mais restent non intrusives, et peuvent être ignorées si besoin
- L’offre payante propose une fonction de prédiction à l’édition, présentée comme un modèle de revenus pour assurer la pérennité du projet
Conclusion
- Zed s’impose comme un véritable concurrent de VSCode
- La seule influence de Microsoft pourrait ne pas suffire à maintenir la position de VSCode
- La vitesse, la simplicité et la stabilité de Zed améliorent l’expérience développeur, avec pour conclusion implicite : “VSCode, il est temps de se réveiller”
3 commentaires
Je ne peux pas encore l’utiliser comme mon outil de développement principal, je m’en sers plutôt comme bloc-notes de substitution (...), mais sa réactivité, son interface épurée et ses mises à jour rapides et simples sont vraiment très séduisantes.
J’hésitais, ne sachant pas trop à quoi ça pourrait servir, mais quand vous avez dit que vous l’utilisiez comme bloc-notes, je me suis dit : c’est exactement ça ! haha
Réactions sur Hacker News
Ici Ben de l’équipe VS Code. Un seul paramètre,
"chat.disableAIFeatures", permet de désactiver toutes les fonctionnalités d’IALa documentation associée est disponible sur la page officielle des mises à jour
Si des fonctions d’IA apparaissent encore après activation du paramètre, merci de le signaler sur la page des issues GitHub et nous examinerons le problème
Il peut arriver que de nouvelles fonctionnalités d’IA ignorent ce réglage, mais nous essayons de publier un correctif aussi vite que possible
Ce type de fonctionnalité devrait être bloqué de manière sûre dès la conception
Dans le contexte récent de rebranding en « éditeur de code IA open source », offrir la possibilité de choisir de ne pas utiliser l’IA me semble être une marque de respect envers les utilisateurs
À une époque où beaucoup d’entreprises se sentent obligées d’intégrer des LLM, ce choix a du sens
J’ai dû désactiver Copilot plusieurs fois, et j’ai fini par quitter VS Code
Il y avait trop de pop-ups, au point de me casser la concentration en permanence, et chaque semaine j’avais l’impression que l’éditeur ignorait mes préférences
Le projet Electron lui-même semble ne pas avoir conscience de l’application de la LGPL
Merci de faire remonter ce point au service juridique de Microsoft pour examen
La pression constante de VS Code autour de l’IA me gênait, alors j’ai commencé à utiliser VS Codium à la place
VS Codium est une version open core de VS Code dont les fonctionnalités de marque Microsoft ont été retirées
D’après ce que j’ai compris, Microsoft part d’un build de VS Codium, y ajoute ses propres fonctions, puis distribue VS Code
Les fonctions de base de VS Code sont bonnes, mais si les éléments Microsoft vous déplaisent, VS Codium vaut le détour
La relation n’est pas comparable à celle entre Chrome et Chromium
J’ai plutôt essayé Zed, qui n’est pas basé sur Electron, et l’expérience m’a semblé bien plus agréable
En réessayant Zed, je l’ai trouvé beaucoup plus stable, et mes anciens problèmes avaient disparu
En lisant cet article, j’ai réinstallé Zed : avant, il se figeait quand je travaillais sur du code distant, mais ce problème a maintenant été corrigé
Le Git distant fonctionne bien, la vitesse s’est énormément améliorée, et j’avais l’impression de recevoir un cadeau de Noël
En ce moment, j’utilise Zed, Sublime et VS Code en parallèle
Ce qui me manque le plus dans Zed, c’est l’absence d’une fonction de diff côte à côte
Il y a une discussion à ce sujet ici, mais rien n’avance
Il faudrait aussi améliorer la prise en charge de GDB/LLDB et l’outillage C/C++
Dans une époque où les logiciels sont devenus tellement lourds, j’aime que Zed et Sublime avancent dans la direction opposée
Par exemple, pour les diff, des outils spécialisés séparés comme Meld ou Beyond Compare sont largement meilleurs
Quand un éditeur essaie aussi d’intégrer tous ces outils périphériques, il perd son essence
Comme je l’ai dit dans cette discussion, s’il existait une bonne interface Git autonome, rapide et bien conçue, je serais prêt à la payer
J’ai acheté un nouveau MacBook et j’ai délibérément choisi de ne pas installer VS Code
À la place, j’utilise uniquement Emacs, et j’en suis très satisfait grâce à quarante ans de configuration accumulée
VS Code est excellent, mais je n’étais pas heureux en l’utilisant. Emacs est pour moi un outil qui me rend heureux
J’y limite aussi l’intégration des LLM au strict minimum, et quand j’en ai besoin, j’utilise seulement gemini-cli ou des modèles locaux
Emacs reste fidèle à une philosophie centrée sur l’édition de texte, contrairement aux IDE modernes qui poussent davantage l’automatisation
Emacs donne l’impression d’une expérience de développement artisanale
Je pense que Vim/Neovim et Emacs sont des éditeurs qui survivront encore très longtemps
La courbe d’apprentissage initiale existe, mais l’investissement en vaut largement la peine
Le Lisp reste difficile, mais aujourd’hui je suis satisfait d’une configuration propre et moderne
VS Code est plus puissant, mais je ne pouvais plus le supporter
C’est un énorme projet qui demande quarante ans d’expérience et une configuration entretenue avec régularité
Sublime Text reste un excellent éditeur
Il est rapide, les plugins fonctionnent bien, et grâce à Claude, il est facile de personnaliser des choses comme l’automatisation des raccourcis clavier
J’ai pu me construire avec Sublime mon propre IDE léger
Cela dit, c’est lui qui a servi de modèle original aux éditeurs légers comme Atom, VS Code ou Zed
J’en ai créé plusieurs avec Gemini, et ils fonctionnaient tous très bien
Pour l’instant, j’ai quand même l’impression que Sublime reste meilleur en performances
Son niveau de réactivité est difficile à égaler pour les autres éditeurs
J’aurais peut-être mieux fait d’apprendre Vim
Zed est plus rapide et moins pénible que VS Code
En revanche, l’absence d’un widget d’exploration du graphe d’appels de fonctions est gênante
Ce n’est pas quelque chose qu’une extension peut corriger, mais paradoxalement j’aime bien cette contrainte, car elle évite une architecture d’extensions de type navigateur web
Les performances de recherche dans de très gros dépôts distants sont encore en cours d’amélioration, mais j’espère que cela progressera bientôt
J’ai essayé de passer à Zed, mais j’ai abandonné à cause de l’absence de Jupyter notebook et de prévisualisation d’images/vidéos
Autres points gênants : le format on save activé par défaut (discussion associée) et une UX du débogueur inférieure à celle de VS Code
Il existe beaucoup d’IDE aujourd’hui, mais le workflow de base doit être irréprochable
format_on_save. On peut le désactiver maintenant, mais la valeur par défaut reste controverséeZed étant basé sur Rust, son écosystème d’extensions aura sans doute plus de mal à grossir, mais en échange il pourra probablement préserver performances et simplicité
Ces jours-ci, j’édite avec Helix et je débogue avec Xcode. VS Code souffrait souvent de fuites mémoire
Zed est récemment devenu l’outil qui a complètement transformé mon environnement de développement
Vitesse de lancement, latence à la frappe, consommation de ressources : tout est bien meilleur que dans VS Code, et la qualité du mode Vim est parmi les meilleures
Je suis l’auteur du billet. J’espère que beaucoup se reconnaîtront dans cette expérience de passage de VS Code à Zed
Il manque encore à Zed quelques détails comme la détection automatique de l’indentation (issue), mais les améliorations avancent vite, donc c’est prometteur
Je me demande si les avantages que tu trouves dans Zed n’existent pas déjà dans Vim