Programming Collective Intelligence is easy to read, small but concise, and its only major flaw is the title; and that is because it is misleading. The book touches quite heavily on using collective information and social site APIs, but what it is really about is data mining. It may not be a flaw with the majority of readers, but personally I wouldn't care about the collective, the Facebook API or anything like that, but I was really interested in the different ways to analyse data. In that sense, this book can be taken as a reference guide on data mining.

Each algorithm and idea is accompanied by Python sources. I personally dislike Python as a language, but the author afirms he chose it intentionally because the algorithms look clear and the source is small, with its purpose unhindred by many language artefacts. The book was so interesting, though, that I plan (if I ever find the time :( ) to take all the examples and do them in C#, then place them on Github.

The book covers classification and feature extraction, supervised and unsupervised algorithms, filtering and discovery and it also has exercises at the end of each chapter. Here is a short list:
  • Making Recommendations - about the way one can use data from user preferences in order to create recommendations. Distance metrics and finding similar items to the ones we like or people with similar tastes.
  • Discovering Groups - about classifying data into different groups. Supervised and unsupervised methods are described, hierarchical clustering, dendograms, column clustering, K-Means clustering and diferent methods of visualisation.
  • Searching and Ranking - it basically explains step by step how to make a search engine. Word frequency, word distance, location of a document, counting methods, artifical neural networks, the Google PageRank algorithm, extraction of information from link text, and learning from user clicks can be found in this chapter.
  • Optimization - simulated annealing, hill climbing, genetic algorithms are described and exampled here. The chapter talks about optimizing problems like travel schedules and the example uses data from Kayak.
  • Document Filtering - a chapter about filtering documents based on preferences or getting rid of spam. You can find here Bayesian filtering and the Fisher method.
  • Decision Trees - a very interesting method of splitting information items into groups that have a hierarchical connection between them. The examples use the Zillow API
  • Bulding Price Models - k-Nearest neighbours, weighted neighbours, scaling.
  • Advanced Classification - Kernel Methods and Support Vector Machines. This is a great chapter and it show some pretty cool uses of data mining using the Facebook API
  • Finding Independent Features - reviews Bayesian classification and clustering, then proposes Non-Negative Matrix Factorisation, a method invented circa the late 90s, a powerful algorithm which uses matrix algebra to find features in a data set
  • Evolving Intelligence - bingo! Genetic Programming made easy. Really cool.
  • Algorithm Summary, Third Party Libraries and Mathematical Formulas - if you had any doubts you can use this book as a data mining reference book, the last three chapters eliminate them. An even more concise summary of the methods explained in the book, listing every math formula and obscure library used in the book


Conclusion: I really loved the book and I can hardly wait to take it apart with a computer in hand.

This book is different from the books I usually read because it is an autobiography. However it has enough science in it to be great, enough fantasy in it to be totally inspirational and also it is one of the most real (and thus sad) books I have ever read. What is even nicer is that the book is free online on Anthony Zuppero's site. I can't recommend it enough. Go there, download it, read it: To Inhabit the Solar System

The plot itself is about this physicist guy, diagnosed with Asperger's syndrome, who gets into his head that we could build rockets to go to other star systems. It all starts in 1968, when he reads about the Dyson nuclear bomb propulsion, an outrageous scheme to detonate nuclear bombs to push a rocket. From then on, he embarks into jobs that are closer and closer to this purpose, always finding solutions to problems that appear along the way. In the end, he finds a way to cheaply get the water from comets, asteorids, moons and use it to propel spaceships around the Solar System. He practically gives us the keys to the universe, the highways that would allow the thorough exploration and utilization of resources in our solar system. It is just amazing.

There are multiple things that I liked about the book. Most of all, I liked the guy. He is what I would call a true hero: he finds a cause and dedicates his life to it, without any desire for personal gain. He doesn't just blab around about the ideas that he has, he finds people, resources, makes calculations and determines the problems that arise and specific concrete solutions for them. Then the style of the book: so bloody honest, so many things to be learned from the way he repeats what is important, the details of all his thoughts, hopes and desires; a great read. And last, but not least, the technical aspects of the book. After reading it, you will be able to understand each step of getting fuel and construction material from space, using it to propel and build stuff, all in a reasonable enough price and without the need for expensive planet-space trips.

Now, there are some issues with the book. First of all, it is not at all polished. It says its story, but it's also filled with personal notes, incomplete chapters and
various information. My guess is that at some time he wanted to publish the book and no one was interested. Or maybe he just didn't want to waste time polishing the book and stop people from getting the ideas in it. Or maybe he just didn't feel the story ended. Either way, for me it added to the charm and realism of the book, rather than take stuff away.

It was heartbreaking to read about the death of Gene Shoemaker. In the book - the author took it hard - but it so happened I was reading the book while they announced the death of Brian Marsden, another proeminent character in the book, and I felt the pain anew.

Bottom line: you should read this. If not for the quality of the book, not for the realistic description of government agency inner workings and personal tricks to get something done, if not for the amazing person that Anthony Zuppero is, read it for the detailed description on how we could today (actually, from about the 1980's) inexpensively inhabit the Solar System.

and has 0 comments
The Void Trilogy ends with The Evolutionary Void in a typical Hamiltonian way: completely off the scale science and fights, actions with galactic and universal implications and the bunch of special heroic people that lead the entire story to a climactic finish.

I couldn't wait for the last book of the trilogy to get out and I finally got hold of it, but more than a year had passed since reading the first two. Most of the characters I had to remember while reading the book, something that degraded a bit the reading experience. Take it as a hint: before starting a Peter F. Hamilton series of books, make sure they are all available before you start, as you can't let them out of your hands until you get to the end and the feeling of loss is horrible.

Now, about the book itself. The middle of the galaxy hosts an all devouring and unstoppable Void, inside which thought is the main law of physics and which feeds on the mass of the worlds outside in order to sustain itself. Basically, the heroes in the book are battling galactic cancer. The style of the narrative mixes incredibly advanced technology with an archetypal feudal heroic fantasy, bringing them flawlessly together at the end. Not everything makes sense, but then again, not everything could. Simple solutions to problems were available, but never explored, and some characters were popping in and out of the book stream like so many quantum fluctuations. But on the whole, it was a great reading, keeping me connected for the entire length and, unexpectedly judging by the Hamilton books I have read, with a good, satisfying ending.

Now, I plan on reading some non fiction books, then I will probably return to the Prince of Nothing universe. After that, who knows?


I almost expected the guy to be Canadian. :) This series of fantasy books is a masterpiece of writing. Not only it is complex of plot and emotion, but the characters are many, diverse and (most of all) different.

So far, the A Song of Ice and Fire saga, written by American author George R. R. Martin, consists of four books, the first published in 1996 and the last in 2005. At least three other books are planned in this series. The plot is a historical fantasy, but one unlike the books I've read recently. The aspects of magic and otherworldiness are rare, the bulk of the writing being about the feudal world, with kings, knights, low borns, maidens and whores, thieves, rapists and murderers, plotters and honorable men. No wonder that, lacking a lot of special effects, the story has been selected as the basis for a TV series.

But what is more important than anything is that the writing is really good. The characters are all human, with needs, desires, qualities and faults. You can't help but empathise with them, only to suffer at the cruel fate the writer bestows upon them. Not one escapes unscathed from the malice and pettiness of other people or from shere bad luck. You get to like the characters, then Martin fucks them up. I really wanted to use a more elevated language here, but it's the truth: the world he depicts seems horribly real, not a fairy tale of valiant white knights and pure maidens, but of ridiculous people grabbing lustfully whatever life offers them as it is unlikely their fortune is going to last long.

For the bad part, though, I think the author went too deep, got himself responsible for a lot of characters that he must now move forward, in gruesome detail. The fourth book became so large that he had to split it. He did so by character and geography, rather than by time, so a lot of the characters were missing from the fourth book, A Feast for Crows, and left for the fifth, but acting in the same timeline. At the end of A Feast for Crows the author explains his decision to not just split the book in the middle with a "To Be Continued" ending, and hopes for a publication of the second half in a year. That was in 2005. Ahem.

A lot of people are a bit confused by the long wait for the fifth book. Martin keeps making promises that he doesn't keep and, in July this year, he announced that A Dance with Dragons is already 1400 pages long and 5 chapters close to completion. I hope he does finish it quickly enough, although that would only prolong my suffering anyway. I am sure the fifth book will be as brilliant as the others, but then I will have to wait another 5 years for the sixth. I know TV series usually have no plot, but at least they come weekly ;)

Bottom line: The books are great, I recommend them to any lover of fantasy or even historical novels. I can hardly wait for the TV series, A Game of Thrones, as well.

and has 2 comments
While waiting for the tenth book in the Malazan Book of the Fallen saga, I went and read Prince of Nothing, by another Canadian author, R. Scott Bakker. This is a three book story, first published in 2004, about what I can only describe as a psychopath, member of a rationalizing sect, going out into the world to protect the secret of said sect.

The book is well written, although not nearly as brilliant as the Malazan series. However the subject of it is very interesting, at least from my standpoint. It concerns a human that is trained in the ways of mental manipulation, rationale and causality, something akin to the Vulcans from StarTrek, but with a very human side to it, the one that pushes one to amass power and use their knowledge to manipulate.

No wonder that the "prince of nothing" is the central character in the books, but not the main character, the role being left to a sorcerer, a man that is at the same time keeper of arcane knowledge and the scorn of ordinary humans. I can't help but empathize with the guy: basically a geek in love with a whore, while a psychopath destroys his world with insidious manipulation. ;)

There is another central character to the story, an insane barbarian, like a tortured Conan, who is both terrifyingly strong and ridiculously fragile, both a mindless warrior and a brilliant strategist. He is also, like Achamian the sorcerer, an exponent of humanity.

Prince of Nothing is a very smart book, one that can only get better as the writing skills of Scott Bakker improve. Its assets are both a scientific approach to the human psyche and a veritable intrigue of arcane powers in conflict with each other on the background of huge masses of clueless people. The plot itself is similar to the story in the Berserk manga, at least its start, where the strong warrior chooses to follow the charismatic and ambitious leader only to his doom. The moral, as I saw it, is that while we choose to live our lives with eyes closed, we cannot in good conscience pretend to deserve control over what happens to us.

I hope the series, known as "The Second Apocalypse", continues, since Prince of Nothing raised more questions than gave answers and the plot really caught my attention. A nice book that I warmly recommend.

and has 0 comments

You know when you are playing some famous game you get millions of pages discussing strategies and solutions to in-game problems? Well, if you think about it, all those pages could be brought together and bound in something like a book. Why not write StarCraft for Dummies or Professional Warhammer 40000? And with that in mind, how would you feel about a book whose entire purpose is discussing Pac-Man?

Curious yet? You can check it out here! It writes about the algorithms used in the game, the tips and tricks for playing, even the different personalities of the four killer ghosts! Everything complete with pictures, diagrams and YouTube videos!

and has 0 comments
If there was any doubt about the style of writing and book structure for the first novel from Ian Cameron Esslemont in the Malazan universe, the second book: The Return of the Crimson Guard, dispelled any. One can barely see a little more focus on action than on description compared to Steven Erikson, but, having read it, I feel like this is the tenth novel in the series, not the second in a parallel Malazan world.

First of all, it is a full length book, similar in size with the ones written by Erkison. Again we see an amassing of forces, set to converge towards the climactic end. There are the Avowed of the Crimson Guard with a full army of mercenaries in tow, there is Lasseen, empress of the Malazans, there are Seguleh, man-beasts, D'ivers, Soletaken, mages of huge power, Claws, Talons, Seti, Wickans and the all pervading regular Malazan soldier, with focus on our favourite sort: the sapper :)

I have to say that the writing is so similar to Erikson's, that it even acquired the same problems. There is a lack of finality to just about anything. One just knows that a lot of questions will remain ... not unanswered, but simply ignored... and that the next books will bring more wonder, more magic, more characters, all dancing around this huge singleton of a main character which is the universe of the Malazan Empire. It's refreshing, it's great... it's annoying!! :)

Having said that, this was another great book, one of those writings that make me want to abandon programming to start writing, even if I know nothing about it, one of those books that make me want to abandon watching movies altogether, for lack of detail and significance. Now my big dillema is what should I read next...

and has 0 comments
Forced to wait for the tenth and final novel of the Malazan Book of the Fallen series, due to be published this year, I've started to read the books placed in the same universe written by Steven Erikson's friend, Ian Cameron Esslemont. The first of these books is Night of Knives, which is rather short compared with Erikson's novels or, indeed, with the second Esslemont book, Return of the Crimson Guard, which I am reading now.

The book is alert, as it spans a single night on the island of Malaz, during a rare event which weakens the borders between realms. Anything can happen during this night and, indeed, does happen. The island is assaulted by alien ice magic water dwellers, the dead house is under siege and Kellanved and Dancer are making their move towards the throne of Shadow realm. Meanwhile Surly is Clawing her way into the throne, a natural talented girl with too much attitude is trying to get a job and start an adventure and an old retired soldier gives his all once again.

All and all, it was a nice book. The writing style is clearly different from Erikson's, with less descriptive passages, a little more action and a more positive bias, tending to lend people more good qualities and having them end a little better. However, it only takes a few pages to get into the Malazan feel of things and enjoy the book.

and has 0 comments
The word that I think best describes the book is "naive". That's not necessarily a bad thing; people have been hooked by naive stories since forever. Isaac Asimov had some very simplistic plots where everything was going well for the main character. The Harry Potter series was also what I could call naive; didn't hurt it much. From the same perspective I can say that The Vorkosigan Saga, which now spans about twenty novels and short stories, had its share of success (and three Hugo awards) no matter what the writing style. That writing style should have evolved anyhow as each book was written.

Back to The Warrior's Apprentice, though. It's about a kid, son of royalty on his home backward planet, who singlehandedly buys a spaceship, runs a blockade, creates a mercenary force, fools everybody that he is older, is smarter than anyone and also foils a ploy to destroy his father. And the drama is, as teenagers go, that he doesn't get the girl. Now see why I call it naive?

However, I am sure I would have gobbled the whole series up when I was fifteen, so, even if I have decided to not read the other books in the series, it depends on what your tastes are. The Warrior's Apprentice is an easy to read, easy to follow, shortish book. As a travel book I guess it would be decent.

I've finally finished the book WPF in Action with Visual Studio 2008 by Arlen Feldman and Maxx Daymon. Simply put, it was a great book. Most of the programming books focus too much on structure, resulting in very comprehensive information, but giving one little in the way of actual work. WPF in Action is describing features while using them in a few applications that are built almost entirely out of code printed in the book. I think this is the second book any beginner in WPF should read, the first being one of those boring comprehensive ones :)

The book goes from a brief history of Windows Forms and WPF to Hello World in part one, then to describing layouts, styles, triggers, events and animations in the second part. The third goes to create a wiki application using commands and binding, datatemplates, converters, triggers, validation, then custom controls and drawing (including 3D!). I am a big fan of the MVVM pattern, but I liked that in this book, while it got described, it didn't suffocate the other topics, getting only a small subchapter in the binding section. The fourth part explains navigation, XBAP, goes briefly through ClickOnce and Silverlight, then has a large chapter about printing (too large, I believe). The book finishes with transition effects, interoperability with Windows Forms and threading.

All in all I think it was a very nice read. The authors clearly have a lot of experience and are quite qualified to talk not only about the features in WPF, but also the gotchas and some of the problematic implementations or even bugs. The fourth part of the book was a bit of a bore, though. After a pretty heavy 3D drawing ending of part three, I get to read a whole lot about really boring stuff like printing. I am sure that when need arises, though, this is the first book I will open to see what they did.

Bottom line: First three chapters are a must read. Maybe skip the 3D drawing part the the end of part three. The fourth is optional. The authors themselves said that they intended to write something that could be used as a reference, and I think they succeeded. So read the table of contents and see which parts of WPF you are really interested in in those optional parts.

The WPF in Action with Visual Studio 2008 link goes to the publishers site, where you can download the source code and even read some sample chapters.

and has 0 comments
I don't know what to say about Dust of Dreams. It is the first book in the Malazan Book of the Fallen series that is only partially finished, only the first part of a larger story, spread over the ninth and tenth books of the saga. Since the last book from the series, The Crippled God, is not yet released, I have to wait for a year until I get to know what happened.

This being said, I don't really know what happened in this book, either! The Adjunct moves all her forces towards Kolanse, the last of the K'Chain Che'Malle are rising up, there is a group of undead Jaghut that work together, two pairs of Eleint blooded ascendants that have yet to betray each other, a bunch of semi-undead (they have their memories) T'Lan Imass, three pesky gods, a schizophrenic Icarium... the list goes on and on... One thing is for certain: I doubt the tenth book will be able to satisfyingly end the story. The huge number of storylines pretty much guarantees it.

So, I liked the book, but I feel I need to reread it to understand it, maybe just before the tenth one is released. Meanwhile, I am oscillating between the Vorkosigan Saga and the Discworld Saga... Whatever should I start reading? Considering they both have about 20 books each...

Update: It seems the release of The Crippled God has been delayed until 2011, even if there were hopes it would appear in libraries this autumn. Damn!

The book started really nice, at a beginner to medium level with which I could not feel neither embarrassed nor overwhelmed. The first chapter was about the expressiveness of Javascript and how different styles of programming could be employed to achieve the same goals. This part of it I would have liked to see expanded in a book of its own, with code examples and everything.

The second chapter was also interesting, comparing the interface style of programming with the options available inside Javascript as well as giving some real life solutions. Personally, I didn't think the solutions were valid, as writing the interface as comments and trying to enforce the interface inside methods and getters/setters feels cumbersome and "unJavascriptish" to me.

The third chapter, Encapsulation and Information Hiding, described object creation, private, privileged (not protected!) and public members, while the fourth was dedicated to inheritance. All these are great reading for a Javascript programmer, as they might teach one or two new things.

From then on, 13 chapters described various software patterns and their application in Javascript. Alas, since this was the explicit purpose of the book, I can't say I enjoyed that part of the book. It felt like any other rehashing of the original GoF book, only with the syntax changed. Well, maybe not quite so bad, but it lacked a consistency and a touch of the writer's personality that makes books easy to read and to remember.

That being said, the technical part was top notch and the structure of each chapter made it easy to understand everything in them. The software patterns described were: Singleton, Chaining, Factory, Bridge, Composite, Facade, Adapter, Decorator, Flyweight, Proxy, Observer, Command and Chain of Responsibility.

Overall, a nice book for reference, but not one that I would call memorable. An easy read and also an easy browse, since one can pass quickly through the book and still understand what it is all about.

and has 0 comments
The eighth book in the Malazan Book of the Fallen series, Toll the Hounds was the worst, I think. First, Steven Erikson experimented with a narrator of sorts, all philosophical and moving the "frame" of the story with wise sounding words that actually sounded fake and convoluted like Kruppe's. Second of all, most of the characters started thinking deeply about all kinds of things that had no real relation to the story, all metaphorical and stuff. Third, the stories themselves were vague, disconnected or filled with "his words brought tears into his eyes" scenes. I swear, even Kallor sheds tears at one moment. The ending was a disappointment too, where the convergence of forces that we got used to in the series seems random and pointless. To top it all off, Fisher Kel Tath made his appearance, thus filling the book with bard poems.

As for the story itself... if you wanted closure on something previous, tough luck. Some new characters, some old ones die (including Hood, how cool is that?) most of the action happens in Darujhistan, while the rest is in Black Coral. No Crippled God at all! Also you may find Wiskeyjack fighting in Hood's army. Didn't they ascend? What is he doing there? Pointless battles abound (and I mean pointless, they are not even strategic, just an enumeration of people starting the fight and then, later on, finishing it. Most of the time the result is pretty much known beforehand, but the battle is honorable or something like that.

Mixed news about the ninth and tenth books in the series. First of all, the series ends! Yes, a huge book, with so many open ends and a great mythos, just ends, because the contract was for ten books. That is both brave and insane in the same time, although I suspect that future books will be scoped in the same universe, just not as part of the Malazan Book of the Fallen series. The books nine and ten will actually be a single two part story, with the ninth ending in a cliffhanger. Erikson apologized for this:

While I am, of course, not known for writing door-stopper tomes, the conclusion of The Malazan Book of the Fallen was, to my mind, always going to demand something more than modern bookbinding technology could accommodate. To date, I have avoided writing cliff-hangers, principally because as a reader I always hated having to wait to find out what happens. Alas, Dust of Dreams is the first half of a two-volume novel, to be concluded with The Crippled God. Accordingly, if you’re looking for resolutions to various story-threads, you won’t find them. Also, do note that there is no epilogue and, structurally, Dust of Dreams does not follow the traditional arc for a novel. To this, all I can ask of you is, please be patient. I know you can do it: after all, you have waited this long, haven't you?

The ninth book, Dust of Dreams, started cool, though, in a KChain Che'Malle city with a Matron giving a Destriant the task of finding a Mortal Sword and a Shield Anvil. The Destriant is human and the Matron is insane. Promising, huh? I was considering waiting for a year and reading both ending books, but how can I now?

and has 0 comments
Reaper's Gale, the seventh book in Steven Erikson's series called The Malazan Book of the Fallen made me feel all kinds of things. There was boredom a lot of times, there was uncomprehension in others, there were moments when tears flowed from my eyes as well as great moments of tension. At the end of it, I feel unqualified to actually discuss it. It is still a great book, it ends with a convergence of paths, as all the others have, but it somehow felt different from the previous six books.

I believe that Erikson fell into a well known writer trap. He was so caught in his own world, that he forgot most readers are not, and cannot be unless with great effort. Therefore the characters got out of control. They did things as they pleased, regardless of the reader's need. That is why I think this book was weak compared to the others.

The plot is too complex to expand here. Enough said that Icarium, Karsa Orlong, Quick Ben, Mael, The Errant, Fiddler and Hedge, Bottle and Beak, The Adjunct and Lostara Yil and all the Bonehunters, they all meet in Letheras. Even after reading the book you don't get to know why all that buildup was for, why in the last 50 pages all the characters acted so strangely, where Karsa and Icarium went and, most of all, why did a woman Seguleh have such a small part! The dragons (all of them) are beaten senseless, the Sengars have the worst of luck and the t'Lann Imass are just peripheral characters.

As did the sixth book, but at a larger scale, more avenues are opened than closed. I can barely wait reading the eight book, but I feel cheated a bit. Hope lives on, though :)

and has 0 comments
Oh, man, what a book this is. Steven Erikson uses a pattern in his epic Malazan Book of the Fallen series, with books that are standalone(ish) and others that continue the humongous story arches started in previous (or, indeed, later) books. The Bonehunters was heralded like a separate story, however that cannot be said to be true in any way. Old characters, patterns that evoke old stories, as is the birth of the Bonehunters, reminiscent of the Bridgeburners, and the sheer number of new characters, races and even gods make this book more of a hinge rather than a singular pillar in the epic. The number of open ended threads and unexplained new characters paves the way for the next four books. I am already starting to fear for the ending of the series.

What the book is about is difficult if not impossible to explain. It starts with a military campaign of punishment against the remnants of the Seven Cities army, but it ends suddenly and quite strange. The leadership of the elder Tavore sister unites the Malazans and binds them to her, in truth becoming hers and not merely an imperial army. There are strange machinations and moves from all the gods one can imagine, most of them hidden and quite hard to understand. What is even harder to explain is the way the empress allies herself with Mallick Rel and Korbolo Dom and starts rumours that make the Malazan population hate the Wickans, in truth war heroes of impecable honor. The ending is explosive but in no way final, leading the path onwards in the story.