← Tutti i video

Il Potere della Semplicità

Guarda su YouTube → 29:11 31 luglio 2026

Descrizione

Oggi parliamo di complessità e di semplicità nel contesto del software, analizzando due esempi pratici di soluzioni semplici e significative: sqlite, nel contesto dei database, e tinyCC, nel contesto dei compilatori C. Le istituzioni che insegnano informatica devono capire l'utilità che questi progetti hanni nel contesto della formazione informatica. Progetti discussi: - https://sqlite.org/ - https://bellard.org/tcc/ Il progetto Esadecimale nasce per offrire il migliore spazio di didattica informatica presente in tutto il territorio Italiano: - https://esadecimale.it - https://learn.esadecimale.it - https://cyber.esadecimale.it

Commenti 27

I commenti vengono da YouTube e sono aggiornati periodicamente.

  1. @ValentinoFilipetto 31 luglio 2026 8
    Bel video. L'esempio di complessita' che trovo piu' irritante in assoluto e' Kubernetes, che viene usato da aziende con traffico e scala minuscola, manco fossero Uber.
  2. @kristianfiliposki 1 agosto 2026
    Bravissimo, concetti super attuali e esplicati bene!
  3. @simonecolarelli178 1 agosto 2026 1
    Ciao Leo, riflettendoci un attimo tra i motivi per cui si tende a scegliere la complessità io ce ne aggiungerei un'altro paio e non solo per quanto riguarda il mondo dell'informatica: mi sembra di capire che a volte tendiamo ad utilizzare le soluzioni più complesse con la convinzione che così io abbia a disposizione un'arma più completa che mi faccia sentire pronto a risolvere qualsiasi problema (del tipo che quella soluzione è progettata per risolvere). Cioè spendiamo più tempo e soldi per avere a disposizione qualcosa che ci "protegga" o che ci sia utile per il maggior numero possibile di casi (nelle realtà aziendali questa è quasi sempre una scelta dall'alto che personale). Quando poi questa soluzione (tecnologia) la imparo ad usare nel tempo, subentra anche una dinamica di conservazione di energia dell'apprendimento per cui che senso ha imparare (addirittura tornando indietro?) un'altra soluzione? E di per sé non mi sembra così assurdo come ragionamento. Ragionamento però che è meno giustificato quanto più è la consapevolezza di ciò di cui si ha realisticamente bisogno. Ed è qui che il tuo discorso, che non è solo quello di questo video ma di tutto il progetto che porti avanti, preme: uno sviluppatore, che deve conoscere quello che tocca e che crea per considerarsi veramente un professionista, non può non essere consapevole di cosa c'è realmente bisogno per risolvere un problema. Non può basare il proprio lavoro sulla conoscenza di uno strumento, ma del problema/necessità che quello strumento dovrebbe risolvere/soddisfare. (E là dove c'è un problema di conoscenza e consapevolezza, c'è un problema di didattica) Complimenti ancora per la voglia e la forza di portare l'umanità in una nicchia, tra l'altro, che sembra essere tra le più distanti dall'umano.
  4. @DaZa-t3r 31 luglio 2026
    Vero la complessità attrae e secondo me fare soluzioni facili da utilizzare e comunque complesso
  5. @Gabriele-l1z3c 3 agosto 2026
    KISS
  6. @antoniocarmellino1850 31 luglio 2026
    React è una libreria, comunque sono d'accordo su quello che dici,tanti bug e disservizi nascono proprio da soluzioni troppo pesante e che non servono un esempio è aws poi ti fine mese non hai capito cosa stavi facendo e ti ritrovi a pagare tanto più di quello che pensavi di guadagnare, togliendo il fattore economico che non c'entra nulla era solo un esempio complimenti ,non troppi giri di parole e ottima filosia
  7. @NitrusOxygen 31 luglio 2026 4
    UCAS = Ufficio complicazioni affari semplici.
  8. @Adpalu 31 luglio 2026 1
    so che è una domanda fuori luogo, ma percaso la tua config di emacs e online e davvero bella
  9. @mxpi314 31 luglio 2026 1
    noi in uni abbiamo fatto postgres haha
  10. @alarmfox 31 luglio 2026
    in caso universitario dubito che molti professori conoscano sqlite. Per scrivere i paper è più bello dire "ho usato mysql"
  11. @Jyukat 15 settembre 2026
    Ai programmatori piace complicarsi la vita.
  12. @TheMartinAudio 2 agosto 2026
    io penso che spesso si scelgano non tanto le soluzioni più complesse, ma quelle più di moda e più chiacchierate. Quindi potrebbe non essere un fattore di 'attrazione' verso la complessità, piuttosto verso tecnologie che diventano mainstream.
  13. @brunotrombi7576 3 agosto 2026
    ti lancio una proposta, fare realizzare all'AI la stessa web app con stack differenti? per valutare in concreto, dato che stack piu semplici richiedono meno manutenzione, e si modificano piu facilmente. Ci sono vari stack tecnologici ed architetture possibili, purtroppo l'addestramento dei modelli non é uniforme tra gli stack, percui alcuni sono svantaggiati, ma dovrebbero comunque riflettere la complessitá implementativa, e forse anche i token ed il costo complessivo realizzazione. con angular react poi potresti avere componenti stateful o stateless, e dover fare anche scelte sulla gestione dello stato, il backend, ed il db... Per prova ho fatto una tabella dinamica con htmx paginazione, ordinamento e filtri, tipo datatable con serverside processing, tra gli aretefatti non funzionava perche non eseguiva correttamente il php, ma su un server web era perfetta, ho implementato lo stesso schema anche con angular e react, ma non era cosi semplice.
  14. @antoniopennino7696 1 agosto 2026
    Turbo C, quanti ricordi. Quantomeno presumo che il tcc in copertina indichi quello, sto ancora guardando il video.
    2 risposte
    1. @DiTBho 8 agosto 2026
      Tini C Compiler != Turbo C Compiler
    2. @antoniopennino7696 8 agosto 2026
      ​@DiTBhoeh sì, questo l' ho capito dopo. Grazie per la tua precisazione.
  15. @antoniopennino7696 1 agosto 2026
    Non concordo con iniziare da sqllite, e' utile conoscerlo ma e' opportuno iniziare con quelli "veri" tipo Postgresql per non prendere subito cattive abitudini. Parere del tutto personale, ovviamente.
  16. @jojotheineff6325 31 luglio 2026 2
    "Tendiamo a utilizzare complessita anche dove non serve" <joke>Is that a systemd video?</joke>
  17. @samuele5931 31 luglio 2026
    Beh, se ci pensi tanti malintesi tra gli utenti e GNOME sono dati dall'incomprensione di questo concetto. Ormai lavoro da abbastanza anni da apprezzare anche io la semplicità. Dopo un po' ne hai piene le balle di complessità inutile e inizi a chiedere: ma serve davvero?
  18. @DiTBho 8 agosto 2026
    Mi sono laureato al Politecnico di Milano in ing Elettronica, pero' ho fatto un certo numero di esami di ing Informatica, tra cui linguaggi e traduttori e ing del Software. Ing del Software mi e' stato utilissimo in Avionica (mi occupo di testing e sviluppo firmware di centraline e sensori per aeromobili) per masticare meglio la DO178B e gestire il ciclo di vita dei vari moduli. Per quanto riguarda Linguaggi e Traduttori invece, purtroppo il corso del 2008 e' stato davvero scarso a livello esempi e laboratorio, quasi solo "fuffa" teorica. Dico "fuffa" perche' il 90% delle cose che ho studiato NON mi sono servite, non le ho mai usate, non mi hanno dato nulla (eccetto, forse, insegnarmi a "studiare cose complicate", quindi utili per il metodo) e le ho dimenticate nel giro di 5 mesi dall'esame. Per scrivere il mio compilatore simil-C/89 (C/80, ma fortemente tipizzato e con le monadi) mi sono fatto tutta una "vasca di sperimentazioni personali", 5 reimplementazioni nel corso di 8 anni, per arrivare a qualcosa di pseudo-definitivo. Per esempio l'ultimo tokenizer che ho scritto in forma di libreria riutilizzabile (usato non solo per il compilatore, ma anche per una shell, un interprete MarkDown, ed altri piccoli tool che ho scritto) e' stato riscritto piu' e piu' volte da zero per ridurre al minimo tutti i problemi, spesso di manutenzione del codice, o difficolta' ad esapandere funzionalita', o semplicemente difficolta' nel ridurre la complexity. Per ogni riscrittura, l'obbiettivo primario e' riscrivere riducendo la complexity, altrimenti rischio di non stargli piu' dietro perche' le mie risorse sono limitate. Gran parte dei lavori iniziali sono basati su "SmallC" (per 8080 e 68k), rilasciato e discusso sulla rivista Dr. Dobb's Journal, prima che l'editoria internet 2.0 la uccidesse.
    1 risposta
    1. @DiTBho 8 agosto 2026
      Corollario, riscrivere e distillare con minore complexity e' una attivita' piu' complessa.
  19. @giovannisardisco4541 31 luglio 2026
    Leo, ma quindi per siti semplici, consigli di partire con html, css e js, ma dopo? Secondo me c'è un salto molto ampio e fin troppe alternative per avere un minimo di struttura, nella parte FE. Tu la tua piattaforma l'hai scritta tutta custom in html css e js?
    5 risposte
    1. @dangg44 31 luglio 2026
      Si è meglio partire dalla base, da quello che c'è sotto il cofano. Poi puoi passare ad Angular ecc. Così è tutto più chiaro per te che programmi
    2. @giovannisardisco4541 31 luglio 2026 1
      ​​@dangg44 oddio, Angular non lo consiglierei come secondo step. Per adesso mi sto convincendo che il passo successivo sia React, ma che è di una pesantezza imbarazzante. Cioè si vede ad occhio il lavoro incredibile che fa dietro le quinte. Serve davvero subito al secondo passo tutta questa complessità? Mi sa che rispolvero JQuery, che è uscita la nuova versione 😅
    3. @dangg44 31 luglio 2026
      ​@giovannisardisco4541piuttosto ti direi di passare a Typescript, magari anche fin da subito bypassando JavaScript (o quanto meno, capisci giusto un attimo cos'è JavaScript e poi passa direttamente a Typescript). Ma ad ogni modo prima di passare ad interi framework di sviluppo, un po' di conoscenza base è meglio farsela. Jquery non è tecnicamente un framework è più una libreria per JavaScript.
    4. @jackzugna5830 31 luglio 2026
      htmx, alpine js per poi passare a svelte. Questi sono gli strumenti più semplici in ambito web e ci puoi fare 99% dei siti e web app (frontend), lato backend flask (python) o express js.
    5. @gvnlnz 31 luglio 2026
      @giovannisardisco4541se posso anche solo dare un consiglio da uno che ha bazzicato nel FE per anni e solo da un’anno e qualcosa si è spostato a BE e AI: lasciate perdere il FE ragazzi, è giusto avere nozioni di base come HTML, CSS, JS e React. Ma è veramente la prima cosa che verrà completamente sostituta dall’AI. Claude sonnet 5 con un minimo di prompt ben strutturato tira fuori soluzioni PERFETTE che io anni fa perdevo settimane a fare in React. Quello che Claude non può sostituire è un informatico competente. E perdere troppo tempo (prezioso) sul FE, almeno per me, è stato un errore che non rifarei. Anche perché tutto quello che c’è dietro il low level programming, BE engineering e ora l’AI è molto ma molto più divertente.