Mazzo di carte

“Ho capito che ognuno di noi nasce con un mazzo di carte diverso, chi ha il punto servito e chi un mucchio di scarti, ma questo non vuol dire che non si possa giocare lo stesso. E magari vincere. Dipende tutto da come si affronta la partita.” [Da “Morto a 3/4” di Francesco Balletta]

Scuola 2.0

Penso che mi si possa definire un entusiasta appassionato di computer ed elettronica, avendo iniziato ad usare i PC da quando ancora si chiamavano “home computer”. Ho passato però abbastanza tempo alla tastiera per raggiungere una certa obiettività la cui estrema sintesi con un po’ di esagerazione potrebbe essere riassunta dalla Quinta legge dell’inattendibilità: “Errare è umano, ma per incasinare davvero tutto ci vuole un computer”. E’ con questo spirito critico che accolgo le roboanti e propagandistiche dichiarazioni sulla Scuola 2.0 (qualunque cosa questo voglia dire).
E da veterano del byte mi preoccupo – perchè la scuola che vedo e che sento è una scuola agonizzante che avrebbe bisogno di quegli investimenti per ristrutturazioni, materiali didattici (per non parlare della carta igienica), personale qualificato, ma che sicuramente non ha bisogno di ulteriori responsabilità e problemi che potrebbero verosimilmente darle il colpo di grazia.
Infatti quello che manca in tutti gli articoli che ho letto è un dato di realtà, iPad e PC non sono taumaturgici oggetti che con la sola presenza hanno il potere di trasformare legioni di studenti caproni e ignoranti in eleganti dottori dal QI a fondo scala. Ci sono vantaggi, sicuramente, ma ci sono anche dei costi indiretti e delle problematiche d’uso. Cose di cui non v’è menzione in alcun articolo.
Un esempio stupido stupido è che iPad e netbook hanno bisogno di energia, ve lo immaginate in una classe un povero docente che fa lezione con un terzo degli studenti che deve ricaricare l’aggeggio elettronico, magari tra prese volanti e prolunghe collegate ad un impianto elettrico fatiscente?
O sempre lo stesso docente che si trova con metà classe che naviga su facebook anzichè leggere Petrarca? O che deve aspettare qualche minuto perchè tutti abbiano finito di accendere il PC?
E chi si occuperà di aiutare gli studenti a configurare il dispositivo, a sistemarlo quando, inevitabilmente, perderà la configurazione o i dati saranno danneggiati? E quando si perderà o si romperà? Un libro di testo sopravvive tranquillamente ad un volo da una finestra del terzo piano (magari si squinterna un po’, ma rimane comunque utilizzabile per il suo scopo), non si può dire lo stesso di un iPad.
Si dirà che queste scelte favoriscono le famiglie abbassando i prezzi dei libri di testo. Può essere, ma non ho letto nulla, in questi articoli, riguardo alle reali differenze tra un libro elettronico e un libro cartaceo.
A meno che non si espressamente richiesto dal legislatore sul tema libri di testo, un editore può rendere l’e-book nominale (non potrà essere ri-venduto, prestato o stampato senza cadere nell’illecito), revocabile |è capitato con 1984 di Orwell ed Amazon], o con data di scadenza (mi dicono che alcuni libri di testo scadono dopo 3 anni).
Nessuno ha sollevato il dubbio che studiare su un LCD retroilluminato può dare problemi alla vista e alla concentrazione (già pericolosamente in bilico tra Petrarca e Facebook).
Anche ammesso e non concesso che questa sia la via da seguire per il futuro, perchè nessuno ha messo in discussione le scelte? Ad esempio i lettori eInk sarebbero sicuramente più adeguati. Android invece di iPad sarebbe più economico. OpenOffice e Linux invece di Microsoft sarebbero gratis.
E’ difficile non pensare che dietro a questi pomposi annunci ci sia un duplice intento che poco ha a che vedere con la reale innovazione dichiarata. Da una parte si strizza l’occhio ai ragazzi (prossimi elettori) con la promessa di un elettronico oggetto del desiderio e dall’altro si fanno gli interessi di Apple e Microsoft e qualche grosso produttore di portatili.
Non ultimo, ma non trascurabile, non ho visto nessuno affrontare il tema dell’impatto sociale di queste operazioni. Personalmente credo che i lavori in obsolescenza vadano lasciati andare senza tenerli artificialmente in vita a tutti i costi a spese dei contribuenti (anche se sono altresì convinto che, a spese dei contribuenti, gli addetti debbano essere aiutati a riqualificarsi, a cercare un nuovo impiego e sostenuti in questo periodo di transizione). La rivoluzione Scuola 2.0 impatterà sicuramente su tipografie, magazzini, trasporti e librerie e cartolerie; probabilmente ci si aspetta che la nuova generazione di geni creata a suon di iPad e eBook risolva questo problema (e tutti gli altri).

Reading a quick summary

It is elapsed some time from the last time I wrote a book review, but, in fact I keep on reading. I am pretty sure I will never get through all the backlog, so I decided to go the quick and easy way with a list and a brief description. Should you like to have more information about any book I read, feel free to ask.

James Rollins Artico (Ice Hunt).
Quite fresh and addictive adventure book. The setting is not so original, but I liked it. The main character is genuine and true.
James Rollins La mappa di pietra (Map of Bones).
Nice adventure book, not exceptional. If you like unlikely historical reconstruction, scientific nonsenses and fast paced adventure, then this may be for you.
James Rollins Il marchio di Giuda (Giuda’s Strain).
Adventure book, this belongs to the same series of “Map of Bones”. It shares the same kind of adventure and narration. It’s a page turner, but it left me quite unsatisfied.
Scarlett Thomas PopCo.
Unusual novel. It talks about a young lady who works for a toys corporation. This fictional corporation is described to be the size of Hasbro and Mattel. The book talks at length about the life in such company, how they deal with customers, and the contradictions of capitalism and occidental life-style. Oh, and it also talks about cryptography (that was the main reason I bought this). The book is pleasant, although slow at times, but it is able to give many points to think about.
Terry Pratchett Wintersmith.
Very good book by Terry in the Discworld series. This is the third of Tiffany Aching. Entertaining and witty.
Terry Pratchett Unseen Academicals.
Another Discworld novel, this time I didn’t much like it – it takes too much time to get the narration up to speed and lacks of the very part that makes Pratchett’s books so good. The story is about a Football (or Soccer if you happen to live the other side of the big pond) Discoworld version, with the stereotypical player and the equally stereotypical top model girlfriend.
Terry Pratchett Nation.
This time a Pratchett’s book not set in the Discworld universe but on an alternate history on a fictional Earth. I found this book very good. Although its intended readers are in the teen range I really enjoyed it. The author is clearly at his best, writing about differences, leadership, belief, faith and the hard task of growing up. Highly recommended.
Scott Rogers Level Up.
This is a great school book for game design. Or, to put it better, this is The Book if you want to learn and understand how to design videogames. In many parts it can be considered just common sense, although it is a highly organized and outstandingly well written common sense. If you want to be really picky, you may say that this book is not game genre specific so it may be too generic if you are very in a specific kind of games. I can’t wait to apply everything I learned.
Tom Demarco, Peter Hruschka, Tim Lister, Suzanne Robertson, James Robertson, Steve McMenamin Adrenaline Junkies and Template Zombies: Understanding Patterns of Project Behavior.
Demarco and Lister are two great project engineers, their “Peopleware” is one of the best book on project management. One of the first that collected evidences and put it straight – in software project people matters. I had high expectations for this book. Unfortunately it is somewhat less than I expected. It is a collection of 1-2 pages articles describing one pattern. Some pattern are good, some are evil and some can be both. I found the book somewhat lacking of structure and poor in references to facts and studies supporting the claims. Thinking better about it I don’t see who is the intended reader – the project manager either is peopleware “enlighted” or is not and for sure this is not the book you can throw at him to make him change. The programmer may nod for one or more pattern, but there is no clear way to make and propose changes it his/her company to improve practices.

Here we go. I have another burst of books I’ll report about in the next days.

The Celestines Company

This is another Italian book without an English translation, at least not one you can buy on Amazon.The story is about a group of orphans that escapes from the orphanage to participate in the secret world championship of StreetBall. StreetBall is a specific variation of the football played along the streets of nearly everywhere with much passion and fantasy. The Great Bastard himself, the God of all the orphans, has dictated the rules for Street Ball.
The story takes place in the rich and corrupted country of Gladonia. The orphans are chase both by the (equally rich and corrupted) church in the person of Don Biffero and Don Bracco and the media personified by the journalist Fimicoli. And behind those pawns the egoarch Mussolardi supreme ruler and mostly owner of Gladonia.
As I have already expressed before in other posts, Benni is one of my favorite writers. In this case he manages to achieve a good tale telling, while keeping a meta register. Situations and characters usually live at different levels. The story level is nice, but the plot twists are a bit forced, situations are mostly resolved via Deus Ex Machina. The next level is satirical, Benni portrays the changing Italy, a beautiful country losing its genuine and true origins to progress, corruption, hypocrisy and indifference. What was clean and nice now is polluted, what once was quiet and calm now is crowded and noisy, what once was honest and private, now is criminal and reality show.
Characters are caricatures of real people, the county politician, the clergymen, the orphans, the media, the TV channel owner, and the army.
At a deeper level we find messages. Messages about what is going wrong and what would doom us. The strong message is about the importance of unadulterated youth. Children deserve to grow in a free and genuine environment. Benni strongly criticizes everything menacing this.
I have to admit that I lost most of these deeper levels at my first reading. But the book is so intriguing that the second read was swift.

Inquiry on Jesus

(This book is Italian only) If you, like me, grew up in a traditional Catholic environment, as it could be anywhere in Italy, or, to a lesser extent in France or Spain, then chances are high that most of what you know on Jesus is wrong.
This book attempts to shred some light on the historical man that so greatly influenced (and still influences) our world. In fact our knowledge about Jesus, his times and his land has considerably improved in the last 30 years. Better analysis techniques and the recent discovery of old writings from the earlier community greatly helped in defining a larger and more consistent picture.
The book takes the form of a loose interview where the writer introduces the argument of the chapter and the starts with questions and answer sessions with the expert.
“Inquiry on Jesus” begins as a sort of myth dispeller: Jesus was a strictly observant Jew; he had a number of brothers and sisters; he was married as his disciples were. He was a Pharisee, he didn’t intend to start a new religion; he had a political message; Gospels weren’t written by the same disciples that lived with him and so on.
The matter is interesting and it is dealt with a tactful approach. Of course the intended audience is everyone that wants to dig deeper in this part of human history with an open mind. Avoid it if you are a believer and don’t feel comfortable in reviewing part of your faith beliefs. I guess that a strong faith couldn’t be shaken by this book content, and that the book could satisfy an interest in the man Jesus.
One of the most striking revelations to me is that Jesus was deeply Jew; he observed every precept of the religion. Moreover he never intended starting a new religion or cult, neither converting anyone. He strongly believed that the Kingdom of God was near to come and that a real conversion and renewal was needed.
Another interesting point is about his sentence. For centuries the Catholic Church based a number of arguments against the Jewish on their guiltiness for sentencing Jesus to dead, basically perpetrating a deicide. These parts of Gospels have indeed been written to ease the position of the new Christian religion towards the Roman Empire. In the desire of appealing to the Romans, earlier Christians, turned the guilt away from Pontius Pilate (the likely real culprit) to the Jewish. What is astonishing is that by reading carefully the Gospels you can find yourself that not everyone in the high council, the Sanhedrin, was enemy to Jesus, in fact some of the people in the council were actually his friends.
Most of Jesus’ teaching, as reported by the Gospels, is easily traced in the religious currents popular at those times. Even the resurrection was a common theme far from being something unheard of. Rather, the specific attention and care to the latest and to poorest in the society is the original part of his message, the real revolutionary part.
The book takes a low profile on miracles, stating that most of the healings and exorcisms can be explained in term of psychic or mental effects. On the other hand, considering the historical character, the book supports the thesis that it is likely that Jesus thought a lot on the matter, considering it as a special gift from God and that by this gift God was calling him to some mission.
Considering that the central core of the Christian message is the resurrection for saving everyone, the book skims over too quickly over the fact that in the first edition of Gospel there was no mention about resurrection. It came as an afterthought during later revisions. Moreover, despite of the claims of Gospels, there are no reports about those exceptional facts (consider a dead man appearing to several hundreds people!) beside of the Gospels themselves.
I think that this is where the narrative scheme of the book falls short. I.e. the interview model allows too easy escape ways on topics that would have a much deeper analysis in a classical popularization book.
Apart from this the book is an interesting and easy read for those with an open mind regardless of the faction.

Programming in Lua

(cover to the left here, refers to 4th edition of the book, I read the 1st edition). It is somewhat difficult, in writing this review, to distinguish the language from the book. The book teaches about Lua, so my opinions in favor or against this language could interfere with my opinions about the book. Anyway I’ll try to accomplish this hard task.When writing a book about a programming language you could follow either an hands-on approach or a more formal one. Both ways have their pros and cons. The first approach helps language novices to grasp quickly language fundamentals, while latter provide a convenient reference for those already using the language.
For example Bjarne Stroustrup’s “The C++ Language” belongs to the second set. It is very formal and descriptive; learning the language by this book it is definitely the hard way to do that (aside from the fact that C++ is a very complex and huge language). “Programming in Lua” is from the first camp. It features an easy to follow, example-ridden way into the language. It doesn’t pretend to give a thorough reference for the language or the library, demanding other books for this specific purpose.
I have to say that the writer does quite a good job. The text reads smoothly, examples are always fit to the chapter scope, prose is clean and clear. In theory I should have practiced with the language itself in order to state whether the book covers the matter adequately or not, but I have a limited amount of free time and no suitable project for a Lua application, not even a toy one.

Anyway while I didn’t fell in love with the language (quite the opposite as you may have read) I appreciated the book. Also I found an interesting reading the last chapters on how interfacing and extending lua with C code.
What I didn’t like is the author bias toward the language; I feel a vein of naivety. For example Lua supports only floating point values. Not the “float” kind, but the “double” variety. No integers, just doubles. The author advocates that there is no reason for integers since “double” works fine for just everything. Although I have not much experience with doubles (just floats), this appears quite a bold statement, at least from what I have skimmed through. The dumbest consideration I could think of is that doubles still have the usual precision problems that affect floating point arithmetic. It just depends on how many iterations you have to do.
On a whole I found this book a worth reading either if you want to learn a new programming language or you are just curious (like me). Just be sure to buy the 2nd edition that came out just few days after I ordered the book (I ordered the book few days after having read the, now disappeared, slashdot review… maybe you see a connection)… or to read the first one online for free.

The Design and Evolution of C++

C++ language despite of the powerful mechanisms supported is not a language for the faint hearted. Two forces drive its peculiar concept of friendliness (it is not unfriendly, just very selective) the backward compatibility with C and the effort to not getting in the way to performances. This book, written by the language father, presents and analyzes the language history and the design decisions. And, given the writer, the perspective you get reading the book is very interesting and more than once helps to shred some lights in the dark corners of the language.
The history is very interesting since it details how the language genesis and marketing went from the AT&T labs to the academy and industry.
C++ design principles are presented and the most notable is that of ease of teach-ability. Several time proposed/existing features had been modified or dropped entirely because they were not easy to teach.
Another very interesting principle is the “you don’t pay what you don’t use”, meaning that features added to the C language in order to define the C++ language were designed so that the programmer would not incur in any penalties if not using them. That’s why if a class has no virtual method, then the pointer to the virtual methods table is not included, saving the pointer space from the class instance memory footprint.
Aside from answering to many questions, the book opens up a bunch of new ones. For example, the very first implementation of C++ has been developed practically around a threading library. Now more than 30 years later, in a world with an increasing presence of multi-core machines, the C++ standard still lacks of a multithreading / multiprocessing facility.
Also Stroustrup asserts more than once that a Garbage Collection way of managing memory could be add by a specific implementation. But fails to explain how this non-deterministic way of terminating dynamic memory life could deal with the deterministic needs of destructors. Likely I’m just to dumb to figure out myself.
The big miss I found in the book had been a comparison with Java language. Basically one of the great contenders for the title of most widely used programming language. Java, on its side, has some interesting approach to language design that conflicts with those of C++ (e.g. the C compatibility issue). Therefore it would have been nice listen from Bjarne voice his thoughts about. In his defense it has to be noted that by the date of this book hit the streets, Java hype had just been started.
Last complain about the book is the lack of conclusions. The book seems cut a couple of chapters before the real end. Aside from stylistic point of view, some words about the future evolution and perspective would have been at their place at the end of the book.

Digital Fortress (Crypto)

If I had to pick an adjective for this book I would be in doubt between irritating and disappointing. Book publishing is a sort of time machine – first the last book of an author is published, then, if the book is successful, every writing of the author, going back to the youth works, is published. This is a nearly zero risk strategy for the publisher (since it fully harvest top money in a short time), while it is highly risky both for the reader (that can quickly became dissatisfied and lose the trust in the writer) and for the writer himself (that is going to lose his readers and therefore his income).
So what’s wrong with “Digital Fortress” (apart from being retitled into “Crypto” for the Italian translation)?
Most of the book. Let’s start from the beginning, the NSA is one of the American secret services. In this book, Dan imagines that NSA has developed a supercomputer that exploits the massive parallelism of one gazillion of CPUs in order to decrypt any message by brute force.
Then the writer proves his deep ignorance of every the most basic aspect of cryptography. He messes up bits with characters. Then he shows that he hadn’t spent a couple of seconds for looking up what the Caesar cipher is and presents a wrong description. Also he hadn’t a clue about computation complexity and that just adding a bit to a keyword the time needed for a brute force attack doubles.

He hadn’t the palest idea of how computer security works, what network security is.
If you succeed to get through all this jungle of ignorance then the story is that a hacker sends a code that cannot be decrypted by brute force (!!) to NSA to black mail them in order to reveal the existence of the supercomputer to the world (!!).
The hacker dies in the beginning and a civilian (the boyfriend of a cryptologist employed by NSA) is sent to investigate (!!).
Anyway the code is eating up the supercomputer resources because the NSA CTO is willing to break it (!!).
Aside from this technological nonsense, there are the usual Brown strengths and weakness. More of the last since this is an old writing by him (1998!) and for sure his technique has improved with time.
The book is not hooking as the others, has an intriguing rhythm, but it is not a page turner.
About the weakness, as usual characters are not developed, they are flat, doing their brain-work and acting like SWAT agents. Also, as already found, the reader is tricked away from the solution of many puzzles pretending that skilled professionals don’t see the obvious solution.
The plot is always the same. Four books, the same plot, the same main character betrayed by what he/she thought was a friend. So the usual upturn near the end, when the hidden plot is revealed.
Don’t buy it, unless you are doing some research work on this author, don’t read it either.

Behind Closed Doors

According to the Dilbert’s rule everyone gets promoted to his/her highest level of incompetence. In the computer programming field this is dramatically true: brilliant programmers, after few years or less are turned into management. First they are promoted to lead programmer roles and, if they have the double DNA, they could grow in the management career. Why is required a double DNA? Because programming has to do with machines, while management has to do with people. And people tend to get upset when treated like machines.
Moreover programming is about reaching a goal worrying about the smallest detail, while management is about setting goals for other people letting them sort out the minutiae.
When I became a lead programmer I hadn’t a clue about this and no one cared about telling. I just was asked about when my team would complete the application.
The project was rather successful, but it could have been far better. That’s why, with the next job I started reading books about management.
This book is the first I read about the next level: it is about managing lead programmers. The book is simple, easy reading and well structured. It is not as brief as “One minute manager”, but is very concise; you can read it in a couple of days. More than once I wished that my boss had read it.

The authors use a fictional character to make their points and providing a running example. This character is a just hired manager to which six lead programmers are reporting and who has the goal of reducing costs and increasing the value of his departments work.
Authors propose a number of techniques for managing proficiently. As implied in many parts the job of the manager is to facilitate the work of people reporting to him/her, removing obstacles and providing support.
One-to-one is a meeting held weekly during which the manager meets just one lead face to face. The meeting lasts about one hour and the manager gathers information, provides supports, sets skill development goals and coaches the lead.
Team meetings are held weekly too and the goal is to provide integration between teams, exploit synergies, and prevent inefficiencies.
Coaching is to help leads to develop skills that are beneficial both to the company and to the lead herself.
The manager is encouraged in:

  • Assess attitudes and interests of the lead teamers. It doesn’t make sense to force someone to do something that she’s not interested in;
  • Managing by walking around, that is taking some time just to wander around in the teams to taste the mood of teams and the rhythm of work;
  • Enabling the lead team jelling;
  • Give feedback immediately. Do not wait to the next event (end of week, yearly review or the like), people need to know if they’re doing right or wrong immediately.
  • Delegate
  • Acknowledge good work

The book also instructs the reader on influencing and resolving contrast. Influencing is for the best of the influenced one, it can’t work in the long term otherwise. Resolving contrast is much sticking with facts and trying to put in the other one shoes.
The planning is dealt with a weekly resolution for a couple of month. It is defined by leads and their teams and can be arranged in terms of priorities or delegation by the lead meetings. Beyond two month the planning is very rough. Also the planning is suggested to be kept is a meeting room in the form of a panel with sticky notes so that it is clear for everyone that it isn’t carved in stone.
Problem solving techniques to employ in meetings are proposed. Many of them relies on the brain storming techniques with some modification to ensure that everyone (even shy people) could participate.
The book contains a great deal of tips and aids to do management things. Usually there is an example, the motivation, a ‘to-do’ list for the technique and then there is a recap frame at the end of the book.
I highly recommend this book to all those managing lead programmers or the likes. I still recommend this book to lead programmers since many of the presented techniques are still applicable in the smaller context and can be helpful to back-coach the manger in a more sound behavior.

Artemis Fowl: The Opal Deception

As most engineers I know I have a rather childish part of me that refuses to grow up with the rest of the body and the mind. I still like to play, I like cartoons, I am fascinated by toys and so on. For the same reason I usually lurk in the teen section of bookstores because I’m sure to find some hidden pearls. Sometimes I get burnt (Time Stops for No Mouse was way too childish even for me), other times my research is successful.
Artemis Fowl is one of those successful cases. Although it is not at the same level of Harry Potter (here Good and Evil aree pretty distinct and the Evil one has no good intentions) it is an entertaining reading.
This is the fourth book in the series. The plot is following from the previous book: Artemis and Butler (Leale in Italian) have undergone a mind-wipe and they don’t recall anything about the people and LEPrecon. Opal is in coma, and Holly Short (Spinella Tappo) is about t be promoted.
In this book you’ll find the usual wealth of futuristic gadgetry, Artemis will be back in full… mind and will begin to grow some sentiments.
Opal plan is astute and well thought.
I found Folay (Polledro) character to be a little underutilized and he’s doing the idiot-savant a bright guy that cannot think about the obvious.
I am not fully satisfied by the dwarf Mulch Diggums (Bombarda Sterro). It seems like that when the writer finds no way out for a given situation he forges a new secret dwarfs ability. A cheap Deus Ex Machina gimmick to solve problems. I have not checked, but it is possible that this brings some inconsistencies to the previous books.
An easy book that flows in a couple of days full of techies and action.