Am stat pe VS Code vreo trei ani legat, convins că e „end-game-ul” pentru orice web dev modern. Aveam totul configurat brici, de la extensii de Docker până la integrarea cu Jira. Dar acum șase luni, într-o marți plină de bug-uri, am realizat că mă enervează mouse-ul. Pur și simplu simțeam că mâna dreaptă face prea multe drumuri între tastatură și birou pentru chestii care ar trebui să fie instantanee. Așa că mi-am șters .vscode și m-am întors la Neovim.
Nu a fost o decizie romantică. A fost una pur pragmatică, bazată pe un singur lucru: context switching-ul mă omora. Când ești în „flow”, orice milisecundă pierdută căutând un tab sau așteptând să se încarce un meniu contextual e un mic pumn în față.
Diferența de resurse și viteza brută
Să fim realiști. VS Code e un browser deghizat în editor. La un proiect de TypeScript cu vreo 12 microservicii și frontend separat, VS Code îmi mânca lejer 2.4GB de RAM doar ca să „respire”. Dacă mai puneam și un Slack și un Chrome cu 20 de tab-uri, laptop-ul meu de 16GB începea să sune ca un avion la decolare.
Cu Neovim, povestea e alta. Chiar și cu 20 de plugin-uri instalate și 3 servere de LSP pornite (TypeScript, Tailwind și Go), consumul de memorie rar sare de 350MB. Am economisit cam 40% din resursele sistemului doar făcând switch-ul ăsta. Dar nu e doar despre RAM. E despre latența input-ului. În Neovim, textul apare pe ecran instant. Nu există acel „input lag” subtil pe care îl simți în Electron când fișierul are peste 2000 de linii. Pare o fiță, dar după 8 ore de coding, diferența aia de latență se simte la nivel de oboseală mentală.
Ce am pierdut în proces (partea nasoală)
Ar fi o minciună să spun că totul e lapte și miere. Am pierdut „out-of-the-box-ul”. În VS Code, dai click pe un buton și ai debugger-ul setat. În Neovim, am petrecut două weekend-uri întregi să fac nvim-dap să meargă cum trebuie cu proiectele mele de Node.js. Și tot nu e la fel de intuitiv.
Am pierdut și integrarea vizuală perfectă cu Git. Da, am LazyGit și e genial, dar uneori un „diff” vizual într-o fereastră mare de VS Code e pur și simplu mai ușor de citit când ai de rezolvat conflicte gigantice.
Și cel mai mare minus: mentenanța. La fiecare două săptămâni, un plugin de Lua face update și îmi strică ceva în config. Trebuie să stau să caut prin forumuri sau să citesc changelog-uri ca să văd de ce nu mai merge auto-completarea. E un trade-off sincer: câștigi viteză în scrisul codului, dar pierzi timp „reparând” unealta cu care scrii.
Flow-ul și tastatura ca extensie a minții
Vim motions nu sunt doar scurtături. E un limbaj. Când te obișnuiești să scrii ci" (change inside quotes) sau dap (delete a paragraph), creierul tău nu se mai gândește la „unde pun cursorul”, ci la „ce vreau să fac cu structura asta”.
Totuși, dacă ești la început de drum sau dacă lucrezi într-un mediu unde trebuie să sari rapid de la un stack la altul, Neovim s-ar putea să fie o gaură neagră de productivitate. Am văzut colegi care au încercat switch-ul și după 3 zile s-au întors plângând la VS Code pentru că nu puteau să facă un simplu copy-paste fără să caute pe Google.
Concluzia mea? Neovim e pentru cei care vor să dețină controlul total asupra uneltei lor și sunt dispuși să plătească „taxa de configurare”. VS Code câștigă oricând la capitolul „just works”, dar te limitează la viziunea lor despre cum ar trebui să arate un editor.
Voi cum stați? Sunteți pe tabăra „vreau să meargă din prima” sau vă place să bibileți la config-uri până la 2 dimineața?