Quale editor è meglio usare per scrivere software?

Courtesy by Pexels

  • Cerchi l’editor che-fa-tutto-lui-e-devi-solo-premere-salva?
  • Sei un fanatico della linea di comando? Uno del tipo: O VIM o niente?
  • Cerchi una buona via di mezzo?

Capisci che, a seconda di come rispondi, l’editor che scegli può essere molto diverso. Potrei fare una lunga lista di app disponibili sul mercato (tra l’altro ci sono centinaia di articoli sull’argomento), ma non potrei mai darti una risposta che calzi a pennello al tuo stile di lavoro, alle necessità del team in cui lavori o agli altri strumenti con cui lo devi integrare. Quindi la risposta necessariamente è “Dipende“”. Da cosa? Da cosa ti aspetti e per cosa lo vuoi utilizzare.

Personalmente posso condividere la mia esperienza dopo aver provato negli anni Eclipse, Netbeans, Coda, Atom, Visual Studio Code, Notepad++ (ebbene si, anche quello!), Sublime Text, XCode, PhpStorm, WebStorm, ecc. ecc.

Il mio preferito è Sublime Text. È snello, corredato da centinaia di plugins, pulito, essenziale. Generalmente utilizzo questo editor per il mio lavoro quotidiano. In questo periodo lavoro principalmente con Python e Sublime Text 3 fa tutto quello che mi serve.  Il sito Package Control contiene tutta la lista dei più diffusi plugin con cui corredare il proprio editor come ci piace. L’unico consiglio che mi sento di dare è: non esagerare con le estensioni! Se non le utilizzi, provale pure, ma poi toglile che appesantiscono per niente.

Tuttavia, non sono un fanatico. A secondo del lavoro che devo fare posso utilizzare un editor diverso.

Per esempio, sto muovendo i miei primi passi con Swift e XCode di Apple mi sembra l’editor più efficace allo scopo.

Sebbene mi trovo molto bene a lavorare anche in PHP con il mio editor preferito, in agenzia usiamo PHPStorm e devo ammettere che, sebbene più pesante in termini di memoria utilizzata, ha una serie di funzionalità utili a velocizzare il lavoro con Drupal, i repositori Git e altre finezze. Una differenza da non sottovalutare è che Sublime Text è gratuito, mentre PHPStorm è a pagamento. Tuttavia, i prodotti JetBrain  sono molto ben fatti e da non trascurare.

Ho anche testato Visual Studio Code (gratuito), Atom (scritto in Node.js)  e WebStorm (a pagamento) per lavorare con Javascript, Typescript, AngularJS e Angular 5 ed tutti e tre hanno i loro punti di forza. Come Sublime Text, sono estensibili con centinaia di plugin che velocizzano il lavoro quotidiano. Il problema è sempre quello di capire cosa installare e quanto tempo si perde per capire cosa fa al caso nostro.

Scelta dei plugin

Come si fa a scegliere quale plugin è più adatto al nostro scopo? Le guidelines che ho imparato nel mio lavoro sono semplici ma penso siano anche molto utili:

  1. Il plugin/package è aggiornato regolarmente?
  2. Quanti lo stanno utilizzando?
  3. I commenti sono in maggioranza positivi?

Queste tre semplici regole possono aiutare ad orientarsi nella scelta delle estensioni del nostro editor. Infatti, se il plugin non è aggiornato da mesi o addirittura da anni io non mi fiderei neppure ad installarlo, anche se le promesse fanno venire l’acquolina in bocca. Mi è capitato di installare plugins che poi non riuscivo più a togliere (nonostante le dritte trovate su StackOverflow) e di essere costretto a disinstallare l’editor e a riconfigurare tutto da zero.

Anche la platea di utilizzatori è importante: se sono solo dieci o cento persone ad usarlo e ne trovate uno simile (anche se fa qualcosina di meno) installato da mille o diecimila persone, scegli il secondo. A meno che il tuo scopo non sia quello di sperimentare e non devi consegnare progetti in tempo zero come capita di solito agli sviluppatori. Se ti serve in produzione, forse è meglio la strada più sicura ed efficiente che l’esplorazione di foreste sconosciute.

Infine, leggi i commenti. Se la maggior parte si è trovata bene, allora puoi pensare ragionevolmente che anche tu ti troverai bene utilizzando quell’estensione.

Quindi, quale editor devo usare?

All’inizio devi sperimentare un po’, poi troverai quello che più si addice al tuo stile di lavoro e a quello che devi fare. Conosco sviluppatori che non molleranno mai VIM per niente al mondo. Sono così abili con la CLI (command line interface) che non hanno bisogno di altro. Tuttavia, sii flessibile. Se per un certo progetto è più adatto un editor diverso perché ti farà risparmiare un sacco di tempo, usalo. I programmatori di software sono simili ad artigiani. I bravi artigiani hanno l’attrezzo giusto per il lavoro giusto. Non hanno centinaia di attrezzi per lo stesso lavoro. Gli editor sono i nostri attrezzi. Usiamo quello giusto per il nostro lavoro, senza aspettarci che faccia il lavoro al nostro posto. Alla fine, quello che conta è la capacità dell’artigiano più dell’attrezzo che utilizzerà.