So you have a product that has an MSI installer and installation works perfectly. But you want to install the product using the /quiet flag, so that you automate the installation or for whatever reason and now it fails all the time. First of all, do the normal thing when you have an MSI installation error:
  • Install the package by manually running msiexec and add verbose logging: msiexec /i My.Setup.msi /L*VX theinstall.log ... (your extra parameters, including /quiet here)
  • Open theinstall.log file and look for the string "Value 3" which is the line where the install actually failed
  • See if you can see what caused the fail

My setup would take properties from the registry and only need the user password to be supplied, so I used it like this:
msiexec /i My.Setup.msi /L*VX theinstall.log /quiet USERPASSWORD="thepassword"
For me, the reason for the failure was very unclear: "CreateUser returned actual error code 1603". I had the user, I had the password, what was going on?

The solution was to add ALL the properties needed. With a silent installation, it seems some of the actions in the UI are ignored. It's not just quiet, it's skipping things. In order to get a list of all possible properties, open the same install log and look for "SecureCustomProperties", which should list all the properties that you can set from the command line, separated by semicolon. I am sure I didn't need to set them all in order to work. In fact I didn't. I only used the ones used in the UI.

Hope it helps.

and has 0 comments
It was difficult to finish Lowball. First of all, I didn't remember a lot of the characters that were supposed to be well known. That's on me. Second of all, a lot of pages were dedicated to the personal life of one or another, including family squabbles and marriage proposals and all that. I don't know about you, but myself I didn't need or want to read that. It made the book feel boring and lifeless. But the worse sin of the book was that it was unbalanced.

Melinda Snodgrass describes action that happens in the middle of Jokertown, a small area of New York populated with jokers, people affected by an alien virus that changed them into impotent ugly monsters, then extends it to the outskirts and eventually other countries, involving as hero characters: a local police officer, a SCARE agent, his old friends, local jokers who are slightly aces (aces have advantages conferred to them by the infection) and - did I mention - their significant others, mothers in law, etc. The scope keeps shifting from aces and law enforcement agencies that are paralyzed for no real reason to regular people who somehow do more than anybody else, from international intrigue to very local issues. Some of the stuff that happens bears no real relevance to the main plot.

The book eventually became a bit more focused and the action started to pick up. And when I was finally getting to the point where something was going to happen and closure was close, the book ended. What the hell happened? Not even an epilogue. Abruptly everything ends with a cliffhanger that you can't even understand and credits roll. The next part of the "triad" of books seems to be High Stakes. I will read it, too, because I want to read the Wild Cards books in their entirety, but to be honest, I don't think I even enjoyed Lowball.

and has 0 comments
There is this old joke about how having a senior developer around is like having a little child sitting next to you. "How do I do that?", you ask. And the SD asks "Why?". "Well, the boss asked me to" "But, why?. "The client wants it" "Why?". "Because he needs this other thing" "Why?". I am afraid the joke is very true. Usually, at the end of the exchange you get to the real need at the base of the request and understand that it is the thing that must be fulfilled, not the request as it came through several filters, each adding or removing from the real purpose of the task. And if there is something I want to impart from my extensive experience as a software developer it is that you must always start from the core need and go from there.

However, I am not here to discuss how to write code, for once, but on how to organize your team (or yourself as a team of one) from this need driven perspective. And please don't call it NDD and read it NEED or whatever, because this is just a general principle that can help you in many domains. So let's analyse Agile. It's been done to death, so what I am trying to do here is not summarize what others have done, but to simplify things until they don't even need a name anymore.

First, what is Agile Development? Wikipedia says: "Agile software development is an approach to software development under which requirements and solutions evolve through the collaborative effort of self-organizing and cross-functional teams and their customer(s)/end user(s). It advocates adaptive planning, evolutionary development, empirical knowledge, and continual improvement, and it encourages rapid and flexible response to change. The term Agile was popularized, in this context, by the Manifesto for Agile Software Development. The values and principles espoused in this manifesto were derived from and underpin a broad range of software development frameworks, including Scrum and Kanban."

So Agile is not Scrum, but Scrum is underpinned by Agile principles and values. That is important, because many shops want to do Agile and so they do Scrum or Kanban and they either try to follow them to the letter (purists) or adapt them to their requirements (which is more in line with Agile principles, but the implementations usually suffer). One wonders how come there are not a lot of different methodologies out there, just like there are software patterns or programming languages. The answer is that no one starts off with understanding their need for Agile and in fact many don't even know or care what it is. They do Scrum so that they get the Agile badge, they tell everyone they "do Agile" and pompously ask their candidates if they "know Agile".

But if someone asks "Why do you want to do Agile?" the answers are not so easy to get. Of course there are advantages in the approach, that is why it's so popular, but you don't get advantages for your collection, they need to drive you to some kind of goal. One might say that for every process you need metrics in order to analyse your progress. Scrum does that. You don't need metrics for the efficacy of the metric system, do you? But still you need some way of gauging the usefulness of your methodology itself, otherwise we would still be using imperial units.

I am more accustomed to Scrum, but I don't want to analyse it, instead I want to measure the usefulness of Agile as a concept by asking the very simple question "Why?". As we've seen, its attributes include:
  • self organizing teams
  • cross functional teams
  • collaborative effort between teams and customers
  • adaptive planning
  • evolutionary development
  • empirical knowledge
  • continual improvement
  • rapid and flexible response to change

Why self organizing teams? That's the first and one of the most important and complex aspects of Agile. If the team self organizes, then everyone in it shares responsibility. There is no need for micromanagement from above, the team acts as a unit, you get it as a neat package that you don't care about. In theory when a team is inefficient from the organization's point of view, you should fire the team, not individual people. If one member is not performing as expected, then it's the responsibility of the team to fix them or get rid of them. Also theoretically, an Agile team doesn't need a manager.

But in practice I haven't seen this implemented except in small startup teams. There is always a manager, a director or more of them. There is always micromanagement. There is always some tendril of HR or organizational graph that affects people individually. Why is that? Because teams are cross functional, too. A developer doesn't need or want in any way to have to measure the work efficiency of their colleagues, have to tell them how to do things or get to the point where they have to push for firing them. A developer doesn't want to administrate the team. So what is a manager in the Agile world? That's right, a member of the team. If devs would not have a manager, they would probably hire one, as part of the self organization of the team. Moreover, for teams inside larger organizations like corporations, the "customer" is the corporation, so the manager role is often combined with the one for "customer representative" or "product owner" or "producer" or something like that. They're the people you go to in order to understand what it is you have to do.

And since I've started talking about cross functional teams, this means that Agile doesn't need or indeed recommend that people be interchangeable, having the same skill sets. Whenever you hear someone say "everyone should know everything" that's not Agile. It's just a sign that someone from above wants to micromanage the team without having to know anyone in it or ever decide the direction it should work in. It's the sign of a top-down approach that is ultimately inefficient from both directions: the team feels pressure it doesn't need while being restricted in what it can do and the management has to perform tasks that they don't need to do. I haven't seen one team of people treated as interchangeable units be efficient, nor have I heard of any. So why cross functional teams? Because people are individual beings and are different and, for every skill they have, they put in effort to first reach a basic level of knowledge, then more effort to become good or even expert at them. An Agile team needs to be flexible enough to accommodate for any type of person, within reason.

As an aside, think of the skills of a challenged person. The legislation of many countries requires now that software be accessible to a wide variety of disabled people. So whenever you hear that people should be versed in all aspects of the team's business ask them for Braille courses.

Cross functional also includes the skill of knowing what the customer wants, whether they are a member of your organization or someone sent by the client. It's one of the most necessary roles to be filled in a team. If a team were a living thing, the product owner would be the eyes and ears. You can be strong, fast, deadly, but it doesn't help if you can't find your prey.

So why collaborative effort between team and customers? Because you need to know why do you what you do. This entire post is dedicated to the question of why, so I won't press this. Just remember that if the team doesn't know why something is required or necessary, then it is not yet fit to perform that task. People are going to hate me for this, but we've already established the need to understand the client and that in large organizations the customer is the organization, so the logical conclusion is clear: office politics, psychopathic displays of power, idiotic decisions coming from up high are all part of the requirements. There is a caveat, though: the need of the customer needs to be clear, not the want. If the liaison to the customer is withholding or unaware of the real reasons something needs to be done, then the team suffers.

As an aside to all manager or high corporate types out there, it's way better to explain to a team that they have to scrap a project because you hate the guts of the person who proposed it, than to invent business reasons that are clearly bullshit for destroying months of loving work. In the first case you honestly admit you are an asshole, but in the second you prove you are one.

Now, what's this about adaptive planning? If you already know what is needed, someone should let you do your job in peace. You come to them when it's done. That was the fallacy of the Waterfall system. That is also why Waterfall still works. In a situation where needs are clear and do not change, there is no need for agility. Unfortunately, these situations are rare, especially since I've included in the list of customer needs the legacy of us being descended from apes. That means adapting quickly, without regret, changing direction, sometimes turning back completely, abandoning projects, starting new ones that you recommended starting years ago and was laughed out from the room for it and so on.

It's not only that. Adapting to your client's need is something that you would have to do anyway, in any realistic scenario. But it also means that you have to adapt to the technological changes in the world. Maybe you have to rewrite your code with another technology or explore new ones that just appeared out of thin air. Adaptation means that a big part of your job as an Agile team is exploration. This is emphasized by the empirical knowledge attribute above. These two go hand in hand. You adapt by understanding and for this you must be in the loop, you need to know things. Well, one of the members of the team needs to, at least. Adapting means "rapid and flexible response to change".

Therefore, whenever someone asks you if you are Agile or demands that you are, you can tell them about all the new tech that is rumored to come out this year and how you can barely contain your enthusiasm to be working for someone who enables exploration in the true spirit of Agile. Preferably after you've signed a contract, maybe.

But I talked about adapting to new requirements and changes in the environment, not adaptive planning. Adaptive planning is planning for all the things above. In other words, when you start a task, plan for the possibility of it changing, having to be abandoned or having to be redone in a different shape. And here is a point of much contention, because you can do this as any level. If you do it whenever you have to change the color of a button, you will overestimate all your work. If you do it at the level of the entire enterprise suite of products, you might as well do Waterfall. In any respect, it is the entire team that needs to know and decide what they plan for drastic changes.

Yet there are two types of reacting to change: planned or chaotic panic. Adaptive planning refers to planning for change, not preparing for working in complete chaos. That is why Scrum, as an example, splits planning into small periods of time (2-4 weeks) called sprints for which the work planned needs to be finished. If anything drastic (like a task losing its relevance) happens, the sprint is aborted. The sprints themselves can be in relative chaos, but inside one planning and order prevail. It doesn't mean planning for an irate boss man to come and tell you every day to change this and that. It means having a list of tasks that you can edit, whether by removing or adding tasks, rearranging their priority, or even adding tasks like "how to deal with this insane man coming into the office and spouting obscenities at me", then execute them in order. In no way does it mean that you do things by the ear or plan for something and then ignore it.

Two aspects remain to be discussed: evolutionary development and continuous improvement. Both strongly imply awareness of the development processes through which the teams goes. It's the team equivalent of introspection commonly referred to as retrospective. What did we do? How does it compare with what we had planned? What does it mean for the future? How can we do better? and the Why of it is obvious, you've got a good thing, how can you get more of it? Yet this is the point that is hardest to put in a box. Various methodologies attempt to introduce metrics to measure progress and performance. Then, with the function of the team properly computed and numbers assigned to its yield, one can scientifically tweak the processes in order to get the most out of the resources the team has. This is a wonderful concept and I agree with it in spirit, but in practice frankly, I think it's bollocks. It pure shit. It's circular logic.

Here we are, discussing a beautiful philosophy of doing work for maximum benefit by letting a team of very diverse people organize themselves towards a common goal, being ready for anything, adapting to everything, pushing through no matter what by leveraging their individual strengths. And then we come and say "Wait, I can take all this, name it, measure it, put it into equations and then tell you how to improve it!". Well, why didn't you do that from the start, then? Why bother with all the self expression and being able to adapt to anything new? If all is old under the sun, why do Agile at all?!

I believe this is the part where Agile methodologies fail utterly and miserably and can't even admit to themselves that they have. I agree that progress needs to be visible and the ability to compare it with other instances is essential, but from here to measuring it numerically is a large distance. Forget the usual arguments against measuring team success: the team composition is not fixed, the type of work it different, team dynamics means people behave differently, personal and local events, and so on. It's bigger and simpler than that. I submit that since the entire concept of Agile rests on the principles of flexibility, the method of gauging success should also be flexible and especially the way the team processes are tweaked for the future.

And I have proof. In every company I've ever been or heard of the Agile methodology of the place didn't quite work in various ways and that was apparent when people were laughing or disrespecting that part to the point of ignoring the rules in place. And the common bit that didn't work for all of them is the retrospective. The idea of asking "what problems did we face?" and then immediately finding and enforcing solutions with "what can we do about it next time?" has become such a mantra that it is impossible to ask these questions separately. It's become reflex (to the horror of wives everywhere) when you hear "there is a problem" to ask immediately "what can we do to fix it?". There is an intermediate question that must be inserted there: "Is this really a problem or do I just have to be aware it happened? Can we ignore it?". This is another topic, though.

A short summary would be:
  • responsibility is shared between all the members of the team and decisions should be taken as a team
  • any member of the team is valued for their contribution towards reaching the team goal
  • the manager is not your boss, it's just the role of a member of the team
  • the Scrum master or Kanban master or whoever does the accounting in whatever methodology you use is still a member of the team
  • having a member of the team understanding the needs of the customer is essential; they are the people you go to ask "Why?" all the time
  • adaptation need to be written in the DNA of the methodology; the team must plan to change its plans, but still do things orderly
  • experience should guide the team to define progress and improve itself
  • transparency of the team goal is necessary for the team's success
  • there is no improvement of the development method (or the code) without exploration and the entire intentional participation of the team
  • never be afraid to ask why; if you work in an environment where you are afraid, consider changing it

Let me tell you the typical story of the development team. First there is chaos, someone decides they are a quick and dirty team and they can do anything, fast, cutting all corners into a straight line to hell. Mistakes are made, blame flies around, people are fired, emotions get high, results go nowhere. There is need for order, all cry out, we need to use the holy grail of software development and the greatest human invention since fire (that week, at least). And then a specialist is called. He either becomes part of the team, with the role of teaching and enforcing rules, or just teaches a few courses, gets their money and leaves before hapless fools try to put in practice whatever it is they thought they understood. The result is the same: developers first like it, then start grumbling about the indecency of having to fill out documentation before any code is written, or updating it, or adding tasks in whatever software is used (or Post-Its on a whiteboard, if you are a purist and still haven't figured out developers can't use a pen to write). So either morale plummets and the operations continue with diminishing results, or the grumbling becomes a rallying cry to make a change. And the change is... chaos again.

In short, just like a revolutionary South American country, they can't decide if they want freedom or dictatorship, because both options have big damn flaws and anything in between is sucking their life away.

But why?

It's because even methodologies are subject to change, to human whim, to altering conditions. If you look at the beginning of this enormous post, it all started with the main goal and meandered from that, just like an Agile methodology in a real firm does. What is the goal of the team? And don't you look at your manager to tell you. As a team, responsibility is shared, remember? If the purpose is to turn perfectly enthusiastic software developers into soulless drones... you should run away from there. But if it is not, think about the things you are doing. Are they helping or are they not helping? This week at least.

In conclusion (or retrospect?) I believe Agile is a great idea, but its underpinning principles of always being aware of the situation and adapting to it are a more general and useful concept to remember and live by. Truth and knowledge comes before adapting and many software shops fail there, so the methodology is irrelevant. Then the method of work chosen should reflect the flexibility it enables. I don't believe in a pure anything, and certainly not pure Scrum, pure Kanban, pure Agile, but whatever you cook up, it should work towards the real goal of the team, as known and acknowledged by everyone in it. What's your function in life?

and has 0 comments

The Power started strong and then it fizzled. The idea is intriguing: what if women would suddenly get a power that would change the balance between sexes? Men have muscles, women have the power of electricity at their fingertips. The whole book is about the effect this would have on society and, as it was highly recommended by Margaret Atwood, I've decided to read it.

Unfortunately, Naomi Alderman is not going places with the idea. It takes a special kind of person to write a book about how the fate of the world would unfold, but not be able to describe even one meaningful relationship between men and women. And with that gaping absence comes a scenario that is pretty difficult to swallow. Having the power of electric eels, women in Saudi Arabia, Iran, African countries and most of all, dark Moldova, where the entire south of the country is just about caging, selling and using women, gang up together to overthrow the rule of man. Forget about simple and cheap solutions against electricity, forget about how no amount of electrical power could rival guns, tanks, gas or bombs, forget even about the terribly naïve view of a neighboring country (I am Romanian), but what about the fathers, husbands, sons of all those women?

In this book, once women get a taste of power, they immediately turn into electric monkeys, changing their culture, their beliefs and their entire identity in one fell swoop. They stay together in huge mobs, create countries for themselves and even consider killing all men except the ones they keep for breeding. There is little mention of families, men or any significant human response to such a policy. I couldn't help thinking of the Battlestar Galactica quote: "Slaves dream not of freedom, but of becoming masters".

You will probably think of another similar story, The Handmaid's Tale, but there is subtlety in that book. Women are not oppressed by men directly, but also by their fellow women who bought into the idea. The religious fervor touches all aspects of society, including family, commerce, politics. In The Power, it's like men exist for no other reason than to rape, beat and abuse women. The only good guys in the story believe women really should rule the world and that their time was long in coming.

So to summarize it all: this is a lazy book, filled with personal ideas about the world that bear little resemblance to reality, therefore difficult to follow with any interest. The writing is professional, but the characters are cardboard, single drive creatures, and rarely sympathetic. What would have been the most important part of the book: the relationships between men and women or inside families, is either absent, naïve or focused on power games. It has more in common with Planet of the Apes than to The Handmaid's Tale.

Update: And of course they made this into a series. I will try to watch it and see if it improves the story, but the first few minutes feel just as lazy and wishful thinking driven.

and has 0 comments
In Pieces is a nice read. It made me understand things about people and women in particular that I had no chance of knowing because, let's face it, all people lie about themselves and films lie about everything. Sally Field is both very honest (I mean the effort is palpable) and narrating her own version of the story of her life. Can you trust it? Can she trust it? Before you ask how did she remember what she did as a young woman when she wrote the book at 71, learn that she obsessively kept daily journals about her life. She kept reviews to her films, random pictures of her on the filming set or with her family, letters and so on. Funny enough, she never read the reviews until much later. I think that was wise. If this post were printed, she probably would keep it, too.

The book starts with Field's childhood, described as a continuation of the lives of her mother and grandmother, goes through her personal and work life until she is about 40, when she wins the Cannes Palme d'Or and the Oscar Academy award (her first) in the same year. I feel like she thought that was the peak of her life and the next twenty plus years (and a new marriage and a new son) are described in mere paragraphs. However the ending is very emotional as she tells the story of coming to terms with her emotional issues, going to a psychologist for the first time and finally talking frankly with her mom - at the age of 63! It's never too late - and ending with her mother's death.

I loved the way she explained how the different pieces of her soul worked, hence the name of the book. I usually say what I mean and even if I am plagued by many personalities of my own, when I am duplicitous I usually planned and made a huge effort to do it. It must be the same for most other men, I think, because in our discussions we often decry the seamless way in which women can become someone else entirely, hide and basically cheat when interacting with others. A 2015 study on 2000 people showed that women lie about two times more than men, but an overwhelming majority of lies were told in order to make someone feel better, to avoid trouble, or to make life simpler. However, in Field's bio I have finally understood that sometimes this is not voluntary, it is a defense mechanism, it is something you learn from childhood when you have to be the nice little girl and fit in and still face cruel reality. A person can be open and social while at the same time being shy and introverted. It's not somebody being duplicitous, it's someone exposing the part of themselves that they feel will fit in. Of course, that's her take on it, but I dug it.

Bottom line, I think it was a lovely and informative book, even if it described child sexual abuse, matter of factly sexual harassment in the film studios, dysfunctional relationships with men that needed sexy stooge caregivers, not partners, and psychological dissociation in order to survive through it all (and act brilliantly). This is the second actor autobiography I read, after Peter Coyote's (which I highly recommend), and I loved both of them. Perhaps this is a genre that appeals to me because actors are taught to connect to their emotions and to become different people while staying aware of their true core, and so their autobiographies are more detailed, more personal. I will read more of these.

and has 0 comments
The Ballad of Black Tom is yet another book inspired by Lovecraft and featuring racially abused people of color. But unlike Lovecraft Country, this is not funny or adventurous, it is just painful. LaValle creates a complex character, a black man who respects his musically talented father, but neither did he inherit his old man's gift, nor can he abide by the man's strict moral code. In a world where magic exists at the fringes of human perception, he dabbles with things he should not and suffers for it. Stricken by grief, he becomes Black Tom.

I thought the story started kind of slow, then went a bit too fast, then ended too abruptly. Victor LaValle made me fall in love with the character, only to finish the standalone book on a vague note. After reading several stories that I was hoping were not sagas or trilogies or whatever (and they were) I finally get to one that I wanted to continue and it doesn't.

Bottom line: good book, but the main character was better. He deserves more than this.

and has 0 comments
Wool Omnibus is the first novel in the Silo series, by Hugh Howey, and comprised of several short sequential stories that are connected to each other. It's a post apocalyptic book, where people are cooped up in a "silo" to survive a world that has become so toxic that only minutes outsides dissolves an air tight suit and then kills you. But what is really true?

For almost all shorts, the lead character is a female mechanic who is both a great problem solver with high technical skills and a woman, so the perfect character for the age. I found that she was a compelling character and so I could read the book in a day. There isn't much else to say outside what I already described. It's easy to read, easy to empathize, easy to forget right after. In truth, the most interesting of the short stories was the first, because of its twist. The rest is a classic hero's journey, complete with egomaniacal villains and Romeo and Juliet like romances.

Personally I enjoyed the book, but I don't feel so engaged as to continue reading the series. It's typical Young Adult, even if the young adult is 34 and a competent mechanic. The tale came close to a sympathetic villain, which is one of the main things in great storytelling, but in the end it settled with the classic rule abiding tyrant that has to be overthrown by empathetic heroes. Average pulp, I guess.

and has 0 comments
I didn't like Bird Box. Josh Malerman seems to be a good writer, but the way he chose a cliché as the main character just in order to skirt the explanation of what happened and avoid any actual attempts of problem solving annoyed the hell out of me.

Imagine a world that is suddenly invaded by something, nobody knows what, but just one glimpse of it would make anyone (including animals) intensely suicidal. The main character is a young woman, left pregnant by some guy she randomly met, who has to deal with this new situation. Whenever the character gets too close to actually thinking about a solution or talking to someone who could find one, she gets all emotional because... children. This is such an ugly and demeaning trope.

The action is not that intense either. Imagine some people worrying day and night because they can't open their eyes. Yes, you can't drive! The horror! In several years covered by the out of sequence chapters no one actually attempts to function as a blind person would. The author just dismisses the possibility that true life without eyes makes sense. Everyone is stumbling (blindly) and relying on their hearing by shouting "is anyone there? go away!". Unless this is a metaphor for US foreign policy stupidity, these ideas fell on deaf ears with me. Deaf, get it?

Anyway, there is a Netflix movie made after this book, I have no idea why. It is could be better than the book, but that isn't a high standard.

and has 0 comments
I thought The Psychopath Test was not extraordinarily well written, but I enjoyed it. Imagine Jon Ronson, a tiny overanxious journalist and writer, going around the world to discover who are these psychos, what are they and who made or declared them thus. At times he has to make a connection with people who have violently killed or tortured others and I feel like only Woody Allen would make these scenes justice. A movie adaptation has been announced in 2015, with Scarlett Johanson in the main role and written directed by someone I don't know. What role would that be, though? There are no lead female characters in the book, although there is a woman who was caught in a bomb blast and then had to defend she even existed to a bunch of asses.

Anyway, what threw me off a little was the article/blog style of writing (called gonzo). It's not bad, I just wasn't expecting it. It feels like Ronson wrote several articles, with some overlaps, then glued them together to paint a larger picture. The result is an image of various widths and with some holes in it rather than a smooth picture. It does feel more personal, though, and perhaps this is what it should have been all about: the journey of a writer, hence journalism.

The book is not large and it is easy to read. In it we learn how psychopaths behave, why they are different from the rest of us, who created the rules used to spot them and, coming full circle, wonder if any of it is real. I think it was informative, but there are probably a lot more things to be said on the subject. As a personal journey to discover the meaning of psychopathy, it's a good book.

and has 0 comments
Lovecraft Country is a collection of short stories that are all linked, with the last bringing them together. It's a very fresh and original take, shining a light on racism in America in the 1960s, but also bringing in bits of the Lovecraftian fantastic. And to Matt Ruff's credit, he does both very well, considering the abysmal record of people trying to adapt Lovecraft and also that he is a white New-Yorker.

The heroes of the book are a family of Negroes (their word for it) and while magic and curses and monsters and parallel dimensions are present, the only horrific elements of the story is how they are treated by the white population. Yet they stay positive and resilient and survive. Each short story focuses on one of the family members, sometimes two, but only in the end they all play a part. I found the character of Caleb Braithwaite compelling, too, a roguish and charming magician, very similar to Jack Nicholson's devil character from The Witches of Eastwick.

I recommend the book and I feel like I want Ruff to write more in this universe.

and has 0 comments
After I've read Barry's The Great Influenza I had resigned myself to never read a book as well researched, as interesting and as viscerally informative, so when I started reading Pandemic, by Sonia Shah I had low expectations. And the book blew me away!

While I did notice some factual errors along the way, stuff that was either insufficiently researched or used for dramatic purposes, Pandemic was amazingly good. And terribly disgusting. If Barry took the high road of celebrating the heroes in the fight against pathogens, Shah writes so that every chapter destroyed more and more of my fate in humanity. By the end of the book I was rooting for a disease that just comes and kills us all to spare us the embarrassment of being human.

I mean, the investigation starts with cholera and the undignified way in which it makes you involuntarily squirt every liquid you have until you look and feel like a desiccated corpse and if you don't die the chances are people will confuse you with a corpse and bury you alive. But then it got to the horrid conditions that existed before the 20th century even in New York, a place where the population density exceeded that of modern Tokyo five times and people would wallow in their own excrement thrown in the streets and infesting their water supply. Then it described an epidemic of cholera in such a hellish place; can't get any more disgusting, right?

But wait, then there is a chapter on corruption and how financial interests caused the death of thousands just so some people can build a bank corporation like JPMorgan Chase, the biggest US bank today, built on literally feeding shit to people until they died. Diseases not allowed to come into the public eye for the sake of tourism and all that crap. Can it get worse? Yes, because once the disease is there, the blame game is on. The cause of the disease is not germs, the blame is not on a corrupt medical or political system, the fault lies solely on dirty immigrants, gays, minorities and if all else fails, the aid workers that are trying to help, but probably brought the contagion themselves on some sinister agenda.

And then we get to the point where we learn our brilliant present is based just on the ignorance or indifference to present dangers or current super bug pandemics. After all the horror the book presents, the end result is but a whimper, business as usual, ineffective uninformed lethargic reactions to attacks that started decades ago and were completely ignored (pooh-poohed, to use Shah's expression, alarmingly suggestive of choleric excrement). The science is way better, the attitudes remain pre 19th century.

I feel like The Great Influenza, Pandemic and I Contain Multitudes are three books that need to be read together, like a pack. Followed or perhaps preceded by Sapiens. I know, these are all books I've recently read and there are probably hundreds more that could join a list based on topic, but to me all of these stories clicked like puzzle pieces and opened my eyes to a complete picture.

In conclusion, I highly recommend reading Pandemic. It's good for the people in the medical field, it's good for people that couldn't care less (they will after reading it), it's a must read.

and has 0 comments
I started to read the book in French, so as to remember the language from my high school years, but then got lazy and after a chapter read it in my native Romanian. The literal translation would be In the Forests of Siberia, but for some reason it was translated as The Consolations of the Forest in English. Either title is misleading, as the forests are not really relevant to the story and the whole thing is a personal journal of a French misanthrope who decided to spend six months alone on the shores of lake Baikal.

I am unfamiliar with the work of Sylvain Tesson, he is a journalist and a traveler and I couldn't compare this with other things he wrote, but judging by Goodreads' description of him, this must be his most famous book. Did I like it? I didn't dislike it. In itself is a daily journal and has very little literary value other than the metaphors Tesson uses to express his feelings. Some land true, some simply don't work. There are no detailed descriptions of the landscape either. The author does not paint with his words, he mostly whines. If there are people around, he will insult their nation and their presence in his thoughts, while being civil and hospitable to them; if there are no people around, he will complain about the nature of society, humanity, religion or state. Left alone for a while, though, he will start to be more positive, inspired by nature, but also by the books he devours and then annoyingly feels compelled to quote from.

Some of his emotions ring true, it makes the read compelling and generates thoughts of how the reader would feel or act in the author's stead. Some descriptions sound exactly like what most people, alone in the (proximity of the) woods would produce if their only company were liters of vodka. What I am trying to say is that the book is a journal written by an egotist, therefore describing only him. The beautiful lake, the woods, people, dogs, the wild bears or anything else are just props so we can all bask in his personality... which is pretty shitty. Just as a small example: in four months of journal he mentions his need of random women coming into his hut twice. He mentions he has a girlfriend once. After getting dumped via SMS he whines continuously about how he lost the love of his life which now has no meaning and only his two dogs (received as pups when he got there) helped him through it. After the six months pass, he just leaves the dogs there, proclaiming his love for them.

So, an informative book about how a random French writer asshole felt while living alone in the cold Russian wilderness, but little else. Apparently there is a 2016 movie made after the book. You might want to try that.

and has 0 comments
I've always had the nagging feeling that someone who writes well could do wonders with the Lovecraft "mythos". A lot have tried and most have failed miserably, because Lovecraft was weird and his horror feelings came from being really intolerant of almost anything, but I am still trying to read things inspired by the man in hope I would find something very good.

Unfortunately, Shoggoths in Bloom is one of the shortest stories in this collection of short stories by Elizabeth Bear, is only loosely based on Lovecraft's ideas and is not horror. In fact, none of the stories in the book were horror and some weren't even fantastical, but verged on personal or perhaps historical fantasy. The quality was inconsistent, with some shorts being nice and others a nightmare to finish. Funny thing is one of the stories I liked, Tideline, I had listened to before on the Escape Pod web site.

Bottom line, Bear seems to be an accomplished writer and her writing is good, but I wouldn't recommend this collection, from the standpoint of quality, but also because it uses a Lovecraft concept to sell something completely different.

and has 2 comments
Sonar Source code static analysis rule RSPEC-3906 states:
Delegate event handlers (i.e. delegates used as type of an event) should have a very specific signature:
  • Return type void.
  • First argument of type System.Object and named 'sender'.
  • Second argument of type System.EventArgs (or any derived type) and is named 'e'.


The problem was that I was getting the warning on a simple event declared as EventHandler<TEventArgs>. Going to its source code page revealed the reason in a comment: // Removed TEventArgs constraint post-.NET 4.

and has 0 comments

In 2015 I was so happy to hear that Cory and Lori Cole, game designers for the Sierra Entertainment company, were doing games again, using Kickstarter to fund their work. Particularly I was happy that they were doing something very similar to Quest for Glory, which was one of my very favorite game series ever. Well, the game was finally released in the summer of 2018 and I just had to play it. Short conclusion: I had a lot of fun, but not everything was perfect.

The game is an adventure role playing game called Hero-U: Rogue to Redemption and it's about a small time thief who meets a mysterious bearded figure right after he successfully breaks into a house and steals, as per contract, a "lucky coin". The man gives him the opportunity to stop thieving and instead enroll into Hero University as a Rogue, rogues being a kind of politically correct thieves, taking from the rich and giving to the poor and all that. You spend the next 40-50 hours playing this kid in the strange university and finally getting to be a hero.

You have to understand that I was playing the Quest for Glory games, set in the same universe as Hero-U, when I was a kid. My love for the series does not reflect only the quality of the games, the humor, the nights without Internet where I had to figure out by myself how to solve a puzzle so that I could brag to my friends who were doing the same at the time, but the entire experience of discovery and wonder that was childhood. My memories of the Sierra games are no doubt a lot better than the games themselves and any attempt of doing something similar was doomed to harsh criticism. So, did the Coles destroy my childhood?

Nope. Hero U was full of puns and entertainment and rekindled the emotions I had playing QfG. I recommend it! But it won't get away from criticism, so here it is.

Update: I've finished the game again, going for the "epic" achievement called Perfect Prowler, which requires you don't kill anything. I recommend this as the start game because, if you think about it a bit, it's the easier way to finish the game. To not kill anything you need to sneak past enemies, meaning maxing your stealth. To defeat your enemies (which is also NOT the rogue way as taught at the university) you need to have all sorts of defenses, combat skills, magical weapons or runes, etc. By focusing on stealth you actually focus on the story, even if sometimes it is annoying to try to get past flying skulls for ten minutes, saving and reloading repeatedly, until your stealth is high enough. Some hints for people doing this:

  1. Sleeping powder is your friend, as it instantly makes an enemy unresponsive and does not alert other enemies that are standing right next to them
  2. Sleeping powder works on zombies, for some reason
  3. Demolishing a wall with a Big Boom while guards are sleeping next to it does not hurt said guards, even better, they magically disappear letting you plunder the entire room
  4. If someone else kills your enemy, you didn't kill anything :)
  5. The achievement says you have to not kill things, you can attack them at your leisure as long as you flee or use some other methods to escape


Anyway, the second run made me even more respectful towards the creators of the game, as they thought of so many contingencies to allow you to not get stuck whatever style of play you have. And this on a game that had so many production issues. Congratulations, Transolar!

And now for the original analysis:

What is great about the game is that it makes you want to achieve as much as possible in a rather subtle way. It doesn't show you X points out of Y the way old Sierra games did, but it always hints of the possibility of doing more if you only "apply yourself". Yes, it feels very much like a school. And I liked it. What's wrong with me?

I liked the design of the game, although I wish there was a way to just open a door you often go through, rather than click on the door and then choose Open from the list of possible and useless options like Listen on the door or Look at the door. I liked that you had a lot of actions for the objects in the game, which made it costly to just explore every possible option, but also satisfying to find one that works in your favor.

And the game is big! A lot of decisions, a lot of characters and areas to explore, a lot of quests and a lot of puns. Although, in truth, even if I loved the QfG series for their puns, in Hero-U it feels like they tried a little bit too much. In fact, I will write a lot about what I didn't like, but those are general things that are easy to point out. The beautiful part is in the small details that are much harder to describe (and not spoil).

The biggest issue I had with the game was the time limits. The story takes the hero through a semester of 50 days at the university and he has to do as much as possible in that time. This was good. It makes for a challenge, it forces you to manage the time you have to choose one or the other of several options. You can't just train fighting skills for weeks and then start killing critters. However, each day has several other time limits, mainly breakfast/class, supper and sleep. You may be in the depths of the most difficult dungeon, took you hours to get there, if it's supper time, your "hero" will instantly find his way back so he can grab some grub. You don't have the option to skip meals or a night's sleep, which would have been great as an experience and very little effort in development, as he already has "tired", "hungry", "injured" and other states that influence his skills.

This takes me to the general issue of linearity of story. The best QfG games were wonderful because you had so many options of what you could do: you could explore, do optional side quests that had little or nothing to do with the main story, solve puzzles in a multitude of ways (since in those games you got to choose your class). Hero-U feels very linear to me: a lot of timed quests with areas that only open up after specific events that have nothing to do with you, the items you get at the store change to reflect the point in time you are in, a choice of girls and boys to flirt with, but really only one will easily respond to your attempts at romance, the only possible ending with variations so small as to make them irrelevant and so on. And many a time it is terribly frustrating to easily find a hidden door or secret passage, but be unable to do anything with it until "it's time". You carry these big bombs with you, but when you get to a blocked door you can't just demolish it. I already mentioned the many options you have to interact with random objects in the game, but the vast majority of them are useless and inconsistent. QfG had some of these issues, too, though.

An interesting concept are the elective classes, which are so easy to miss it's ridiculous. Do not miss the chance (as I did) to do science, magic or healing. It reminds me of QfG games you played as a fighter and then started them again as a mage or thief. The point is to take all your tests (and since you get the results a few days later) you need to know your stuff (i.e. read the text of the lectures and understand what the teachers are saying). Unfortunately, the classes don't do much to actually help you. Science gives you a lot of traps and explosives, healing gives you a lot of potions and pills and magic gives you sense magic and some runes. You can easily finish the game without any of them and it is always annoying to have to run from the end of your classes (at 14:00) and reach the elective classroom on another floor, having to dodge Terk and also considering that you might want to do work in the lock room, practice room, library, recreation room and reception, all in one hour (you have to get to the class by 15:00). And the elective eats two hours of your time, just in time for (the mandatory) dinner.

And then there is the plot itself. I had a hard time getting immersed in a story where young people learn at a university teachers know is infested with dangerous creatures that students fight, but do nothing to either stop or optimize the process. Instead, everybody knows about the secret passages, the areas, but pretend they do not. Students never party up to do a quest together. There are other classes in the university, not only Rogues learn there, but you never meet them. Each particular rogue student has a very personal reason to be in the university, which makes me feel it's amazing that the class has seven students; in other years there must have been a maximum of two. You get free food from all over the world, but you have to buy your own school supplies. There are two antagonists that really have absolutely no power over you, no back story, and you couldn't care less that they exist. Few of the characters in the game are sympathetic or even have believable motivations.

Bottom line: I remembered what it was like when I was a child playing these games and enjoyed a few days of great fun. I felt like the story could have had more work done so that we care about the characters more and have more ways to play the game. The limits often felt very artificial and interrupted me from being immersed in the fantastic world. It felt like a Quest for Glory game, but not the best ones.

It is worth remembering that this game is the first since the 1990s when the creators were working in Sierra Games. They overcame a lot of new hurdles and learned a lot to make Hero-U. The next installments or other games will surely go more smoothly both in terms of story and playability. I have a lot of trust in them.

Some notes:

  • There is a Hero-U Student Handbook in PDF form.
  • Time is very important. It pays to save, explore an area, reload and go directly where you need to go.
  • Stealth is useful. There is an epic achievement to finish the game without killing anything. That feels a bit extreme, but it also shows that items and combat skills may be less relevant than expected.
  • Exams are important: save and pass the exams so you can get elective classes. I felt like every part of the story was excessively linear except elective classes which you can even miss completely because you get no help with them from the teachers or the game mechanism.
  • Some doors towards the end cannot be opened and are reserved for future installments of the series.
  • You can lose a lot of time in the catacombs for no good reason. Don't be ashamed to create and use a map of the rooms.


I leave you with a gameplay video:

[youtube:i_4CHnKCJ40]