Friday, May 31, 2019

Malice (The Faithful and the Fallen #1), by John Gwynne

book cover Have you ever found a book so bland that you just refused to continue reading it? To me it happens rarely, but it did with Malice, by John Gwynne. And I do feel a sense of loss, since the reviews I've seen are all so overwhelmingly positive. Maybe if I would have just read a few more formulaic chapters I would have gotten to the part when something, anything, happens.

But no, I do have a lot of books to read and I am not going to waste my time reading about another child who wants to be a hero, but he's weak and bullied, another large blacksmith who was once a soldier, another pair of good and evil gods and their minions, noble savages, strong princesses, evil viziers and so on and so on. After several chapters all I got was a bunch of people in different contexts, each with their own names, friends, family, dreams, history and narration. Whenever I thought something would happen, another character with a silly name came along to perform whatever ritual is assigned to its cardboard role. Confusing and boring as hell.

Bottom line, I couldn't even begin to finish it. I probably read about 10-15% and gave up.

Thursday, May 30, 2019

Foundryside (Founders #1), by Robert Jackson Bennett

book cover Much like City of Stairs, Foundryside is a steampunk story set in a world where power resides in the hands of a few "houses" who use a magical programming language to alter reality. The lead character is also a girl, the plot also revolves around someone who wants to abuse ancient magic to rule the world and the state of knowledge is yet again recovering from a major catastrophe that veiled the past. Yet with all this, I liked the book less.

Just as the story moved from a more mystical setting to a more rational, scientific one, so did Robert Jackson Bennett's writing turned more formulaic. It's like he took something he had success with and applied the same exact formula, with some improvements related to what people want to read. As a result, the characters are less mysterious and more cardboard, the hints peppered around the story for the reader to glimpse where it is going are way too revealing (something that bothered me a little in City of Stairs, too, but here it was just too obvious). But what bothered me most was that the characterization: some were way too modern, way too educated or philosophical, considering their background, and the divide between good and evil was so obvious, back to the annoying cliché where the good characters are principled and loyal and intelligent and their opponents are insane, frustrated and ugly.

Bottom like, I liked the book, but I feel like Foundryside is a step back for Bennett. It was harder to empathize with the heroes and almost impossible to do so with the antagonists. The story felt recycled from a basic idea scrived with the same recipe as City of Stairs, but more lazily.

Wednesday, May 29, 2019

Styling Angular Material tooltips

This should be a simple question with a simple answer, but if you google for Angular Material tooltip styling or length or width you get different answers that are not always complete or even correct. The problem: you have something like <a matTooltip="some message" matTooltipClass="myTooltipClass" ... as per the examples easy to find. However, it doesn't seem to be working. The styling for myTooltipClass does not apply. Here are some points to check off while searching for the problem:
  1. Check whether myTooltipClass is defined in the component or the global CSS file. It should either be in the global CSS file (so it applies to everything) or your component should declare encapsulation: ViewEncapsulation.None
  2. Check the declaration of the class is specific enough. DO NOT use !important to fix this, although it would work. Try something like this: mat-tooltip-component .mat-tooltip.myTooltipClass {...}

To see if the class is applied, set the background-color property to red or something. If the class applies, you managed to define it correctly. If it applies partially, it's not specific enough. To change the width, use max-width. To make the tooltip wrap use white-space: wrap; and word-wrap: break-word;

As a reference, this is how the HTML looks for a rendered tooltip:
<div class="cdk-overlay-container">
    <div class="cdk-overlay-connected-position-bounding-box" dir="ltr" style="top: 0px; left: 0px; height: 100%; width: 100%;">
        <div id="cdk-overlay-1" class="cdk-overlay-pane mat-tooltip-panel" style="pointer-events: auto; top: 8px; left: 417.625px;">
            <mat-tooltip-component aria-hidden="true" class="ng-tns-c34-15 ng-star-inserted" style="zoom: 1;">
                <div class="mat-tooltip ng-trigger ng-trigger-state" style="transform-origin: left center; transform: scale(1);">Info about the action</div>
            </mat-tooltip-component>
        </div>
    </div>
</div>

Saturday, May 25, 2019

City of Stairs (The Divine Cities #1), by Robert Jackson Bennett

book cover What makes a good story? It has to be the telling or writing style, of course, but then there are other factors: believable and sympathetic characters, an interesting idea, a tight plot, good world building, entertaining scenes. I am happy to report that City of Stairs aced everything! I haven't heard of Robert Jackson Bennett before, but I am sure to remember his name now. The first book in a trilogy, City of Stairs wasn't just blessingly self contained, but also made me happy to have following books to continue the story.

The main character is a woman who does everything from conviction, care for others and most of all her own intelligence and effort, not because of her gender. The story is a detective story, set in a fictional preindustrial almost steampunk world where gods recently existed until people killed them. It is a book of mystery, intrigue, politics, detective like investigations, spirituality and magic, but held tight around a solid core of whodunit and great character and world building. It reminded me of the wonder I felt when starting reading Brandon Sanderson's books.

Bottom line: not the greatest work of literary fiction that ever existed, but I couldn't find any fault with it. Per my definition, it was a perfect book.

Thursday, May 23, 2019

Microcosm: E. Coli and the New Science of Life, by Carl Zimmer

book cover At first I thought this will rehash the same information I've got from books I've read recently: how microorganisms are everywhere and how they live in symbiosis and cooperation with themselves, plants and animals, how the imbalance in the ecosystem is what we normally get to call disease, maybe some epidemics stories and so on. Instead I've got an ode to E. Coli and how studying it for decades has revealed to us in details the way life works. It's Carl Zimmer's multifaceted portrait of a single species of bacteria (although that's a lot of bacteria, if you get to read the book).

Well written even if more technical than the average popular science book, Microcosm explains how heredity works, DNA, RNA, proteins, amino acids, bacteria, biofilms, archaea, eukaryotes, viruses, plasmids, mutations, evolution, resistance and so on until it gets to creationists, genetic engineering and exobiology, all while following our scientific history built on the study of this one bacteria, the workhorse of microbiology. In fact, it is so focused on E. Coli, that it snubs most other bacteria, it talks little of epidemics or the microbe ecosystem and instead focuses on how things work. It's like an engineer's view on how life works, or a user's manual for Escherichia coli.

I liked the book and I will probably read more from the same author. I mean, if he writes a book per microbe species I could read his books until one of us dies :) I highly recommend it not only for its subject, but also for how it makes clear the inner workings of life and evolution. I would have loved to read this book when I was 12.

Saturday, May 18, 2019

The Faded Sun Trilogy (The Faded Sun #1-3), by C.J. Cherryh

audiobook cover To be honest, I've reached the beginning of the third book in The Faded Sun Omnibus and I've decided to stop.

It was 1978. Religious people living in the desert under strict rules and brandishing swords were still cool and not considered terrorists. C.J.Cherryh decides to write a story about a fierce warrior race that works in the employ of others to wage space war, driven by a very exact culture that emerged in the desert. They carry black veils that only let show their eyes and are very partial to rituals and hand to hand combat. No wonder humans kicked their asses, but even they are terribly anachronistic. They have waged 40 years of war with the humans, under the contract of the Regul, fat immobile and amoral beings that care only for their own tribe's well being.

Reminds you of Dune, the Freemen and the Harkonen? Well, this is where the similarity ends. Where Dune was deep, these three books are tediously drudging through all kinds of futile rituals and each character is painfully introspective, to the point that tough warriors bred for battle are recognizing and thinking about their feelings of fear all the time. Worse, nothing really seems to be happening. It takes a book for a ship to get to its destination.

And the book has aged poorly, even when in the whole thing there are maybe a page of technical descriptions, probably less. There is no mention on what makes the ships run, what types of weapons are used, how computers work, etc. A ship just "fires" and it is never even described in what way.

But the ultimate sin is how little sense it makes. I mean, this is the age of Star Wars, where... errr... people on starships wage battles with swords... OK, the author isn't the only one who screwed stories up, but the Mri are presented as this scourge of the battles, yet they don't know technology or can even read or write, they are appalled by mass warfare and prefer hand to hand combat (like real men!) and are strict in what they are allowed to do, know or even think. It's like giving space weaponry to the Flinstones. OK, you get the Jetsons, but how is that supposed to be terrifying or a match to the voracious human penchant for mass destruction? And there is more. After 40 years, we learn that people have never captured Mri alive, never studied them. The Mris themselves are accompanied by huge bear like semitelepathic animals that they never name or even know how they reproduce. Unlike Frank Herbert, who was obsessed with ecology, Cherryh feels no need to explain how a species of huge carnivores exists on harsh desert planets that are almost devoid of life and water or how three completely different species can share air and food, or how the animals and plants on a different planet are the same as from one that lay 120 planets away, or how language and culture stays the same for 80000 years. A lot of things just don't make sense, including the story's main premise, which is the fear that humans and Regul alike carry for the Mri.

Bottom line: if it were nice to read at least, I would have given it a shot, but after two books of people thinking in fear about what others are thinking of them, I gave it up. It was just tediously boring.

Now, Cherryh was at the beginning of her illustrious career and there are books written by her that I liked. I just hated this one.

Saturday, May 11, 2019

The City in the Middle of the Night, by Charlie Jane Anders

book cover The City in the Middle of the Night reminded me of Octavia Butler's Xenogenesis, only way lighter. The same female centric focus, the slight weirdness of descriptions and feelings that comes from a truly different perspective. Charlie Jane Anders describes a planet far away from Earth, a colony that devolved after humans reached the planet until it got to feudal levels of government and technology. The planet is tidally locked, so people live on the narrow edge that separates frigid night and scorching day. There are some aliens there as well. Pretty cool story and concept, so much so that I hated it when the book ended and it was NOT a trilogy or a saga or whatever. Hard to please me, right?

The writing style isn't on par with the richness of the concepts, though, and I was also thrown off often by gaps in the understanding of science, social norms and even sensory descriptions. Yet once I understood the author is a transgender woman with sensory integration disorder, it started to make sense. The main characters are all women. There are no real romantic or familial relationships between them, unless counting the fact that they are always feeling things strongly and lying together in beds without doing anything. The lack of sexuality in the novel is refreshing but going a long way in the other direction until it feels eerie. And they often react physically or mentally in such overblown ways that it's hard to empathize. Stuff like someone saying something and they suddenly go to a corner to heave, or having seen someone smile or being touched in a certain way just short circuits their brain. There are a lot of leftover threads in the book, things that get partially described and you just wait for them to be explained later on and they just don't. Also the mix of first person perspective for Sophie and third person for everybody else is strange and forces one of the characters as the main one, even if maybe a reader would relate better with somebody else.

So I had difficulty in rating this book. I would give an excellent rating to the world building and the concepts presented there, but an average on characterization (even if most of the book is about what characters do and think and feel). I would rate some descriptions of internal struggle and emotion as great, but others really lame, especially when it comes to characters who seem to be designed to be thrown away later on. The writing style is not bad, but not great either. It's a mixture of brilliance and average that is hard to reconcile into a single metric. I mean, I could describe the entire plot of the book in two paragraphs; the rest is just people bumbling around trying to make sense of the world and themselves. No character has a real back story, except a few defining moments that feel pulled out of a hat, and they are understandably confused all the time. Who are their parents? Everybody in the book is an orphan. Why so many descriptions of invented food if does nothing for the plot, yet no sex, only a rare and weird longing sort of platonic love? Why is everybody so casually violent, yet so disgusted with violence in their inner thoughts?

It seems to me that this is a book that only some will be able to connect to (the others will get delirious and murderous). I liked the ideas, I liked the characters, it's just that they are coming from nowhere and ultimately going nowhere.

Sunday, May 05, 2019

Good Germs, Bad Germs: Health and Survival in a Bacterial World, by Jessica Snyder Sachs

book cover The book might put you off at the beginning, as it starts with a no bullshit nomenclature chapter. It basically says: "This is how I am going to call things in this book and if you don't like it, talk to people who actually care about semantics". The rest of the book continues with the same directness and I believe it is one of the works' best qualities.

Good Germs, Bad Germs starts like a few other books on the subject I've read recently, with a short history of how people have looked upon disease and its causes: Hippocrates' humors, the (all bad) germ theory, vaccines, antibiotics, the bad antibiotics and the good germs, modern understanding of immunity. And yet this is just the first half of the story. The rest is about new ideas, actual therapies and studies, real life cases and attempts to bring this new knowledge into the public domain.

I really liked the book. It's easy to read, easy to understand. Less of the story-like or anecdotal writing style of some other works and more to the point. I also liked that it doesn't take sides: one therapy has to go through wholly unreasonable FDA hoops to be allowed to even be tested in humans, the author points both positive and negative aspects of being prudent. Is it ridiculous that the lack of communication between American hospitals hides invisible epidemics that then get reported by Canada or Europe and end back into the States' headlines as foreign diseases? Jessica Snyder Sachs just reports on the facts, letting the reader draw their own conclusions.

Bottom line: I thought it would be just a repeat of the same information I've become familiar with lately, yet it was not only a different way of tackling the same subject, but also a lot more information about actual attempts to use it in real situations. I recommend it to anyone trying to understand how we stand in this coevolution with the microbes living inside and outside us.

Wednesday, May 01, 2019

Knights of the Borrowed Dark (Knights of the Borrowed Dark Trilogy #1), by Dave Rudden

book cover Knights of the Borrowed Dark is a typical fantasy story filled with tropes like: "the one", "son of..." (or "noble family" or "everybody is related to everybody"), "secret war (for no good reason)", "light versus dark", "evil must be fought with swords", "no one tells you anything, even if it makes no sense", "dark king" and so on. The main character is a Mary Sue, an orphan who doesn't know his parents and has lived his entire life in an orphanage, but somehow is a balanced, well read individual who favors rationality to emotion, yet has no problem using both. Add the trope of trilogy to this and you have a complete picture.

Now, does that mean I was not entertained? Nope. It was all fun and games and I've finished the book in a day, yet I can't but be disappointed in both the formulaic nature of the story and the fact that I liked it anyway. The bottom line is that Dave Rudden writes decently and has enough skill and humor to make the same story you've read or seen a dozen times already feel pleasant. So read it, if you like that kind of thing, but don't expect anything above ordinary.