Maledetti nerd

Il podcast italiano sull'informatica e la programmazione. In ogni episodio andremo a togliere un velo di magia dalla nostra percezione del computer e del suo funzionamento. Parleremo di programmazione, bit, protocolli, ALU, filesystem, criptografia e chi più ne ha più ne metta. Se i discorsi tecnici vi annoiano, state alla larga. Altrimenti benvenuti, maledetti nerd!

[0x14] DNS: dal nome all'IP

In questo episodio parliamo del DNS, la rubrica telefonica più avanzata del mondo. Vediamo come si fa a passare da un nome facilmente ricordabile ad un indirizzo IP da contattare e soprattutto come ci si è arrivati e, a grandi linee, come funziona tutto il sistema.

04-26
10:56

[0x13] Protocolli di comunicazione

Finalmente! Questo episodio lo volevo fare praticamente dall'inizio. Vi parlo di protocolli di comunicazione, con un accento sui protocolli usati per Internet, come TCP/IP e Ethernet. Facciamo però un discorso generale sui protocolli di comunicazione, sui vari compiti che devono svolgere e i vari strati della pila ISO/OSI

04-19
14:31

[0x12] Runloop, giochi e fiumi che scorrono

Oggi una breve riflessione sul concetto di runloop e sulla bellezza di lasciare che le cose succedano da sole.

04-12
09:20

[0x11] Sistemi multitasking

in questo episodio facciamo un tuffo nei meandri del kernel e vediamo a grandissime linee come funziona il process scheduler in un sistema multitasking. Parleremo sia di sistemi cooperativi che preemptive.

04-05
11:13

[0x10] Polling, interrupt, DMA

Oggi parliamo di come funziona l'I/O e le varie strategie per gestire i flussi dati. Parleremo di polling, interrupt e DMA.

03-29
11:19

[0x0F] Paradigmi di programmazione

In quest'episodio facciamo una panoramiche dei vari paradigmi di programmazione. Programmazione imperativa, funzionale, ad oggetti. Linguaggi compilati, con runtime o virtual machine. Cerchiamo di fare un po' di chiarezza su tutti questi concetti.

03-22
16:45

[0x0E] Dischi, file e filesystem

Parliamo di dispositivi di achivazione e soprattutto di come funziona un filesystem. Porteremo l'esempio di FAT32, il venerando e ancora usatissimo filesystem di casa Microsoft.

03-15
15:45

[0x0D] Come faccio debugging

Oggi vi racconto un po' come mi approccio al debugging e le varie tecniche che utilizzo per trovare i problemi risolverli. Parliamo di stacktrace, paperelle di gomma, unit test e così via.

03-08
14:03

[0x0C] Programmazione embedded: 8 consigli per iniziare

In questo episodio voglio dare qualche consiglio a chi si vuole avvicinare al mondo della programmazione embedded. Parleremo di Arduino, Bluepill, Raspi Pico e di tutto quello che serve per iniziare.

03-01
12:49

[0x0B] Memoria: stack e heap

Oggi parliamo di gestione della memoria. Cos'è lo stack, cos'è l'heap e come viene gestito. Vediamo in sintesi un paio di strategie per semplificare o automatizzare la gestione della memoria, ovvero il reference counting e la garbage collection.

02-22
12:39

[0x0A] Blockchain e criptovalute

Oggi parliamo della tecnologia dietro le criptovalute: la blockchain. Vediamo un po' come sono fatti i blocchi, le transazioni e gli account. Inoltre vi do qualche consiglio pratico e tecnico per non perdere accesso alle vostre criptovalute.

02-15
18:44

[0x09] Smartcard

Oggi parliamo di una tecnologia che usiamo tutti i giorni ma alla quale relativamente pochi programmatori si avvicinano, le smartcard. Faremo una panoramica su Javacard, GlobalPlatform e ISO7816 e vedremo come avvicinarsi allo sviluppo su questa piattaforma. Link utili: Javacard SDK: https://www.oracle.com/java/technologies/java-archive-downloads-javame-downloads.html#javacardkitv305 GlobalPlatformPro: https://github.com/martinpaljak/GlobalPlatformPro Subreddit del podcast: https://www.reddit.com/r/maledettinerd/ Nota: scaricate Javacard 3.0.5 o 3.0.4 perché l'ultima versione (3.1) non è supportata dalle carte facilmente reperibili in commercio

02-08
16:52

[0x08] Quella volta che ho fatto un OS

Vi racconto di quella volta che ho fatto un sistema operativo per x86. Parleremo di BIOS, bootloader, kernel e compilazione. Come promesso, ecco il link al codice: https://github.com/bitgamma/gos

02-01
27:25

[0x07] Audio

proseguiamo a parlare di codifica di informazione. Oggi si parla di audio. Parleremo sia di audio sintetizzato, MIDI ma anche di audio campionato, MP3 e FLAC.

01-25
17:22

[0x06] Immagini raster

Parliamo di bitmap, RGB, compressione JPG, PNG e curiosità varie sui formati di immagine raster. 

01-18
15:36

[0x05] Criptografia

Oggi due parole sulla criptografia. Vedremo una panoramica delle varie primitive criptografiche, hash, cifrari, firme digitali, ecc. Nell'episodio menziono un'immaginetta da Wikipedia, eccola qua: https://tinyurl.com/588rc6jw

01-11
16:06

[0x04] Computer, telecomandi e microcontroller

Oggi episodio leggero. Vi racconto di un progettino che ho fatto in weekend con un STM32, un ricevitore infrarossi ed un PC. Entreremo un po' nei dettagli del protocollo dei telecomandi e faremo qualche accenno di programmazione di microcontroller. Come promesso, vi lascio anche il sorgente del progetto: https://github.com/bitgamma/pcatx-remote

01-04
13:21

[0x03] Ci vuole tempo (clock, bus e trasferimento dati)

parliamo di tempo, ovvero di come questo viene scandito all'interno del computer e di come questo scandire permette il funzionamento dei sistemi

12-28
16:41

[0x02] bit, byte e altra robaccia

Oggi parliamo di informazione e la sua codifica. Bit, ASCII, Unicode e così via. Episodio un po' lunghetto ma importante e ricco di esempi concreti. Ah, ho detto "aritmetica booleana" al posto di "algebra booleana", siate clementi che è Natale. A proposito, tanti auguri a tutti, ci risentiamo la prossima settimana!

12-21
22:29

[0x01] 10 consigli per l'aspirante programmatore

Eccoci di nuovo qua. Oggi vi do 10 consigli utili se vi state avvicinando alla programmazione o siete semplicemente curiosi di sapere a grandi linee cosa fa e che abilità deve avere un buon programmatore.

12-13
15:46

Recommend Channels