G.K. Chesterton è stato uno scrittore e giornalista britannico. Ha scritto moltissimi saggi e libri, ed uno in particolare nel 1929 chiamato “The Thing” (successivamente tradotto in italiano con il…
Programmazione
Come evitare di usare null con esempi in Java
Durante una sua presentazione nel 2009, il famoso computer scientist Tony Hoare ha raccontato come abbia inventato la referenza a null nel 1965 nel linguaggio ALGOL. In questa stessa presentazione,…
Legge di Amdhal e legge di Gustafson per analizzare lo speedup di workload paralleli
In un mondo ideale, se il tempo di esecuzione di un programma su un singolo processore è $latex t_s$, vorremmo che il tempo per eseguire lo stesso programma su $latex…
Che cos’è io_uring e a cosa serve
io_uring è una nuova interfaccia introdotta nel kernel Linux 5.1 nel 2019. Questa interfaccia permette di chiamare systems calls che possono essere eseguite in maniera asincrona. Inizialmente è stato introdotto…
[Bash] Come scrivere in un file
Vediamo 3 modi con cui è possibile scrivere in un file da uno script bash. Possiamo usare la redirezione dello standard output, possiamo usare il programma cat per molte linee…
Ecco perchè non bisognerebbe usare mai java.net.URL e usare invece java.net.URI
La classe java.net.URL veniva aggiunta nella libreria standard di Java nel 1995, e già allora era presente un grave problema con l’implementazione del suo metodo equals. Il problema è evidente…
[OOP] Che cos’è la legge di Demetra
Popolarizzata dall’ottimo libro “The Pragmatic Programmer”, la legge di Demetra è anche conosciuta come Principle of Least Knowledge (“principio della conoscenza minima”) e suggerisce che una classe non dovrebbe conoscere…
LDP: differenza fra pass by value e pass by reference
Definizione del problema In questo articolo vedremo cosa si intende e che differenza c’è, nell’ambito dei linguaggi di programmazione, per pass by value e pass by reference. A seconda del…
Numeri che ogni programmatore dovrebbe conoscere
Una delle cose più difficili in informatica è avere un’idea a priori sul tempo di esecuzione di un programma. Mentre ci sono ovviamente tecniche che permettono di studiare l’andamento di…
Quanto fa 9999999999999999.0 – 9999999999999998.0 nel tuo linguaggio preferito?
E’ una semplice domanda: quanto fa 9999999999999999.0 – 9999999999999998.0 nel tuo linguaggio preferito? La risposta potrebbe sorprenderti! Si sa che spesso le operazioni che riguardano i numeri decimali richiedono molta…