Book Review: The Pragmatic Programmer

Categories:
It’s been a long time since I wanted to read this book, given enthusiastic reviews from various influential programmers. After “digesting” it (it took me almost three months) I can confirm the absolute value of this publication! Title: The Pragmatic Programmer: From Journeyman to Master Authors: Andrew Hunt, David Thomas Language: English Editor: Addison Wesley Book Structure The book has a very free-form structure, the single chapters are not meant (except a few exceptions) to be read sequentially.

Read More →

Recensione Pragmatic Programmer

Categories:
Era da tempo che volevo leggere questo libro, viste le ottime recensioni da parte di addetti ai lavori o personaggi “influenti” del variegato mondo della programmazione. Ora che l’ho “digerito” (ci ho messo quasi tre mesi per leggerlo tutto!) non posso che confermare l’assoluto valore di questa pubblicazione! Titolo: The Pragmatic Programmer: From Journeyman to Master Autori: Andrew Hunt, David Thomas Lingua: Inglese Casa Editrice: Addison Wesley Struttura del libro L’opera ha una struttura molto “libera”, i singoli capitoli infatti non sono (tranne qualche rara eccezione) pensati in rigida sequenza.

Read More →

BigDecimal and rounding modes

Categories:
After seeing the great success of introductory article on BigDecimal class I wanted to go on with some examples on one of the most complex operations: division. The problem… Is always the same: length :) BigDecimal, as already seen, can have an arbitrary number of decimal digits: this does not mean they can go to infinity, indeed we have at our disposal something like four billions digits, and counting. Not bad, you could argue… well let’s try this at home: how many computers are needed to store all the decimals of “1 / 3”?

Read More →

Impossible Math

Categories:
Can we trust computers calculations? Introduction IEEE 754 specification is the standard used for floating-point calculations in the engineering and scientific fields. In my humble opinion it is a perfect example of how computer industry and software development are based on a fundamental illusion of mankind: the possibility to attain and manipulate infinity (infinitely small, infinitely big, it doesn’t matter). I don’t really want to discuss the value of this standard (which is used among others by all processors and programming languages), but to explain the pain I feel looking at results like these:

Read More →

BigDecimal

Categories:
java.math.BigDecimal class represents “Immutable, arbitrary-precision signed decimal numbers” (with some limits), and has methods to operate on those numbers. Its use although is not so immediate and it is easy to do errors. In this article I’ll try to put some light on this topic, in the hope of seeing a lowering in the amount of bugs related to code using BigInteger and BigDecimal. What is it The package java.

Read More →