“Linux è difficile!” “Linux è per programmatori” “Su Linux non girano tanti programmi!”. Magari lo pensi anche tu! Se sei sviluppatore web ti invito a riconsiderare queste credenze!

Se lo sviluppo dei tuoi siti e delle tue applicazioni non si basa su tecnologie Microsoft Linux può essere un tuo grande alleato.

In questo articolo voglio approfondire alcuni concetti fondamentali e condividere alcuni criteri su come orientarsi tra le distribuzioni Linux, quali programmi installare per testare le applicazioni, scrivere codice, elaborare elementi grafici come immagini ed icone.

Se conosci Linux a fondo puoi leggere l’articolo e darmi un feedback, se ti va, in caso contrario mi piacerebbe che lo trovassi utile per muovere i tuoi primi passi.

Cos’è Linux e cosa si intende per distribuzione

Linux, anzitutto, non è un sistema operativo (SO), bensì è un kernel, ovvero un componente software che mette il SO in comunicazione con i componenti fisici della macchina. Puoi approfondire il concetto di kernel su Wikipedia. Anche Windows e Mac hanno, ciascuno, un proprio kernel che, però, non può essere utilizzato da altri programmatori in quanto è integrato in un SO chiuso, non ispezionabile e da cui non è possibile estrarre nulla.
Linux, al contrario, è open source e può essere utilizzato da chiunque volesse scrivere un nuovo SO.

Per distribuzione, o distro, intendiamo un SO basato sul kernel Linux. Ogni distribuzione è, a sua volta, open source e può essere indipendente o derivata. Indipendente significa che è stata creata da zero prendendo solo il kernel Linux (che può anche essere modificato e adattato per la distro). Una derivata, invece, viene realizzata partendo da un’altra distribuzione e i successivi sviluppi dipendono anche da quelli della distro su cui è basata.

Quali vantaggi offre una distro Linux a uno sviluppatore web

Il computer è più efficiente

Un SO basato su Linux è molto più leggero e performante di Windows. Senza mostrarti particolari dati tecnici ti invito a provare: noterai come la ventola del computer parta con minore frequenza e con che rapidità accendi e spegni il pc . Se poi consulti il gestore dei processi ti accorgerai del minore utilizzo di RAM e processore.

Considerato che per sviluppare applicazioni web si fanno girare programmi che emulano il server, avere una RAM più libera e un processore meno in affanno fa decisamente comodo.

Puoi usare anche un computer più vecchio

Linux, possiamo dirlo, resuscita letteralmente un pc. Se hai un computer in cui, per esempio, girava Windows 7 o 8, puoi fare a meno di buttarlo e installare una distribuzione Linux: potresti sorprenderti di come funzioni meglio rispetto a quando lo usavi col suo Windows preinstallato. Il consiglio è di usare un pc con massimo 10 anni.

Gli aggiornamenti sono rapidi e indolori e decidi tu quando farli

Quante volte con Windows hai sperimentato rallentamenti dovuti agli aggiornamenti che partono in automatico e che impegnano molto la RAM, la CPU e il disco fisso?

Con Linux non hai questo problema: decidi tu quando fare gli aggiornamenti, richiedono al massimo 10 minuti (spesso anche molto meno) e solo quando un nuovo kernel viene installato è necessario un riavvio che, però, richiede tempi soliti e rapidi.

Va detto che Ubuntu fa eccezione in questo senso: il suo sistema di gestione programmi, Snap, cerca aggiornamenti 4 volte al giorno e li applica immediatamente quando li trova: puoi usare, tuttavia, una derivata Ubuntu che, di default, disabilita Snap: un esempio su tutte le distro è Linux Mint.

Hai a disposizione diversi programmi gratuiti e di ottimo livello

Molti pensano che Linux abbia pochi programmi e di scarse prestazioni: nulla di più sbagliato! Forse questo era vero in passato ma non oggi.

In Linux puoi trovare programmi di altissimo livello per fare di tutto, a meno di avere particolari esigenze professionali che ti impongono di aprire e salvare file in formati proprietari.

Inoltre molti programmi di uso comune sono sviluppati anche per Linux, tra questi troviamo Chrome, Zoom, Telegram, Dropbox e tanti altri, persino il browser Edge di Microsoft.

La privacy è tutelata

Lo sapevi che nelle condizioni di utilizzo di Windows c’è scritto che il SO può leggere il contenuto dei tuoi documenti?

Con Linux non è così: la privacy è garantita in quanto una distribuzione non si sostiene economicamente tracciando dati personali per fare profilazione e, magari, rivendere i dati a terzi. Ogni progetto è tenuto in vita grazie a donazioni e sponsorizzazioni di privati e aziende.

Come scegliere la distribuzione per il proprio pc?

Esistono tantissime distribuzioni Linux, forse anche troppe. Tutta questa varietà ampia le possibilità di trovare un SO adatto alle proprie esigenze; di contro complica la scelta, soprattutto per chi non conosce il mondo del pinguino.

In rete si possono trovare tanti video e articoli sulle “migliori distribuzioni” per principianti; qui mi limiterò a darti delle indicazioni utili per lo sviluppo web.

Se sei già sviluppi con Linux puoi leggere questa parte per pura curiosità.

Scegli una distribuzione stabile, non una rolling

Esistono due tipi di distribuzioni dal punto di vista del supporto e del rilascio di aggiornamenti, ossia le stable, a rilascio fisso, oppure le rolling, a rilascio continuo. Non mi soffermo sulla differenza tra questi due tipi, ti rimando, a questo scopo, all’ottimo articolo Distribuzioni Linux: Rolling vs Fixed release tratto dal blog alterativalinux.it .

Mi limito a dirti che le distribuzioni stabili sono le migliori da installare su un pc destinato al lavoro: quando ricevono un aggiornamento questo è stato ampiamente testato e rilasciato solo quando c’è la certezza che non corrompa il SO. Al contrario una rolling riceve molti più aggiornamenti ma sono meno testati, il che comporta maggiori rischi mandare in crash il computer dopo la loro applicazione.

Scegli una derivata di Debian o di Ubuntu se sei alle prime armi

Anzitutto, perché una derivata? Una derivata, rispetto alla distribuzione su cui si basa, aggiunge funzionalità, amplia la compatibilità con gli hardware in circolazione ed è, generalmente, più semplice da usare.

Perché Debian? Lungi da me affermare che RedHat, Arch e altre indipendenti siano meno valide, anzi…!

Debian pone una particolare attenzione a semplicità, stabilità e sicurezza. È conosciuta, all’interno del mondo Linux, come “la roccia”. Una derivata Debian è la scelta migliore per chi muove i primi passi con un sistema Linux.

Ubuntu è una derivata Debian ed è la più famosa distribuzione Linux. È stata la prima che ha semplificato notevolmente l’utilizzo di un sistema Linux conferendo, inoltre, maggiore compatibilità con molti tipi di hardware.

Tra le derivate da Ubuntu (quindi indirettamente da Debian) io opterei per:

  • Linux Mint
  • Zorin OS

Mentre tra le derivate direttamente da Debian:

  • LMDE (Linux Mint Debian Edition)
  • MX Linux

Sicuramente ci saranno altre distribuzioni ugualmente valide ma io ho provato queste e so che funzionano.

Scegli un ambiente grafico leggero, specie se hai un computer datato

Una distribuzione Linux spesso è rilasciata in diverse versioni con differenti ambienti grafici. Per comprendere meglio il concetto ti rimando al wiki di Ubuntu AmbientiDesktop.

Io utilizzo sempre un ambiente leggero come XFCE che rappresenta un ottimo compromesso tra leggerezza e possibilità di personalizzazione grafica. Se hai un computer potente puoi usare una distro con qualsiasi ambiente desktop ma se il tuo pc ha qualche anno, oppure è poco potente, ti consiglierei un ambiente leggero in modo da dirottare maggiore potenza del pc sui programmi.

Queste sono le mie personali indicazioni; se vuoi capire meglio come orientarti nella scelta puoi leggere l’articolo Come orientarsi tra le distribuzioni Linux sul blog alternativalinux.it.

Quali programmi utilizzare?

Abbiamo parlato ampiamente del SO, ora vediamo i programmi utili allo sviluppo di un sito web.

Per testare le tue applicazioni in PHP e MySql/MariaDB puoi scegliere tra:

  • XAMPP
  • Local (per WordPress)
  • Docker. Questo è più facile da utilizzare su Linux rispetto a Windows o Mac

Se sviluppi in node.js, React o altri framework le librerie e gli applicativi che ti servono sono disponibili per Linux, anzi, questi si installano più facilmente.

Per scrivere codice:

  • Visual Studio Code
  • VSCodium, fork di Visual Studio Code, praticamente identico
  • Sublime Text
  • Notepadqq (simile a Notepad ++)

Per editare foto e icone

  • Gimp
  • Krita
  • Inkscape (disegno grafico ed icone)

Per l’elaborazione delle foto gli strumenti di intelligenza artificiale, utilizzabili tramite il browser, offrono un grande aiuto, soprattutto per scontornare e rimuovere dall’immagine elementi non desiderati.

Se devi creare un diagramma di flusso, per spiegare, ad esempio, al cliente il funzionamento della tua applicazione, puoi utilizzare LibreOffice Draw, che fa parte della suite LibreOffice, preinstallata su quasi tutte le distribuzioni Linux.

Per creare diversi progetti grafici un ottimo tool è Canva, utilizzabile tramite browser.

Ti stai chiedendo come si installa un programma in Linux? È facilissimo. Nelle distribuzioni che ho consigliato hai a disposizione un gestore applicazioni, simile al Play Store di Android, dove puoi trovare tantissimi programmi installabili con un click.

Il gestore applicazioni di Linux Mint 21.1
Il gestore applicazioni di Linux Mint 21.1

Per alcuni programmi sono disponibili i pacchetti di installazione dal sito dello sviluppatore; in questo caso potresti dover gestire le dipendenze ma non è niente di estremamente complicato.

A volte, sul sito del produttore, viene fornita la spiegazione su come installare nella tua distribuzione il programma.

Per sapere di più su come si installano programmi in Linux puoi vedere il video Come installare programmi in Linux .

Cosa fare se non riesci a risolvere un problema col tuo computer?

Se riscontri qualche problema con un computer dotato di un sistema Linux puoi:

  • Scrivere al forum di supporto della tua distribuzione;
  • Ci sono gruppi Facebook su Linux e sulle specifiche distribuzioni, puoi iscriverti e pubblicare un post con un’immagine e una spiegazione esauriente;
  • Puoi rivolgerti a un LUG, Linux User Group (al momento che scrivo il sito dei LUG ha un certificato SSL invalido, autorizza il tuo browser alla navigazione se dovesse comparirti un messaggio).

Dai a Linux una possibilità

Ti ho messo curiosità? Hai dubbi e perplessità? Lo capisco benissimo. Io, comunque, ti invito a dare a Linux una possibilità: potresti sorprenderti di come possa aiutarti nel tuo lavoro quotidiano di sviluppo web.

Linux, oggi, è sempre più user friendly grazie alle distribuzioni che ho citato in questo articolo (ma anche ad altre), rivolte a principianti e, in generale, a chi deve usare il pc per lavoro e non ha voglia di imbattersi in problemi che tolgono energia e tempo da riservare ai propri task.

Ti lascio con un simpatico video divulgativo del canale YouTube alternativalinux, Linux è Rock, dove Dario spiega 10 importanti ragioni per cui preferire una distro Linux rispetto a sistemi commerciali, intervallando i concetti con delle cover di brani rock leggendari.

E tu usi Linux per lavoro? Se si che distribuzioni usi? Se hai dubbi a provarlo cosa ti frena? Fammelo sapere nei commenti.

Linux è Rock – alternativalinux