All Episodes

November 5, 2023 18 mins

È facile dire che le cose vano fatte in modo semplice, ma cosa vuol dire esattamente? Io non ho la risposta ma almeno posso provare a pormi la domanda.

Attrezzatura utilizzata:
Shure Microfono Podcast USB MV7

Codice sconto agli eventi del GrUSP: community_PIC
https://www.grusp.org/

Fonti:
https://2023.containerday.it


Entra a far parte della community

Canale Telegram
Gruppo Telegram

Sostieni il progetto

Sostieni tramite Satispay
Sostieni tramite Revolut
Sostieni tramite PayPal (applica commissioni)
Sostieni utilizzando i link affiliati di Pensieri in codice: Amazon, Todoist, Readwise Reader, Satispay

Partner

GrUSP (Codice sconto per tutti gli eventi: community_PIC)
Schrödinger Hat

Crediti

Sound design - Alex Raccuglia
Voce intro - Maria Chiara Virgili
Voce intro - Spad
Musiche - Kubbi - Up In My Jam, Light-foot - Moldy Lotion, Creativity, Old time memories
Suoni - Zapsplat.com
Cover e trascrizione - Francesco Zubani

Mark as Played
Transcript

Episode Transcript

Available transcripts are automatically generated. Complete accuracy is not guaranteed.
(00:00):
Ormai lo sai bene, è inutile che mi ripeta in continuazione, conferenze e incontri sono

(00:06):
un momento da me particolarmente apprezzato per il potere che hanno di stimolare la riflessione
e la riflessione è anche il motivo per cui esiste questo podcast e da poco ho partecipato
al Container Day, conferenza italiana organizzata dal GRUSP di cui Pensieri in Codice è partner
e quelle che stai per ascoltare sono le idee sulle quali questo evento mi ha dato da pensare.

(00:31):
Sigla.
Benvenuti su Pensieri in Codice, il podcast dove si ragiona da informatici, con Valerio
Galano.
Dal momento che il Container Day è una conferenza totalmente incentrata sulla tecnologia di

(00:52):
containerizzazione mi sembra doveroso introdurre almeno a grandi linee il concetto di container,
così per fugare almeno i dubbi.
In realtà di questo argomento abbiamo già parlato nell'ormai lontano luglio 2020 nell'episodio
su Docker ma un piccolo ripasso non fa mai male.
Per container in ambito informatico ed in particolare in ambito DevOps si intende un particolare

(01:17):
meccanismo di virtualizzazione del sistema operativo nel quale eseguire un software.
Semplificando al massimo diciamo che in generale un software per funzionare ha bisogno di un
ambiente con determinate caratteristiche che spaziano dalla tipologia di sistema operativo,
alla potenza di calcolo, alla quantità di memoria, alla possibilità di eseguire determinate

(01:41):
operazioni, alla presenza di specifici moduli e librerie da sfruttare e via discorrendo.
Ora, questo ambiente può essere il normale sistema operativo di un computer o di un server
configurato a dovere oppure un suo sotto insieme nel quale sono presenti solo le caratteristiche
minime necessarie e che genericamente prende il nome di container o sistema operativo virtuale.

(02:05):
Oltre a fornire lo spazio di lavoro più efficiente possibile, il container isola anche il proprio
contenuto dall'esterno assicurando in questo modo che i software al proprio interno non
possano sconfinare nel sistema operativo della macchina ospite se non espressamente
autorizzati.
In una condizione del genere è chiaro che se da un lato il container deve includere

(02:26):
tutto ciò che serve al proprio software per funzionare correttamente, tuttavia dall'altro
può anche ignorare o mancare di tutto il resto.
L'utilizzo dei container ha una miriade di vantaggi che non possiamo sicuramente sviscerare
oggi, ma riassumendo all'osso, permette a chi deve occuparsi del software all'interno

(02:47):
di preoccuparsi di un numero limitato di fattori e a chi invece deve occuparsi di ospitare
il container di maneggiare una scatola nera che può avviare, duplicare, trasferire e
in generale gestire con molta più semplicità.
Al Container Day vengono affrontati vari aspetti della containerizzazione del software, aspetti

(03:13):
sistemistici per la corretta gestione dei container e aspetti programmatici per la
corretta implementazione degli stessi, nonché aspetti di DevOps, non ce lo dimentichiamo
altra attività di cui abbiamo parlato in passato, episodio 22, e che rappresenta un
punto di fusione tra questi due mondi.
Ora, non so se tu che mi ascolti hai partecipato al Container Day di quest'anno, in caso contrario

(03:38):
peccato perché è stato davvero interessante e ti invito a recuperarlo appena diverrà
disponibile sul canale YouTube del Grusp.
Purtroppo io non ho potuto partecipare in presenza e questo mi dispiace sempre un po'
perché il confronto diretto con i partecipanti è più stimolante secondo me, tuttavia ho
guardato da remoto tutti i talk e ne ho trovati vari veramente interessanti.

(04:03):
Sicuramente bellissimo è stato l'escursus storico iniziale che mi ha fatto scoprire
che il concetto di container risale addirittura a metà del secolo scorso, poi interessanti
sono state anche le varie esposizioni di strumenti e metodologie per gestire il passaggio al
modello containerizzato, le configurazioni dei container, il monitoraggio dei sistemi,

(04:26):
eccetera.
Ma se dovessi individuare una parola comune, un concetto cardine, un filo conduttore dell'intera
giornata, oltre ovviamente a quello di container, direi proprio che potrebbe essere la semplificazione.
Raramente ho percepito una tale fame di semplificazione su tutti i fronti.

(04:50):
In effetti nel mondo container, forse ancora di più che in altre branchie dell'informatica,
c'è stata negli ultimi anni un'esplosione di complessità, o perlomeno essa è particolarmente
sentita in questo ambito.
L'adozione in tempi recenti da parte di tante realtà è stata fortissima e questo ha creato

(05:11):
ovviamente molto caos legato all'espansione improvvisa.
Diversi approcci, diverse tecnologie e diverse professionalità, tutte mescolate insieme
a produrre nuovi risultati in modo spesso eterogeneo e un po' confusionario.
Capiamoci, si tratta di un processo abbastanza naturale, soprattutto nel campo dell'informatica

(05:33):
moderna, tuttavia, forse per una maggiore consapevolezza ed esperienza delle persone
coinvolte o forse per il fatto che ultimamente anche la società si è evoluta con leggi
come il GDPR o il CRA, la spinta a normalizzare e standardizzare la situazione mi è sembrata
particolarmente forte.

(05:54):
In effetti, il concetto di container è di fatto uno strato aggiuntivo che si posiziona
a metà strada tra i concetti classici di sviluppo, software e amministrazione di sistemi
e, come tutti i layer intermedi, da una parte semplifica la vita ai layer sovrastanti e
sottostanti, ma dall'altra rappresenta esso stesso un fattore di complessità.

(06:17):
La nascita di una figura professionale come il DevOps, a metà tra sviluppatore e sistemista,
è un chiaro esempio di questa complessità aggiuntiva, ma anche il fatto che i container
stessi abbiano delle proprie dipendenze e configurazioni, debbano rispettare requisiti
specifici funzionali e di sicurezza e richiedano un forte uso di automazione.

(06:40):
Tutti questi sono fattori che contribuiscono per forza di cose a rendere i sistemi più
complessi da gestire.
Insomma, se fino a qualche anno fa la prassi era di doversi occupare di tenere in piedi
i server e produrre gli artefatti dei software, ora ci sono anche da sviluppare e mantenere
le pipeline, i container, i pod e così via.

(07:02):
Dal momento che i container portano con sé una quantità enorme di benefici, ovviamente
nessuno si sognerebbe mai di pensare che la soluzione a questo incremento di complessità
possa essere evitare di utilizzarli.
La spinta che questa nuova tecnologia ha portato nel campo dello sviluppo software è assolutamente

(07:24):
indiscutibile.
Come invece è giusto che sia, gli esperti del settore hanno elaborato e stanno ancora
elaborando soluzioni per semplificare tanti aspetti della questione e questa tendenza
è venuta fuori forte e chiara dal container day di quest'anno.
Si è parlato di sistemi di sicurezza, di monitoraggio avanzato, di meccanismi per assicurare

(07:47):
la consistenza delle configurazioni, di metodologie per semplificare la migrazione da contesti
non containerizzati, ma l'idea di fondo, quella di cui non si è parlato esplicitamente
ma che si poteva facilmente leggere fra le righe, quella che tutto sommato pervade da
sempre il mondo dell'informatica, è stata che la semplificazione in fin dei conti non

(08:14):
è un fattore che riguarda le macchine o i software, ma le persone.
Si possono aggiungere e immaginare i più disparati servizi di controllo e correzione,
i più complessi framework e standard di implementazione, ma alla fine i sistemi sono sempre sistemi
e sono invece le persone che ci lavorano che determinano semplicità o complessità.

(08:41):
Man mano che ho accumulato esperienza come sviluppatore e progettista di software ho
iniziato sempre più a preferire le soluzioni semplici a quelle complesse.
Quella che ho appena detto è una bella frase, lo so, di effetto, ma se ci pensiamo un attimo
chi non preferisce le soluzioni semplici?

(09:03):
Il vero problema nel mondo del software è definire quali siano effettivamente le soluzioni
semplici.
Una soluzione semplice potrebbe essere quella composta da poche righe di codice, oppure
quella che incarna al meglio gli standard di codifica attuali, oppure ancora quella

(09:23):
più generica possibile, che funziona bene dovunque serva o quella che rispetti al meglio
le specifiche.
La soluzione più semplice potrebbe essere quella più facile da mettere in campo, quella
più facile da manutenere, quella più facile da sostituire, quella più facile da comprendere
o tutte queste cose messe insieme.

(09:45):
La verità è che la semplicità non è misurabile come lo sono invece la lunghezza, il peso,
il tempo di elaborazione.
Non puoi assegnare un numero o un valore alla semplicità, o meglio, puoi farlo ma ti ritrovi
nella stessa condizione di prima, cioè di dover definire come assegnare tale valore,
quindi sei da capo.

(10:05):
E questo perché la semplicità non è un fattore oggettivo, è un fattore umano e come
moltissimi altri fattori umani è soggettivo.
La semplicità non è qualcosa che importa alle macchine, in nessun caso.
Le macchine eseguono le istruzioni sia che la soluzione che stanno andando a mettere

(10:28):
in campo sia semplice, sia che sia complessa.
Forse una soluzione complessa richiederà più tempo, ma le macchine non hanno il nostro
stesso concetto di tempo.
Lo sanno valutare e calcolare, ma non ne percepiscono la finitezza come invece facciamo
noi.
La differenza tra semplice e complesso in realtà importa solo alle persone.

(10:50):
Una soluzione più semplice, qualsiasi cosa questo voglia dire, porta con sé dei vantaggi
per le persone che devono lavorarci, per i loro scopi, per le loro percezioni, per i loro
stati d'animo.
Ed è proprio questo il punto, la semplicità è per le persone e dipende dalle persone

(11:10):
e anche dal contesto.
Prima di tutto è necessario capire cosa le persone in gioco considerano più semplice
e poi è possibile estrarre una serie di regole che aiutino a definire e valutare la semplicità
relativa al contesto considerato.
Spesso accade che molte di queste regole siano comuni a più contesti ed è grazie a questo

(11:33):
fatto che possono esistere gli standard, i framework, le convenzioni e tutti gli strumenti
che solitamente usiamo per direzionare lo sviluppo.
Ma ogni contesto avrà sempre una qualche peculiarità che lo differenzia dagli altri
e tenere conto di questo è fondamentale per formulare la propria, corretta definizione

(11:55):
di semplicità.
Una volta capito che cosa vuol dire per noi semplicità e una volta stabilite le nostre
regole in merito, qualunque esse siano, dobbiamo però anche fare in modo che queste vengano
applicate e rispettate.
Abbiamo già detto che alle macchine in generale questo discorso non interessa, ma è sempre

(12:18):
possibile implementare meccanismi automatici che aiutino a pilotare le cose verso la semplicità
o a valutare i risultati.
Vari talk del container day erano incentrati proprio su questo tipo di attività, quelli
sull'eliminare il configuration drift o sull'indirizzare lo sviluppo degli operators, ad esempio.

(12:38):
In fin dei conti però, a mio parere, il segreto per ottenere le soluzioni semplici e soprattutto
mantenerle tali nel corso della vita di un progetto è fare leva sulla responsabilità.
Le soluzioni, l'abbiamo detto, sono realizzate dalle persone e per come la vedo io devono

(12:58):
anche avere sempre dei responsabili.
Attenzione, quando parlo di responsabilità non intendo dire che se si verifica un problema
in quella porzione di codice o a causa di quella configurazione, allora la persona
che l'ha programmata deve essere punita in qualche modo.
Ovviamente questo non è utile.
Quello che intendo, invece, è che quando si produce una soluzione deve esserci sempre

(13:24):
qualcuno che non solo lo faccia seguendo le direttive prefissate, ma continui anche a
migliorare e mantenere quella caratteristica nel corso del tempo.
Il responsabile di qualcosa può essere il suo stesso autore o qualcun altro, non importa.
Ciò che importa è che a quel codice, a quella pipeline, a quella libreria, a quel servizio,

(13:47):
a quel server o a qualsiasi altro elemento qualcuno sia designato a dedicare del tempo,
il giusto tempo.
Questa persona deve avere la responsabilità e le risorse per seguire e curare la propria
porzione di sistema, intervenendo dove e quando necessario ed interagendo con i responsabili

(14:08):
dei sistemi collegati.
E, ripeto, prevedere del tempo per queste attività è indispensabile.
Solo in questo modo sarà possibile avere soluzioni veramente semplici e funzionali
e l'insieme di elementi semplici e funzionali darà vita a sistemi migliori, innescando
un circolo virtuoso che farà bene a tutti, dagli sviluppatori al cliente finale.

(14:34):
Bene, oggi un discorso un po' più leggero.
So che stai aspettando con ansia il secondo episodio della serie di Ada Lovelace e ti
assicuro che arriverà a breve, mi serve solo un po' di tempo per registrare perché
la lunghezza è notevole rispetto al solito.
Come invece avrai notato quello di oggi era un episodio di opinioni e riflessioni mie

(14:54):
personali, quindi prendilo come tale.
Io non ho la risposta a cosa sia la semplicità ma spero di aver almeno posto la domanda nel
modo corretto.
Se tu invece la pensi diversamente e vuoi aggiungere qualcosa al discorso mi farebbe
molto piacere saperlo e ti ricordo che sul sito pensieriincodice.it trovi il link al

(15:14):
gruppo Telegram dove una community di persone fantastiche discute ogni giorno anche degli
argomenti del podcast.
Ancora una volta poi ringrazio Edoardo Secco e Carlo Thomas per la loro donazione mensile
che va avanti ormai da più di un anno.
Questo perché, ti ricordo, Pensieri in Codice è un podcast indipendente che può essere

(15:35):
ascoltato liberamente presso tutte le piattaforme di podcast e non ha pubblicità o sponsor ma
si regge unicamente sul mio tempo libero e sulle donazioni della community.
Se lo ascolti regolarmente quindi chiediti quanto vale per te il tempo che dedico a questo
progetto che ti assicuro non è poco e se ritieni ne valga la pena ricorda che sempre

(15:59):
sul sito o nella descrizione dell'episodio trovi i link per contribuire anche tu al sostentamento
del progetto.
Nessuna donazione ovviamente è troppo piccola e ricorda che poi adesso abbiamo anche i gadget.
Se invece preferisci aiutare senza spendere, condividere è sempre un buon modo, più persone
raggiungiamo e più il progetto cresce e quindi migliora.

(16:20):
Poi, sempre in descrizione trovi anche il codice sconto del 10% per le conferenze del
Grusp che a breve ci sarà il Laravel Day e l'Angular Day, il link al sito del Container
Day di cui ti ho appena parlato e altre informazioni interessanti.
Infine, se vuoi contattarmi puoi scrivermi a valerio-pensierincodice.it con due i mi

(16:45):
raccomando e mi trovi ovviamente su Telegram nel gruppo del podcast.
Ah, e poi un'altra cosa importante, per tutto il mese di novembre Proton offre dei super
sconti fino al 66% su tutti i suoi prodotti.
Proton fornisce servizi avanzati di email, archiviazione e condivisione file, gestione

(17:07):
delle password, VPN, che ultimamente si parla tanto di VPN, anche un po' a sproposito poi
ne parliamo, tutti criptografati e rispettosi della privacy e della sicurezza degli utenti.
Io li utilizzo quotidianamente e ti assicuro che i vari software funzionano benissimo e
sono molto comodi, i prezzi non sono bassissimi, lo capisco, ma queste offerte sono davvero

(17:30):
allettanti e possono bloccare il prezzo anche per tutto il prossimo anno.
Soprattutto il piano Family, secondo me, è interessante per chi vuole proteggere fino
a 6 utenti e condividere password e spazio di archiviazione fino a 3 tera.
In descrizione trovi i link affiliati di Pensieri in Codice in modo da poter usufruire delle
offerte e supportare contemporaneamente questo progetto e basta direi che per oggi ho detto

(17:56):
proprio tutto se non che non devi assolutamente dimenticare che un informatico risolve problemi
a volte anche usando il computer.
Advertise With Us

Popular Podcasts

On Purpose with Jay Shetty

On Purpose with Jay Shetty

I’m Jay Shetty host of On Purpose the worlds #1 Mental Health podcast and I’m so grateful you found us. I started this podcast 5 years ago to invite you into conversations and workshops that are designed to help make you happier, healthier and more healed. I believe that when you (yes you) feel seen, heard and understood you’re able to deal with relationship struggles, work challenges and life’s ups and downs with more ease and grace. I interview experts, celebrities, thought leaders and athletes so that we can grow our mindset, build better habits and uncover a side of them we’ve never seen before. New episodes every Monday and Friday. Your support means the world to me and I don’t take it for granted — click the follow button and leave a review to help us spread the love with On Purpose. I can’t wait for you to listen to your first or 500th episode!

Dateline NBC

Dateline NBC

Current and classic episodes, featuring compelling true-crime mysteries, powerful documentaries and in-depth investigations. Special Summer Offer: Exclusively on Apple Podcasts, try our Dateline Premium subscription completely free for one month! With Dateline Premium, you get every episode ad-free plus exclusive bonus content.

24/7 News: The Latest

24/7 News: The Latest

The latest news in 4 minutes updated every hour, every day.

Music, radio and podcasts, all free. Listen online or download the iHeart App.

Connect

© 2025 iHeartMedia, Inc.