Seymour Papert — informatico, matematico e pedagogista — aveva una visione bellissima: programmare è un modo per imparare a pensare con chiarezza.

Programmare” significa istruire qualcun’altro (nel nostro caso una macchina, il computer) a risolvere un problema in modo automatico. Per farlo, è necessario sforzarsi di capire il problema e dare delle istruzioni chiare e precise, talmente chiare e precise che non ci siano dubbi e, anche senza il nostro aiuto, possano essere svolte automaticamente.

Ogni programma, anche il più complesso, vive su due ingredienti fondamentali: i dati (informazioni) e gli algoritmi (passi per trasformare le informazioni nel risultato che vogliamo). Tutto si basa su un flusso naturale: input → elaborazione → output.

Programmare è solo la punta pratica di qualcosa di molto più profondo: il pensiero computazionale:

  • programmare = spiegare bene
  • spiegare bene = pensare bene
  • pensare bene = capire meglio noi stessi e il mondo

Attraverso la programmazione il nostro obiettivo non sarà quello di costruire applicazioni all’avanguardia, ma lavorare su noi stessi. Cercheremo di mettere ordine al caos dei problemi che affrontiamo e alle soluzioni che troviamo, trasformando intuizioni e pensieri in istruzioni precise.