Perché dovrei scegliere un server Linux?

Questo è ciò che rende Linux così fantastico, moltiplica l'effetto di ogni sforzo che investi su di lui; è un ciclo di feedback positivo

—Linus Torvalds

Prima di addentrarci nelle questioni tecniche, credo che sia doveroso soffermarsi su una questione di fondo. Linux è innanzitutto un universo di condivisione. Anche solo utilizzandolo, investite i vostri sforzi in qualcosa che va oltre il lavoro che svolgete, trascende l'individualità; è qualcosa che ha molto più a che fare con la comunità che con il singolo individuo.

Lavorare con strumenti Open Source significa sfruttare il prodotto di una comunità di persone che hanno deciso di mettere in comune con voi, senza conoscervi, il risultato dei loro sforzi intellettuali, materiali e personali. Significa prima di tutto aderire a una filosofia.

LA COMMUNITY non importa quale problema incontrerete, da qualche parte ci sarà sempre qualcuno disposto ad aiutarvi senza pretendere nulla in cambio perché lui stesso avrà a sua volta beneficiato dell'aiuto disinteressato di altri. Questo aspetto viene spesso sottovalutato, ma è fondamentale; quando utilizzate Linux non siete mai soli. C'è tutto un mondo di forum, siti di supporto, wiki, articoli, e infiniti altri tipi di risorse alle quali potete attingere liberamente per superare problemi o migliorare il vostro lavoro. Non li posso citare tutti, ma una ricerca su Google parla più di qualsiasi elenco; provate per credere. Difficilmente un sistema commerciale potrà disporre di un servizio di supporto così universale (e così economico). Ci si aspetta che anche voi partecipiate, ma nessuno vi farà una colpa se non lo fate; potreste non esserne in grado o semplicemente non avere il tempo o la voglia di farlo, ci sta, fa parte del gioco.

PARTIAMO DAI COSTI comunemente si semplifica il discorso con l'assunto "Windows, a pagamento; Linux, gratuito". Si tratta ovviamente di un'enorme semplificazione, perché al minimo dovreste considerare nei costi del sistema operativo anche quelli legati all'acquisizione delle competenze necessarie per amministrarlo al meglio, e il calcolo può essere complicato. Se disponete già di conoscenze acquisite (perché le avete voi o perché le hanno i vostri dipendenti) su un sistema piuttosto che su un altro, cambiare piattaforma può comportare spese anche importanti. Non si diventa sistemisti con un corso da poche ore e qualche centinaia di euro, servono tempo e investimenti. Ovvio che se siete digiuni di entrambi i mondi, a parità di costo di formazione il software libero almeno non vi carica anche in più i costi di licenza. Se dovete mettere in piedi parecchie macchine, questo può fare la differenza.

CURVA DI APPRENDIMENTO sgomberiamo il campo da un altro luogo comune, "Windows, user friendly; Linux, difficile". Se è vero che probabilmente la curva di apprendimento dei sistemi Linux è più ripida all'inizio, va anche detto che una volta superata la soglia iniziale questa poi diventa decisamente più pianeggiante; mentre le interfacce punta e clicca non faranno di voi un sistemista se non avete idea di cosa stiate facendo, anzi; nella mia esperienza possono indurre un falso senso di fiducia che rischia di avere conseguenze disastrose. Un sistemista è un professionista che deve sapere dove mettere le mani e che deve costantemente rimanere aggiornato e formarsi sulla sua piattaforma (motivo per cui diffido generalmente dei sistemisti "cross platform", con le doverose eccezioni individuali del caso), un'interfaccia amichevole non è un surrogato dello studio costante e disciplinato. Bisogna anche aggiungere però (in aggiunta alla questione costi) che le risorse formative nel mondo Open sono quasi sempre gratuite. Inoltre, una certa difficoltà di apprendimento ha come rovescio della medaglia una certa sicurezza; se davanti a un'interfaccia amichevole si corre il rischio di improvvisare, farlo con la shell Bash e i file di configurazione di Linux è molto più difficile. Quindi siete obbligati a prepararvi prima di iniziare a fare cose, con l'ovvio risultato di una maggiore certezza di quello che poi finirete per combinare.

INTERFACCE GRAFICHE a questo punto avrete capito cosa penso delle interfacce grafiche, quindi non mi soffermo troppo sul punto; vorrei solo sottolineare che non è più vero come un tempo che in Windows siete obbligati a usare il punta e clicca mentre su Linux potete scegliere di farlo oppure di usare la linea di comando; la Power Shell ha fatto passi da gigante (anche se in ritardo, siamo onesti) e ora come ora pensare di amministrare Windows da linea di comando non è più così campato in aria. La filosofia di base comunque rimane quella, quindi se non potete fare a meno del mouse probabilmente Linux non fa per voi.

DISPONIBILITÀ DI SOFTWARE penso che fare a gara a chi dispone di più software compatibile sia un esercizio piuttosto sterile, tanto non userete mai tutti i programmi disponibili per il vostro sistema; è molto più importante capire se il sistema che scegliete ha a disposizione il software che serve a voi. Entrambi i sistemi hanno anche ottime possibilità di consentirvi uno sviluppo in autonomia del software dei vostri sogni, se ne avete le capacità. Anche qui si tratta di capire quali competenze avete a disposizione e quali risultati volete ottenere. Un punto per Linux perché generalmente i tool di sviluppo nel mondo Open sono gratis, anche se Microsoft ha incrinato pesantemente questo assunto rilasciando Visual Studio Code. Credo che la differenza principale qui stia nella facilità con cui potete installare nuovo software sui sistemi Linux, prelevandolo dai repository della vostra distribuzione con un semplice comando; ma c'è da dire che sui server in produzione non installate nuovo software tutti i giorni, quindi il vantaggio va un po' ridimensionato, ma rimane pur sempre una differenza importante.

CLUTTER SOFTWARE anche se la situazione è parecchio migliorata, quando disinstallate un programma da Windows un po' di clutter rimane spesso qua e là. Su Linux, tenere il sistema pulito è decisamente più facile se sapete come fare. Non che questo in realtà sia un vantaggio così epocale in un'epoca in cui le risorse costano talmente poco che potete pure permettervi di sprecarle, ma mi sembrava doveroso evidenziare questa cosa, che incidentalmente potrebbe a volte avere anche implicazioni di sicurezza.

SUPPORTO HARDWARE vi sfido a trovare un hardware che non sia supportato da Windows; in Linux, a parte tutte le complicazioni legate alle licenze non free dei driver, non è sempre così scontato far funzionare le cose. C'è da dire però che un conto è il vostro computer su cui giocate a Bannerlord e dove avete bisogno dei driver all'ultima moda per hardware uscito ieri l'altro, un conto è un server in cui i componenti sono relativamente più semplici e difficilmente avrete bisogno di hardware strani, per cui il vantaggio di Windows qui è davvero marginale. Tutto dipende da che hardware dovete mettere sulle macchine, ovviamente, ma a parte casi strani non dovreste avere problemi finché rimanete nel mondo dei server dove Linux non è una realtà trascurabile e quindi dove i produttori lo devono quasi forzatamente tenere in considerazione. Alla peggio si tratta solo di aspettare un po' di tempo ma è davvero un caso limite.

AFFIDABILITÀ diciamocelo, da Windows NT server in avanti di acqua sotto i ponti ne è passata parecchia, e in tutta onestà non mi sento di affermare che Windows sia oggi come oggi meno affidabile di Linux nella maggior parte dei casi; tuttavia, se Linux è quasi universalmente riconosciuto per la sua stabilità un motivo dev'esserci. Nella mia limitatissima esperienza, preferisco affidare a Linux i compiti dove la stabilità è un requisito critico.

SICUREZZA sarà perché è più diffuso, sarà perché il closed source è closed fino a un certo punto e i buchi alla fine saltano sempre fuori, ma è innegabile che la maggior parte del malware e dei virus in circolazione siano pensati per Windows. Non si può dire che questo ne faccia automaticamente un sistema insicuro, ma potete stare certi che Linux in materia di sicurezza vi darà meno grattacapi. Se vi bucano un Linux di solito è perché avete sbagliato qualcosa voi, se vi bucano Windows potrebbe essere semplicemente perché nessuno ha tappato la falla in tempo. Dopotutto una community mondiale che controlla il codice è una buona garanzia di sicurezza, quindi a mio modesto parere punto per Linux qui.

PRESTAZIONI a parità di hardware, mi sento di affermare che Linux sia più performante, se non altro perché si tratta di un sistema decisamente più spartano (specialmente se non installate l'interfaccia grafica, e voi non lo farete) quindi meno spreco di risorse e performance migliori. Suppongo che ci siano benchmark a favore dell'uno e dell'altro sistema e non si può semplificare così tanto il discorso, anche perché bisognerebbe precisare cosa si intende esattamente per velocità e performance, in quale ambito e relativamente a quale compito. Che le prestazioni comunque siano un'ossessione degli sviluppatori Linux è indiscutiblie, quindi la mia personale preferenza (visto che non mi piace sprecare risorse) è decisamente a favore di Linux.

AGGIORNAMENTI sorvolando sulle barzellette che girano riguardo gli aggiornamenti di Windows, c'è da dire che di solito funzionano abbastanza bene e che non sono questi temuti portatori di bug che tutti dicono; d'altra parte, aggiornare un sistema Linux è facile, veloce, e raramente compromette la stabilità o le prestazioni del sistema, anzi, facilmente gli aggiornamenti rendono Linux più efficiente (e poi dai, chi non si è mai commosso davanti al messaggio "dopo l'aggiornamento verranno liberati XX mega su disco"). Scherzi a parte, possiamo dire che entrambi i sistemi siano costantemente e coscienziosamente aggiornati, anche se con filosofie un po' diverse; scegliete quella che trovate più affine alla vostra visione di gestione dei sistemi.

In conclusione, anche se sarebbe facile unirsi al coro di "questo cattivo, quest'altro buono" per mietere facili consensi, preferisco affrontare la questione della scelta del sistema in maniera un po' più problematica rispetto alle chiacchiere da bar standard. Anche se non faccio mistero della mia predilizione per i sistemi Linux, devo ammettere che questa è frutto della mia personale esperienza (e anche di tempi in cui Windows faceva certo peggior figura rispetto a oggi); quindi penso che prima di tutto vada considerato il contesto in cui la scelta viene operata, le competenze pregresse, il software che dovrà girare sul server, l'hardware che si troverà a bordo macchina, e in ultima analisi il fattore costi (e qui scusate ma nessuno mi convincerà che i costi di Linux siano "addirittura maggiori" come dice qualcuno rispetto a quelli di Windows). Lasciamo le guerre di religione agli zeloti e valutiamo razionalmente ciò che abbiamo e ciò che vogliamo; la scelta in molti casi apparirà naturale; e se dovete rivolgervi a un consulente, evitate i fan sfegatati dell'una o dell'altra parte, ma rivolgetevi a qualcuno che sia in grado di consigliarvi (anche contro il suo interesse) a seguire la strada migliore per voi e non quella migliore per lui.