Wednesday, August 16, 2017

The Vagrant (The Vagrant #1), by Peter Newman

book cover I read the book before I knew it was part of a trilogy, but of course it is. I would have personally preferred to have the first book as standalone, particularly since it had an almost open ending. It would have made it clear that the story isn't that important as the character. But hell, there is no mystery anymore, even in fantasy.

The Vagrant feels like a mix between Shogun Assassin and Samurai Jack, as it features a sword bearing silent type - well, he's a mute - walking with a baby through a desolate, part feudal part futuristic landscape, while demon essence is threatening to corrupt the world.

Peter Newman even uses a style of writing that often discards definite articles. A sword slashes, a man falls, a demon howls, stuff that happens, inevitably, randomly, viciously. I liked that the main character strives to survive, but he is not indomitable. He gets doublecrossed, wounded, almost killed. He doesn't win every battle and when he does, it is difficult every time. Luck saves him several times and some people he wants to save cannot be saved. Towards the end this tendency falters and he becomes a little bit too knighty for my taste. Abstract and stubborn principles start to rule him, he starts fights that he need not fight, jeopardizing his mission. However, that ends up playing a big part in the last part of the story, setting up the next books, I guess.

The demons are interesting, too. Creatures of corrupted flesh and demonic essence, they are just trying to survive in a world alien to them, while ruled by instincts alien to us. I liked that they were not boring empty clichés of evil and were almost sympathetic. I've long dreamt of a story that tells the story from a demon's perspective, hunted by religious jerks who want to destroy it and the dark magicians that conjured it who want to control it. I mean, wouldn't you be pissed off? This book is very close to that perspective.

Funny enough, I thought the scenes with the baby and the goat were really well done, as the author describes their internal mental processes with gusto and humor, without them being pointless comic relief scenes. Newman seemed to understand how children and animals navigate the world.

In conclusion, I liked the book. I would probably continue to read the series if not for having other books that I want to sample. It is stylistically interesting and the characters are well constructed, while leaving the main story a bit in the background. I liked that. At least at this time I enjoy reading character centric books more than the ones that focus on plot and ignore the people involved in it.

KB4019099 or KB4032542 Error 0x80070643 with SQL Server 2014

TLDR version:

0x80070643 is probably thrown when you don't have the right software version, in other words, the update is not for you. Sometimes you need to upgrade your software in order for it to apply. To fix the problem with SQL Server, try installing the SQL Server 2014 Service Pack 2 if you are still at SP1.

Now for the full version:

I thought the way Windows updates is a good thing. It keeps the computer up to date, regardless of how annoying it is to stop your work in order to perform updates. The problem, though, appears when having to perform an update that fails. Windows Update will nag at you again and again and again that you have updates. You don't have the option to ignore an update (unless you download a specific tool) so you are forced to solve any problem with the update. This is still a good thing, even if annoying. And if regular people that don't know how to solve issues like that are angered enough, it will also motivate Microsoft to test their updates better. Win, win. Unless it happens to you!

Anyway, this blog post is about KB4019099 or KB4032542 - Cumulative Update 13 for SQL Server 2014 SP1 which failed with a vague error code Error 0x80070643, which is met in several situations when trying to install stuff. In order to get to the bottom of the problem, I manually downloaded the installer for the update and tried again.

This time the error was clearer: TITLE: SQL Server Setup failure.
------------------------------

SQL Server Setup has encountered the following error:

The cached MSI file 'C:\WINDOWS\Installer\1bfcbd.msi' is missing.
Its original file is 'sql_engine_core_inst.msi' and it was installed for product 'SQL Server 2014 Database Engine Services' from 'F:\x64\setup\sql_engine_core_inst_msi\', version '12.1.4100.1', language 'ENU'.
To resolve this problem, recover the missing file from the installation media and start setup again.
For more information about how to resolve this problem, see 'Steps to restore the missing Windows Installer cache files' (http://go.microsoft.com/fwlink/?LinkId=144387) in the Microsoft Knowledge Base.

Error code 0x84B20002.

For help, click: http://go.microsoft.com/fwlink?LinkID=20476&ProdName=Microsoft%20SQL%20Server&EvtSrc=setup.rll&EvtID=50000&EvtType=0xD66F84B3%25400xF762992B%25401202%25402


Amazingly enough, the link that is supposed to solve the problem actually solves the problem. First of all the go.microsoft.com link causes too many redirects for Chrome, so you have to open it in some other browser. Once you do that, you reach this link: How to restore the missing Windows Installer cache files and resolve problems that occur during a SQL Server update and at the end you get a VBS script that seems to repair missing C:\Windows\Installer files from the original installation source.

The first thing the page says is to try setup.exe /ACTION=REPAIR /INDICATEPROGRESS=TRUE from the original installation source for SQL Server 2014, which of course you don't have anymore. But even if you do have it and you run the command, it fails near the end with a funny error: "C:\WINDOWS\Installer\1bfa87.msi" So the only possible solution is to run the VBS script. After that, the update install actually started.

... and failed with another error: The upgrade cannot be installed by the Windows Installer service because the program to be upgraded may be missing, or the upgrade may update a different version of the program. Verify that the program to be upgraded exists on your computer and that you have the correct upgrade.
Error code: 1642
. Why are you asking me to upgrade something if I don't even have the version you need?! I've tried the setup repair option, just to see if anything else changed since running FindSQLInstalls.vbs, but I got the same error.

Under the assumption that the "original installation source" is actually not enough - since there was a Service Pack 2 released since I've installed SQL Server from a kit, I've downloaded the SP2 file. Maybe it has a repair option. Ran it, and it ran successfully. Could it be that I never upgraded my SQL Server instance? Yes. Then all those "different version" messages actually make some sense.

Once I did that, Windows Update presented me with different updates altogether! Note that the original update said "SQL Server 2014 SP1" when executed.

Some of the updates installed OK, some failed, mainly Security Update for Microsoft Visual Studio 2010 Service Pack 1 (KB2645410) and Update for Microsoft Visual Studio 2010 Service Pack 1 (KB2635973). These are updates from 2012 and are related to the standalone VS version used by SQL Server Management Studio. I tried a restart, the updates remained there to annoy me. They both failed with error code 0x80070643 and when tried to install them manually they both reported the wrong software version.

Perhaps it is from all the meddling. Installing SP2 would have probably solved all the problems.

I hope it takes you less time to figure this out, once you've read this article.

Update: How to solve the issue of obsolete Visual Studio 2010 updates:

I've downloaded the Microsoft Fixit tool for forceful uninstall of software, even if the installer is not cached in C:\Windows\Installer. Then I uninstalled "Microsoft Visual Studio 2010 ENU". At this moment SQL Server 2014 Management Studio would not work anymore due to a missing component. Then I reinstalled Microsoft Visual Studio 2010 Shell (Isolated) Redistributable Package. At this moment SQL Server 2014 worked again. Then I ran Windows Update, which found several updates to download, including a Service Pack 1 and several others. Their installation went with only a hitch, a random 0x80246007 (BITS service) error that went away when I retried the update. I started Microsoft SQL Server 2014 Management Studio, just to be sure it worked, and it did. Finally.

Thus endeth the saga of the reluctant Windows Updates.

Thursday, August 10, 2017

The Fireman, by Joe Hill

book cover The Fireman has a lot going for it: world ending global pandemic, superpowers, people finding strategies in order to survive, communities giving into the mob mentality, heroes fighting evil, etc. Joe Hill writes well and the story captivated me from start to end.

That being said, there are some issues with the book. The story is about a global infection with a fungus that makes people burst into flames, but narrowly focuses on a few characters in a small American town. Yet the story abounds in details for every scene: what everybody does, what they think, how the scene changes. Also, while there are some explanations of why things happen the way they do, close scrutiny destroys any logical explanation, so less material would have helped suspension of disbelief. I feel like a little editing that would have removed 10-20% of the book would have benefited it greatly, fixing some issues with pacing. There were times when I just had to skip paragraphs, as in moments of tension the author insisted of describing all kinds of inconsequential things.

Also, at the end of some chapters, there were little phrases where the character would disclose the outcome of the next chapter. I did not appreciate that. Imagine a scene where a character is hopeful and, instead of hoping with them and then being devastated by the story, you just go through the scene knowing how it is going to end. Don't do that, Joe!

It was interesting that the main protagonist (who is not a fireman, BTW, that was a silly title) is a woman. Her character, abused, manipulated and lied to by people in authority in her life, is almost feminist in nature. Other secondary characters are also female or children, with the writing focusing on human relationships. If I didn't know better, I would have said the book was written by a woman. I can only commend Joe Hill for being so good at describing the world and the people from the eyes of this character.

Other than that, the story was really fresh. I don't want to spoil anything here, enough to say that it made my emotions alternate wildly between excitement, fear, disgust and frustration. While optimistic in nature, The Fireman describes so many ways in which people just give in to their inner selfishness and evil. The themes touched by the story vary, but gravitate around one central idea of human relationships: a couples, as communities and what happens when these seemingly good things are contaminated with fear. These are themes one is used to find in Stephen King books and, surprise!, Joe Hill is actually King's son. He is trying his best not to advertise this, though, and I think he is a good writer on his own.

The characters are very human, well created, frustrating in their mistakes, just like normal people are. The author made the lead characters a bit too clean, always taking the high road, always being spared of the tough soul scarring choices by their environment or the people around them. I thought that was a weak point in the book. Without being forced to make hard choices, characters have no reasons to evolve.

Anyway, my recommendation is to read this book. It is scifi and fantasy and clinical dissection of humanity. It is well written, even if a little too long for its story.

Almost two years ago, Variety was reporting that the book was being developed by Fox into a movie, yet there is no other information more recent about this.

Wednesday, August 09, 2017

Diversity, not divergent (yes, the Google thing)

I wasn't going to discuss this, but I am being assaulted from all sides by people who have on opinion or another on the Google "Anti diversity manifesto", how the media likes to call it, spread at Google by an employee and his subsequent firing right afterwards. So I will say a few words, but not about the content of the document, only on the reaction to it.

Let's be honest here, what happened was that someone criticized the way things are at Google and then he got fired. He did it in a whitepaper-like document in which he exposed his opinions on what he perceived as problems and possible solutions. I believe his biggest mistake was not substantiate his opinions with previous research, thus dispelling some of his beliefs and strengthening others as fact, but that's beside the point. You can read the document, as well as the response from the Google's new Vice President of Diversity, Integrity & Governance, whatever that means.

James Damore, the employee who wrote the memo, was fired for violating the company's code of conduct by "perpetuating harmful gender stereotypes". What I want to focus on is that the response of Google was based on the fact that they couldn't possibly assign people to work with this guy, once he said something that was controversial, potentially offensive. By logical extension, no one can express something controversial in the company. Would you like to work there? They see it as something positive. The legalese for that is Part of building an open, inclusive environment means fostering a culture in which those with alternative views, including different political views, feel safe sharing their opinions. But that discourse needs to work alongside the principles of equal employment found in our Code of Conduct, policies, and anti-discrimination laws. What started as an open discussion, ended abruptly by termination, the employment equivalent of a death sentence for dissension. A personal equivalent would be "if you think like that, then we can't be friends anymore".

While the decision makes sense in the short run, in the long run it only hurts Google, both on a mediatic level and a financial one. However right or wrong, the author of the paper wanted to solve something he saw as problems in the company. I would want that type of person to be part of my company. And if the problems he sees are artificial, I would like to think I would try to convince him of that before firing him. Of course, Google doesn't have to do anything, because what they did is legal, but I am not talking about anything legal here. I am talking about companies having to take care about all their employees, not only the ones they like.

Personally, I wouldn't like to work in a place where I would need to guard my every word, hide my opinions and my thoughts, for fear of crossing some general line or code of conduct. I wouldn't like to work in a place that couldn't care less about me as a person. And if I were to work in such a place (ahem!) then I would create a narrative that would protect my fragile psyche, something like "they would never do that!". Well, Google did it! In a very public and bland and careless way. This will only give strength to the other narrative, the one of the former employees, released from their very strict NDAs, who complain about the same things Damore was fired for trying to solve in the first place.

Now, don't you miss the times when Microsoft was the bad guy?

Sunday, August 06, 2017

Tuesday, August 01, 2017

The Regional Office Is Under Attack!, by Manuel Gonzales

Book cover There is a rule in writing, that if you are trying to tell the story from the viewpoint of another character than the main one, for example the villain, and it is boring, then your story is not good enough. It seems to me that this was the cardinal rule that Manuel Gonzales used to write The Regional Office Is Under Attack!. He wrote tiny interlaced chapters that alternately were describing the action, then the motivations and personalities of the characters through flashbacks. At first it felt fresh, then it just got annoying. There is only so much you want to hear internal monologues.

It would have been great if the story would have been better, or if the characters would have really been fleshed out. However, this book feels more like an exercise in writing, a funky experiment, than a real story. There are very intimate details about how people thought and why they did some things, but they also are empty, doll like characters. And that is too bad, because Gonzales is clearly a talented writer and the plot made me want to read on and find out what will happen to all the characters, only to be left high and dry at the end of the book, which stopped abruptly and spitefully. It was like "Hey, you wanted something else than to experience my new idea? Fuck you! You get nothing."

In the end, it was something that felt like a fairy tale, reinvented for art's sake and modernized just because it's fashionable. It's not even a first part of a series or something. It's a standalone book that showcases the author's idea of presenting many viewpoints on some incidents that have only marginal connection to science and fiction. It could have just as well been a soap opera about highschoolers and be just the same book. It wasn't bad, but I can't quite recommend it either.

Sunday, July 30, 2017

Bookmark Explorer coming for Firefox and Opera

I've decided the functionality of the Bookmark Explorer extension was pretty close to final and, before I refactor it to a new form, I wanted to make sure it works for all the browsers that support the WebExtensions mechanism, mainly Chrome, Firefox and Opera. Frankly, I have no idea why anyone would use Firefox or Opera, but if you do, I've got great news for you: I have published the extension for all of them:
Haven't tested extensively, I am going to do that in the near future, but rejoice, now you can read your news at speed and comfort, then remove them from your bookmarks once you have grown tired. There are some changes to the extension that need to be addressed:
  • The most significant is changing the keyboard shortcut for "Previous Bookmark" to Ctrl-Shift-O for Firefox and Opera, because changing extension key shortcuts in Firefox is really difficult and Ctrl-Shift-K is already used by the developer tools
  • The default settings have been updated. Now, when you install the extension for the first time you will get:
    • 30 second wait for the "Read Later" links to autoclose, giving the browser time to cache the title and icon
    • Preload next tab is now true by default, leading to loading the content of the next news item while you read the current one
    • When creating bookmarks - from anywhere - their URLs will be stripped of some marketing bullshit
  • A lot of bug fixes and speed improvements went into this aparrently minor release

I also plan to make a video of how to use the extension, since letting users read the long description and figure out what the extension does didn't quite work :) I am considering changing the name of the extension for version 3 and I am open to suggestions. I am thinking of Bookmark Surf or something like this. Please let me know of any problems with the extension. I will fix bugs and I will write new features if I agree they are good for my users. All you have to do is ask!

Enjoy!

Update: I was so happy that Firefox for Android supports addons that I just installed it immediately and expected it to work. Unfortunately, the support for the Web Extensions API is very limited for the Android version, most importantly not having a bookmarks API, so the Bookmark Explorer doesn't work. I did make the extension more robust, though, by debugging it on the Android version.

Wednesday, July 26, 2017

Salvation - what a terrible flop

Finally, finally there is a TV series about an asteroid coming towards Earth and what we are going to do about it. It is called Salvation and it fails in every single respect.

Yeah, her hair is moving on its own! The first alarm bell was Jennifer Finnigan, the female costar from Tyrant. She was terribly annoying in that show where she posed as the voice of reason and common sense, while being a nagging and demanding wife to the ruler of a foreign country. I thought "shame on you, Siderite! Just because she was like that in that show it's no reason to hold it against the actress". In Salvation, she plays the annoying nagging and demanding voice of reason and common sense as girlfriend to the secretary of the DOD.

But that's the least of the problems of the show. The idea is that a brilliant MIT student figures out there is an asteroid coming towards Earth. He tells his professor, who then calls someone and then promptly disappears, with goons watching his house. Desperate, he finds a way to reach to an Elon Musk wannabe and tell him the story. Backed by this powerful billionaire, he then contacts the government, which, surprise!, knew all about it and already had a plan. Which fails. Time to bring in the brilliant solution of the people who care: the EM drive! For which there is a need of exactly two billion dollars and one hundred kilograms of refined uranium. And that's just episode 2.

The only moment we actually see the asteroid is in a 3D holographic video projection, coming from most likely a text data file output of a tool an MIT student would build. Somehow that turns into a 3D rendering on the laptop of the billionaire. Not only does it crash into Earth, but it shows the devastation on the planet as a fire front. Really?

Bottom line: imagine something like Madam Secretary which somehow mated with the pilot episode of the X-Files reboot. Only low budget and boring as hell. There is no science, no real plot, no sympathetic characters, nothing but artificial drama which one would imagine to be pointless in a show about the end of the world, and ridiculously beautiful people acting with the skill of underwear models (Mark Wahlberg excluded, of course). Avoid it at all costs.

Update: oh, in episode 3, the last one I will watch, they send a probe to impact the asteroid and they do it like: "OK, we have a go from the president!" And in the next minute they watch (in real time from Io and from a front camera on the probe) how it is heading towards the asteroid. I mean... why write a story and not make it use anything real? What's the point in that? Even superhero movies are more realistic than this disaster. I know the creators of the show did other masterpieces such as Extant and Scream: The TV Series and Hawaii Five-O, they don't know any better, but at least they could have tried to improve just a tiny sliver. Instead they shat on our TV screens.

Monday, July 24, 2017

Update asteroids

I have updated my blog page with the Asteroids in the Solar system. There are only 892 at this date, rather than the 1500 I had before, but these are only the NEOs larger than 1 kilometer and the data is dynamically loaded rather than embedded in the page as it was before. Why didn't I use all of them? Because there are almost 500000 asteroids in the database and displaying them all would have been meaningless. Enjoy!

BTW, if you are wondering what the effects of an impact would be, play with this simulator.

Sunday, July 23, 2017

Dark Intelligence (Transformation #1), by Neal Asher

book cover I loved this book about the far future where humanity is ruled by benevolent AIs and vicious technological wars are being fought with xenophobic alien races. The greatest quality of Dark Intelligence is how it managed to define a world of varying degrees of power and intelligence that somehow manage to coexist without straining suspension of disbelief. I also liked that throughout the book there were hints on various hidden truths in the story, but Neal Asher didn't simply spoil the ending with them, nor did said ending rely solely on disclosing the twists that were glimpsed from those hints. The style of the writing was focused, easy to read, capturing the reader in the world the author created. I finished the book in just two days.

The subject of the story is also one that is very dear to my heart: what is the meaning of identity and personal purpose in life when anything can be changed, altered by either yourself or others, sometimes god like intelligences that just don't see galactic life as any more interesting than we would an ant hill. And while the book is part of a series set in a universe that Asher wrote a bunch of books about, the story is quite stand alone and can be read with pleasure without fear of a cliffhanger ending ruining it all. I liked it and probably I will try other books from the series and from this author.

Tea from an Empty Cup (Artificial Reality Division #1), by Pat Cadigan

book cover It was difficult for me to finish Tea From An Empty Cup. While it was a rather classic cyberpunk novel, which I usually enjoy, I felt it was obsolete in a way that could not be fixed. You know, like when designers or artists try to imagine how computers will be in the future. Only after reading it I realized it was written in 1998, so it was normal for that time and age to misunderstand how humans behave in networked environments, but still... even if the subject was a bit interesting, I actually had to make an effort to go through with it. I think the reason for why I didn't like the book was that the characters were paper thin. Concerned to describe a chaotic virtual reality world in which anything is possible and nothing is regulated (although everything is billed), Pat Cadigan forgot to make us feel anything for the protagonists. And considering that this is a story about how technology is affecting our perception of identity, it made the book unpalatable.

Imagine a Matrix in which people enter voluntarily because the real world is boring by comparison. They create their own intricate fantasies that go well beyond the basic human needs like food or sex and focus on social cues that the participants struggle to constantly redefine and grab for themselves. In this, Pat Cadigan was spot on. However, other than this simple idea that nowadays is ubiquitous on the Internet via the various social networks, the book is nothing but a boring detective story, complete with the "normal" policeman character that enters this virtual world as a complete noob and somehow solves the case. The action is very inconsistent and the feeling I got from the flow of the plot was one of a dream sequence where stuff is cool just by merely being defined as such. At no time while reading the book I was enticed by the scenes in the story.

The concepts inside the book are interesting, but explored very little. The author seems to be under the impression that by merely listing them, the story will somehow become interesting by association, an ironic parallel with the characters in the book. Just think that this book was published at the same time The Matrix movie was released. The difference in quality between the two stories is just too big.

Thursday, July 13, 2017

In Java, two Integer objects with the same value are not == to each other, most of the time

Today I've discovered, to my dismay, that two Integer objects with the same value compared with the == operator may return false, because they are different objects. So you need to use .equals (before you check for null, of course). I was about to write a scathing blog entry on how much Java sucks, but then I discovered this amazing link: Java gotchas: Immutable Objects / Wrapper Class Caching that explains that the Integer class creates a cache of 256 values so that everything between -128 and 127 is actual equal as an instance as well.

Yes, folks, you've heard that right. I didn't believe it, either, so I wrote a little demo code:
Integer i1 = Integer.valueOf(1);
Integer i2 = Integer.valueOf(1);
boolean b1 = i1 == i2; // true

i1 = Integer.valueOf(1000);
i2 = Integer.valueOf(1000);
boolean b2 = i1 == i2; // false

i1=1;
i2=1;
boolean b3 = i1 == i2; // true

i1=1000;
i2=1000;
boolean b4 = i1 == i2; // false

i1=126;
i2=126;
boolean b5 = i1 == i2; // true

i1++;
i2++;
boolean b6 = i1 == i2; // true

i1++;
i2++;
boolean b7 = i1 == i2; // false

i1 = 2000;
i2 = i1;
boolean b8 = i1 == i2; // true

i1++;
i1--;
boolean b9 = i1 == i2; // false


Update: the same thing also applies to Strings. Two strings with the same value are not == although they are immutable, so even the same string won't be equal to itself after changes. Fun!

I now submit to you that "sucks" applies to many things, but not to Java. A new term needs to be defined for it, so that it captures the horror above in a single word.

Wednesday, July 12, 2017

Microsoft SQL Server table partitioning

Tonight I went to an ADCES presentation about SQL table partitioning, a concept that allows for a lot of flexibility while preserving the same basic interface for a table one would use for a simpler and less scalable application. The talk was very professionally held by Bogdan Sahlean and you should have been there to see it :)

He talked about how one can create filegroups on which a table can be split into as many partitions as needed. He then demonstrated the concept of partition switching, which means swapping two tables without overhead, just via metadata, and, used in the context of partitions, the possibility to create a staging table, do stuff on it, then just swap it with a partition with no downtime. The SQL scripts used in the demo can be found on Sahlean's blog. This technology exists since SQL Server 2005, it's not something terribly new, and features with similar but limited functionality existed since SQL Server 2000. Basically the data in a table can be organized in separate buckets and one can even put each partition on a different drive for extra speed.

Things I've found interesting, in no particular order:
  • Best practice: create custom filegroups for databases and put objects in them, rather than in the primary (default) filegroup. Reason: each filegroup is restored separately,
    with the primary being the first and the one the database restore waits for to call a database as online. That means one can quickly restore the important data and see the db online, while the less accessed or less important data, like archive info, loaded afterwards.
  • Using constraints with CHECK on tables is useful in so many ways. For example, even since SQL Server 2000, one could create tables on different databases, even different servers, and if they are marked with not overlapping checks, one can not only create a view that combines all data with UNION ALL, but also insert into the view. The server will know which tables, databases and servers to connect to. Also, useful in the partition presentation.
  • CREATE INDEX with a DROP_EXISTING hint to quickly recreate or alter clustered indexes. With DROP_EXISTING, you save one complete cycle of dropping and recreating nonclustered indexes. Also, if specifying a different filegroup, you are effectively moving the data in a table from a filegroup to another.
  • Finally, the SWITCH TO partition switching can be used to quickly swap two tables, since from Sql Server 2005 all tables are considered partitioned, with regular ones just having one partition. So one creates a table identical in structure with another, does whatever with it, then just uses something like this: ALTER TABLE Orders SWITCH PARTITION 1 TO OrdersHistory PARTITION 1; to swap them out, with minimal overhang.

Monday, July 10, 2017

Memory Mapped Files in .NET 4.0

Just a heads up on a technology than I had no idea existed. To get the details read this 2009 (!!! :( ) article.

Basically you define a MemoryMappedFile instance from a path or a file reader, then create one or more MemoryMappedViewAccessors, then read or write binary data. The data can be structures, by using the generic Read/Write<[type]> methods.

Drawbacks: The size of the file has to be fixed, it cannot be increased or decreased. Also the path of the file needs to be on a local drive, it can't be on a network path.
Advantages: Fast access, built in persistency, the most efficient method to share data between processes.

Friday, July 07, 2017

NullPointerException in Java when using null values in a switch statement

Fuck Java! Just fuck it! I have been trying for half an hour to understand why a NullPointerException is returned in a Java code that I can't debug. It was a simple String object that was null inside a switch statement. According to this link states that The prohibition against using null as a switch label prevents one from writing code that can never be executed. If the switch expression is of a reference type, that is, String or a boxed primitive type or an enum type, then a run-time error will occur if the expression evaluates to null at run time.

Friday, June 30, 2017

Central Station, by Lavie Tidhar

Book cover Central Station describes a very interesting cyberpunk style of future, where amazing yet commonplace technology mixes with the traditional and with the local culture in a world in which the Solar System has been colonized. And then the book ends. Lavie Tidhar manages to imagine all of this creative world, but doesn't succeed on making the book more than the collection of short stories it actually is. That doesn't mean the book is not worth reading or that other works from the author will not benefit from the world building in it, but it feels like a missed opportunity. The book is short, it describes interactions between a surprisingly small and somehow related people and then it just ends with none of the threads in it being resolved in any way. The main character remains as the background city of Central Station, former Tel Aviv.

The writing style is also a bit heavy. It is descriptive, a little pretentious, but it might have felt like that because I was reading in the subway or when going to sleep and I wasn't in the mood for intellectual work. Even so I believe that a lighter style with more attention to story development would have benefited this book.

Bottom line: I liked the story immediately and felt betrayed after it abandoned me right when I was intrigued enough to seek closure. It is worth a read and I hope Tidhar expands the world in other stories beyond the insular location of the book. I am also looking forward to reading other things from the same author.

Thursday, June 29, 2017

Blood Drive, the perfect combination of Mad Max and Wacky Races, via Z-Nation

Oh, SyFy does it again with a show that is wild, totally over the top and really really fun. Post-apocalypse, hot rod cars that use human blood for fuel, cannibals, wild sex, murder sprees, wild people, Colin Cunningham, corporate overlords, awakened psychotic robots, making fun of corporate overlords, ridiculously attractive people surrounded by ridiculously ugly people... Blood Drive is just too silly to care and too wild to not enjoy. I am watching the third episode already and I am laughing my ass off: "Praise synergy for it provides us with low hanging fruit!", you gotta love that.

Monday, June 26, 2017

Ninefox Gambit (The Machineries of Empire #1), by Yoon Ha Lee

book cover Finally, a fresh, unapologetically sci-fi story with so many interesting ideas and cultural innovation that I can barely wait for the second book in the series to come out.

Yoon Ha Lee creates this far into the future universe in which everything from social structure to space travel and military technology is run by rigid doctrine that uses a particular calendar. Certain battle formations, using certain weapons, doing specific things leads to "exotic effects", carefully manipulated through higher mathematics, that power society and military expansion. Of course, there are multiple possible calendaristical configurations, but they interfere with each other, so after choosing one, any deviation is considered heretical. Add to this an Asian view of hierarchy and politics and you get the most delicious book I've read in a long, long time.

Ninefox Gambit is, unfortunately, merely the beginning of the story. While one could consider the entire thing a standalone book that leaves the rest of the story to the imagination of the reader, the rich universe that it creates makes followups inevitable. In this case, I can barely wait for them. There isn't much else to say about the book other than urge you to read it. As with any good writing, the plot is simple, but the individual scenes give its flavor. It is an almost unspoilable story, since it doesn't rely much on twists, but on bringing value in every chapter, through rich characterization and original scenecraft.

Sunday, June 25, 2017

The Mist is now a TV series... a bad TV series

The Mist is a novella by Stephen King that has been adapted into a great horror movie. I mean, I rated the movie 10 out of 10 stars. So when the TV show The Mist came around I was ecstatic. And then... I watched three episodes of the most insipid and obnoxious series I've seen since Under The Dome. Nay, since Fear of the Walking Dead.

Imagine they removed most of the monsters and replaced them with mostly insects, then they enhanced everything else: small town politics, family matters, teenagers, etc. OK, the original Mist was great because it showed the greatest ugliness was not the interdimensional creatures, but the pettiness of humans. However, it was the right balance between the two. Now, in a TV show that censors words like "fuck", you get to see teenage angst, drug rape, power hungry egotistic policemen, one of the most beautiful actresses from Vikings relegated to the role of an overprotective mother, husband and wife interactions - lots of those, junkies, amnesiac soldiers, priests, goth kids, nature freaks, old people... oh, the humanity! Three episodes in which nothing happened other than exposition, introduction of lots of characters no one cares for and that's about it.

I am tired. I really am tired of hearing that price is driven by offer and demand - which is quite true because that's the definition of price, it has nothing to do with actual value. Same with stories: they are all about people, because people care about people and most people are people. No need for anything too exotic when all you need to do to please most people is to show them other most people. Grand from a marketing point of view, but quite pointless overall, I would say. But who's gonna listen to me, I am not most people after all.

Bottom line: lately there has been a lot of effort invested into TV. HBO and Netflix have led the way by caring about their productions enough to make them rival and even beat not only film productions, but also the original literary material. This has led me to hope against hope that The Mist will be the best horror TV show out there, one that would maybe last two or three seasons at most, but burn a bright light. Instead it is a dying fire that wasn't properly lit and is probably going to take two or three seasons just to properly die out without anyone noticing it is gone, yet managing to poison the legacy of the film forever.

Tuesday, June 20, 2017

Children of Earth and Sky, by Guy Gavriel Kay

book cover The only fantastical element in this book, except for a ghost that makes a short appearance, is a change in location. The rest is historical fiction in some place that feels exactly like Renaissance Europe, only it has another name and other gods. Worst than that, the story is boring and the writing mediocre. I couldn't finish it.

The story in Children of Earth and Sky follows a few chosen characters while they navigate the treacherous waters lying between warring (and spying) nations. I mean this both metaphorically and literally, since it is also about ships crossing the sea. Guy Gavriel Kay has been writing published works since 1984 which is why I was surprised to see such an amateurish writing style. He uses several tools again and again and again, without much effect. The worse, for me, was describing the same scene from different viewpoints, one after another, even if it did nothing to enrich the story or develop characters. Another is a certain repetition of a phrase for emphasis, something like "He didn't like the book. He didn't." OK, emphasized enough! Also I felt that the author coddled his characters too much. Instead of making them suffer in interesting situations, he just lets them off easy with crises that they can easily handle or at least manage with heroic skill. In one of the most important scenes, one of a battle, he kills off a major character, at which point I was thinking "OK, it's getting started", only to resurrect them immediately after. Ugh!

So beside being a boring historical drama (I mean boring even for a historical drama!), it really nagged me that it was marketed as fantasy. Maybe I am just getting fed up, considering I've just read a western and a heist story, both included in the fantasy and sci-fi genre because they happened in the future or in spaaaaaace. Bottom line: I can't in good conscience recommend this book and I am quite amazed that it has such a high rating.

Sunday, June 18, 2017

Realm of the Damned, an improbably entertaining animated motion comic

At first I thought Realm of the Damned would be boring. It was a series of comic book images animated via moving them around or deforming them, while a narrator was speaking on the background. The story also had the seeds that have been used so many times with little success: Van Helsing, vampires, werewolves and so on. But it was only one hour long, how bad could it be? And as the story progressed I really enjoyed the experience. And it wasn't because of the gory graphics or the strong voices or the heavy metal music as much as it was the story. Surprisingly deep, it explores not only a world that is dominated by undead monsters, but the inner turmoils of the last defender of humanity. The ending was gripping and terrible and funny at the same time.

I recommend it highly. Here is the trailer:

Monday, June 12, 2017

Three (Legends of the Duskwalker #1), by Jay Posey

book cover Three is a western. The fact that it happens in a post apocalyptic cyberpunk world is incidental. Jay Posey writes about the classical strong silent reluctant hero who fights for a good cause represented by a woman who has changed her ways and her innocent child. There are cyber zombies, there are evil pursuers and a world in which the strong survive in strongholds that are few and far between.

The book works because the writing is good and because the author never attempts to explain what happened to the world or how things actually work. It could have just as well been magic and pixie dust and the story would have remained basically unchanged. And unlike what the title of the review might indicate, you can read the book as a stand alone story, even if it has sequels. It had a beginning, a middle and a resolution.

Bottom line: an enjoyable book, albeit a bit predictable. Its strong suit is the good writing rather than a particularly smart idea or world building or even subtle characterization. Characters are kind of cardboard, but their actions and what happens around them is all well written. I don't think I will continue to read the series, but the author intrigues me and so I may read other books of his, like the new Outriders.

Saturday, June 10, 2017

The Cool People

cool people next to the water cooler Cool people are those who respond to your opinions with condescension. Anything different from what they believe is ridiculous, pathetic, laughable or dangerous. I mean, they could even be right: you might have said something really stupid. But while you can handle finding out that something you were thinking is not true, they cannot. Their whole world view is based on them being right. While you might see them as a little hurtful and a bit annoying, they see you as a threat, because their truth is something they desperately cling to and any type of difference challenges their way of life.

You will usually meet them in positions of power. They are not enough of a sociopath to be top leadership, but they will be somewhere in the middle, telling themselves the story of how in control of their life they are. They clump together, because a tale is easier to believe in a group than by yourself. They drink together, they watch the same sports, they play the same games, they go in the same vacations, they have the same gods and the same rituals. Their information bubbles existed way before Facebook and while you might see them as ridiculous bubble people, they always fear you are carrying a pin to burst theirs. Cool people always know "how the world works" and to pretend otherwise would only mean you are not as savvy. Major changes leave them helpless and in search of a narrative that explains that away from their view of the world. Beware a former cool person for they are desperate.

They will applaud each other vigorously at every little success as they feel it's a validation of their own. Unfortunately, that means they will stand in the way of your success, as they feel it invalidates theirs. Cool people live on a narrow ladder, where everybody is clearly ranked on a vertical scale. Not being on their ladder makes them feel superior to you. Not wanting to be on their ladder makes them feel threatened by you. While you are exchanging information you possess, they only coerce it out of you in order to judge and rank you on their scale. When they are exchanging information is from a feeling of generosity, allowing you to know where the cool is; not being grateful angers them.

Cool people keep in touch. They cannot allow coolness to exist in different flavors. They maintain contact in order to synchronize their shared concepts. Socially it is easy for two cool people to communicate, because they are very similar. It is important to make other people feel not cool enough, because a cool person can't handle a conversation that doesn't follow a familiar pattern. While the problem is mostly theirs, they need to shift the blame onto others. They smile easily as a well trained skill, not an expression of how they feel. Smiles and laughter are tools and weapons for them.

Uncool people are essential to the well being of cool people. A careful dance of keeping people just far enough to indicate superiority, but close enough to make it visible to any outside observer, is essential to the lifestyle of cool people. While you either despise, pity or envy them, but you could easily do without them, they actually need you.

So how cool are you? I am not cool. I am better than cool. Me and my kind.

Friday, June 09, 2017

Roses and Rot, by Kat Howard

book cover This reminded me of The Call, by Peadar Ó Guilín, another very well received book I've recently read. It features a female perspective, fairies and an unapologetic dissection of the human soul. The Call is better, but still, this is a very interesting book I will also recommend reading.

In Roses and Rot, Kat Howard uses the world of the Fae as an excuse to examine the bonds between people, the toxic effects of self-centeredness, whether in a parent or in yourself as you try to achieve some of your goals at the expense of others, and how people have to sacrifice for what they love. Imagine a magical place where everything is offered to you on a silver platter, with the promise that the best of you will get... a golden platter or whatever. And there is always a price.

I liked the psychological aspects of the story. There isn't much else of it, actually. As I said, the magic is merely incidental as the book is about the struggles of artists and daughters of idiots. I would go as far as not calling it fantasy at all. I disliked the close similarity between Janet and the girls' mother - I won't expand on this for fear of spoiling it. Enough to say that Helena's character and sidestory felt like a training run for what could have happened to the protagonist if not for her sister, so in one fell swoop, two characters from the already short list of relevant ones are just shadow copies of others. Add to this a lot of other details that are customized for the lead and you start to suspect this is a very autobiographical story. I don't know Kat Howard so well as to say it was, though. I will quote from the book though: “These [fairy tales] will be more autobiographical in nature than the Grimms'.”

Bottom line: It was a heartfelt story and I liked it. It is also short and not part of a billionogy, so you can just read it and enjoy it. Less fantasy than psychological drama, though.

Wednesday, June 07, 2017

Dark Run (Keiko #1), by Mike Brooks

book cover Dark Run is a classic pulp space mercenary book. It isn't even sci-fi at its core. It could have just as well been a western, a pirates or a heist book, as the science and technology don't further the story in any meaningful way.

I don't have anything specific to say about the book. Mike Brooks uses an overused plot of a specialized team of renegades being double crossed and having to defend their honor and punish the responsible. The characters are pure cardboard, with no subtlety, and even the humor is weak. I mean, it's pulp fiction, the author did a decent job writing one. As literature, though, it's not something I could possibly recommend.

The Summer Dragon (The Evertide #1), by Todd Lockwood

book cover Sagas and trilogies be damned! The Summer Dragon was a really entertaining book and having it end as a mere episode in a larger story that hasn't been written yet is quite frustrating.

Todd Lockwood is mostly known for his fantasy illustrations, not writing, and Summer Dragon is his debut novel. It is an YA story, with a similar structure as so many others: young nobody discovers they have special abilities and are thrown in a world of mystery, wonder and danger, with adults being either weak supporting characters and/or villains, but done right! The heroine - yes, a girl - is thrown into a situation in which politics and culture are forcing her to either be completely passive and submissive or to take action by herself. She doesn't do it with superpowers, but with the knowledge she learned from her father and her own personal courage and ingenuity. In the end she does overcome some pretty insurmountable odds, but it never gets too annoying. If there is a flaw I have to talk about it is the fact that each chapter is written with the same hero's journey structure, with new tension added at the end and character building in the middle. The author is a bit too neat in following the writing guidelines.

I liked that the protagonist is a woman. This is, so far, a perfect feminist book, since she is fighting real issues, social, political and military, using her own skills and in the few situations where she is a love interest she doesn't automatically feel she needs to either reciprocate or condescend and insult her suitor. It is also a book about dragons, but she is the daughter of a dragon breeder, rather than a kid that suddenly discovers there are dragons or other crap like that. The world is not very detailed, but what is in the book is pretty consistent and has a lot of potential.

I don't want to spoil the book by giving details, but there was also something that I felt was a missed opportunity. In an already existing conflict a third party emerges, a super villain, if you will. It was the perfect moment to switch the real source of the "evil" and to reframe an existing war as something that no one participating really understood. As written, it is very difficult to understand why career military men locked in a prolonged conflict dismiss vital tactical and strategic information for silly things like religious fervor or personal greed.

Given the opportunity I would have immediately read the other books in the series. Alas, The Summer Dragon was released just last year and it's the only published book so far. If you want to avoid frustration, wait until Lockwood writes a few more books and then start reading the series. I have great hopes for it.

Jack Glass, by Adam Roberts

book cover There is a cover for the book that writes "Best SF Novel of the Year BSFA Award". I can only assert that it was either competing alone, that they give a prize to all contestants or that the British SF Association doesn't know what a good book is. Its worst flaw is that it is naive. First with its depiction of space. Stuff in the book would not have worked in the 80s, I believe, much less in 2012 when the book was released. The style of the prose seems to emulate works from the 50s and 60s and at first I wondered if it wasn't intentional, like a sort of parody or tip of the hat. Regardless, the book remains naive in almost all aspects, even those of the basic plot, which is not sci-fi, but rather whodunnit and escape from the room stuff.

That being said, Jack Glass is not a totally bad book, either. It presented some ideas that were rather fresh. Using convicts to prepare asteroids for colonization, for example, or having trillions of people living in the Solar System, not on planets, but asteroids and such, the idea that each of these habitats would create their own flavor of religion and culture. But other than these rare juicy details, the rest of the book is quite boring, predictable and bad. The clues to solve the mysteries, rather than being presented to the reader so that they can participate in the solving, are brought in by random plot events, like dreams. People that were supposed to be the best rationalists, Sherlock Holmes style, were being manipulated and educated by ordinary people that somehow knew and understood more. The laws of physics, psychology and sociology are being completely ignored.

Bottom line, a bad book from Adam Roberts, with the occasional hidden gem that doesn't really save the silly plot and ugly narrative.

The case of the bitch and her mysterious disease

So, me and the wife were walking our dog in the park one Saturday evening when we saw this female German Sheppard mutt looking all lost and terrified. The wife, being the heart of us two, points out to me that the dog is probably lost and she looks terrified. Me, not being the heart in the relationship, just hoped her owners would show up. Well, one can't ignore one's heart, as my wife keeps repeating in the hope I am listening, so I end up attaching a leash to the dog's collar and heroically attempting to save the dog.

The plan was as follows. Step 1: take the dog to the vet. Step 2: the vet will know what to do. Additional info: the dog was walking really strange, was terrified of everything, but especially crossing streets and was bleeding from between the legs, occasionally appearing to try to piss and nothing coming out. Suspecting a car hit and maybe internal bleeding, I rushed the dog to the vet I know in the area, who also treats my dog. Imagine doing that with a 20 kilos dog who is afraid of streets, basically.

Step 1 went to shit when I realized the vet was closed at that hour on Saturday. I mean, nothing ever happens to dogs in the weekend, right? I tried calling pet ambulances, they all refused to come, claiming not enough capacity. Finally I called the wife to come with the car and drive us to a nearby non stop veterinarian clinic.

The situation looked like this: female dog in heat (not internal bleeding) which was probably not hit by a car, but walks funny because she is probably not right in the head, first suspected to be 5 to 7 years old, but then age adjusted to over 8, erratically aggressive (although what aggressive meant to the doctor seemed to be a low growl of annoyance). Also, the doctor didn't know any shelters, groups that take care of lost dogs or anything like that. Surely no dogs get lost and found and then brought to vets. He had no idea what to do. So Step 2 went to shit when the vet told us the dog was not microchipped, was probably abandoned and, for all intents and purposes, was now ours, since no one adopts old dogs.

We decided to pay for some tests to figure out what is wrong with the dog and to keep her in the clinic, since she's a big unpredictable female dog in heat and our dog is male. We did that daily, paying a lot of money for it, until around Tuesday, when the doctors decided that the dog problems were probably neurological and that her uterus was malformed and probably would have caused the dog to die in the near future unless operated and removed. I was about to authorize the operation, too, and was thinking of names for the dog. Since our dog is named Tyrion, naturally she would have been Arya, but for the fact the dog was older, so maybe Sansa - she was traumatized and afraid of everything, too. In the end I was going for Lysa - since that was the older crazy aunt in Games of Thrones.

And here comes serendipity. A young woman comes to the clinic and asks if it is possible for dogs to run away from home in order to die. Apparently, her dog, staying with her parents, ran away from home and said parents were too horrified to tell her of that until that day. Stranger still, in the rare occasions that the dog was getting lost, she always returned home, which she now failed to do. No, the girl didn't look for found dog ads (which I posted all over the Internet), she didn't ask around in the park where the dog was lost (where I told just about every dog owner to spread the word), no, she just randomly arrived at the same clinic and asked this question. Of course, it was her dog we were talking about. No, lady, when dogs run away from home they usually go to the vet to get checked out!

So, if and when the dog will get operated or receive specialized treatment for her brain issues - which apparently she had since she was a pup - is the owner's business, and we only offered our financial aid in case it was needed. Happy ending, the dog is back with her owners, with some extra medical tests done and possible solutions for her future well being on the table.

Saturday, May 27, 2017

Samurai Jack is dead!

16 years ago, Samurai Jack premiered as an animated show where a honorable samurai travels through time to destroy the demon Aku, who has taken over the world and made it evil. With Genndy Tartakovsky's genius behind it, this tale of good versus evil never seemed too simple or too idealistic, something movies today and in the future need to learn. However, after only four seasons, the show was not renewed, leaving fans with the bitter sweet conclusion that evil will triumph if no one fights against it, especially in the world of movies and series.

And people fought and the series received its continuation... and its ending, a season 5 that ends in a glorious finale. What comes next is a spoiler for the last season and the show's finale, you've been warned.

Click to show spoiler

For Entertainment Weekly, Геннадий had this to say: This is it. This is the definitive end, and it’s a great end. I haven’t seen it yet, but I’ve storyboarded it, and I think it’s super satisfying, and it should close the door for me for Samurai Jack. … Now, look, there’s 50 years between season 4 and season 5, and if somebody wanted to jump in and do some stories in between, but for me this is the end

Anyway, I really hope Tartakovsky comes with something new soon, something that is just as creative and just as actual as Samurai Jack was. He somehow made a show about a samurai feel futuristic. That's not easy. And even his most childish shows, like The Powerpuff Girls, were great. He will be directing Hotel Transylvania 3 next, but I really wish he wouldn't burn out and stick to movies, especially stupid ones like this, when his shows were the highlights of my youth.

Thursday, May 25, 2017

Cold Magic (SpiritWalker #1), by Kate Elliott

book cover Just look at that book cover. Someone was already imagining the multiple Hollywood movies, or at least a TV series. Yes, it's another young adult story, but this one is different because it is from the point of view of a girl. Besides, I've read several YA books and I liked some of them.

In Cold Magic, Kate Elliott describes a feudal world in which the rulers are either princes or "cold" mages, although there are many other aspects of magic in the world that are briefly explored. There is a lot of history, too, parallel to the European one - if magic was real in the Napoleonic times. For the first quarter of the book I lapped it up. I was curious to see how this young girl manages to untangle the mystery of the things that are happening to her and if she will thwart the powerful people who want to use her and her girl cousin. However, after a few chapters in which kind of the same thing happens over and over again, with no real reason, I was getting restless. Add to this the long descriptions of personal fashion, grooming and judgement on how people look and what it tells about them and I was starting to get a little annoyed. When it all turned to romance, I was simply disappointed. It wasn't that the point of view of the young woman ruined the story, but that it irritated me enough to make me attentive to the plot holes.

Bottom line: I am half curios on how the world building will evolve and how the author is going to describe this alternate magical Europe, but on the other hand I feel like the entire book I waited for something to happen and to make sense, when in fact all characters did things in order to move the story in a certain direction. Instead of being character driven, the plot meanders and the characters drift on it like leaves on a river. I can't empathize with people that lack almost any kind of control over what happens to them, especially since the trope of the young person thrown into a maelstrom of unexplained situations with people that speak in riddles and keep things for themselves is so overused in YA novels and I am tired of it. I will not read the next books in the Spiritwalker series. It was fun for the first half of the story, but then it went downhill.

Sunday, May 21, 2017

Zero Days (2016), a very interesting and well done documentary about Stuxnet

Here is my IMDb review for the film: A gold standard in documentary films and a very interesting story
Once you go beyond the automatic dislike of computer screen hexadecimals turning into beautiful 3D animations, which is the norm in all popularizing documentaries, you can see not only how interesting the story is and how well the film is done, but how much effort came into the gathering of the information in it.

This two hour film describes how Stuxnet changed the world, first from the eyes of malware researchers and how they discovered the worm and how they started to analyse it and realize how advanced it is and what it does, then goes into the political realm, describing how the US and Israel did this to Iran, then narrows down, showing not only how this was something the US did to prevent the Israelis to do even worse things, but how Stuxnet came back to bite its creators in the ass. In the end we are shown the true reality of a world in which anyone can do horrible damage with no attribution while the security institutions keep everything secret and out of public discussion and decision.

A very informative movie, filled with useful tidbits, showing the story of Stuxnet from start to end and to later consequences, interesting to both technical people and laymen alike. Well done!


I particularly liked the idea that the more aggressive the worm got, the less effective it was. Israelis pushed and pushed the US until the malware became more autonomous and the whole operation blew wide open and the Stuxnet worm infected American computers. It was funny to see how scared American agencies were about this new sophisticated malware attacking their systems, while other American agencies, the ones that created it, were prohibited by secrecy to reveal it was them.

I also found really interesting the fact that the most effective versions of the worm were subtle pieces of code that attacked very specific targets and needed a human operative to insert them into the system. The "public" version of Stuxnet, the one that became so visible antivirus people noticed it, that is the version that used stolen certificates and four zero-days exploits, but wasn't the one that actually delayed the Iranian nuclear operations for a year with no one the wiser about what was causing the damage. Blunt tinkering in the elegant code of the initial software led to its discovery and, indirectly, the creation of cyber warfare units in all national intelligence agencies.

Wednesday, May 17, 2017

Sleeping Giants (Themis Files #1), by Sylvain Neuvel

book image Gotta learn to not blindly trust book reviews that appear in my favorite web sites. I mean, they have the right to be wrong (aka to their own opinion). To be honest, I just expected the book to be better, I wasn't particularly upset with it. The review called it "the next Martian"; it's not even close. It's a completely different style, mood, idea and quality. But, that being said, I enjoyed it. Better still, I learned an interesting and probably valuable lesson out of it.

You see, Sleeping Giants is the closest I've come yet to a "hand held" book. The story is told exclusively through interviews and records of discussions. I mean, there is one scene where the heroes have to disarm some guards and instead of going quiet, they keep talking into their sat phone with someone so we can read what happened. It wasn't bad, but I sincerely hope that the rest of the books in the Themis Files series are not the same, although I am pretty sure I will not read them. However, I've learned from this. Even if you are shit at writing scenes, you can write a book that is being told through dialogue and short personal entries and tell the story.

So the story that Sylvain Neuvel tells is about us finding pieces of a giant alien robot and finding out how to operate it, even if the way it functions seems incomprehensible. I've covered the style, so now I have to tell you about the plot, which is naive to say the least, but enough to suspend your disbelief as you read the book. The beginning promises a lot more than the ending provides and, while I understand there is another book, I don't really care how the story ends.

Bottom line: a little fun sci-fantasy, with no real consequence or worth of mention. However, Sony did option the rights for the book, so who knows when we're going to get an alien robot defending the Earth against Godzilla movie, or whatever crap like that.

Sunday, May 14, 2017

Moved most Codeplex projects to Github

Microsoft is closing Codeplex, so I had to migrate all projects that I felt were still relevant to Github. First of all, you should know there is a migration tool at Codeplex to do this automatically. Second of all, you SHOULD NOT USE IT, because it's just stupid, plus it only works in cases where you committed source code, not archives of source code. It does't add a proper readme file or a licence file and it doesn't even migrate the description. So don't use it, just don't!

I don't know how I feel about this. I always wanted Codeplex to be successful, but with so little resources allocated for the project, I think it is better that they are closing it. It was a slow, out of date web site and Github is clearly better for many reasons. However I don't see how a monopoly on online source control is good either. Well...

Saturday, May 13, 2017

The Obelisk Gate (Broken Earth #2), by N. K. Jemisin

book cover The Obelisk Gate immediately follows the story from the first book in the Broken Earth series, The Fifth Season. N.K. Jemisin now makes clear which are the sides in the conflict and, with the characters thoroughly fleshed out in the previous book, she is free to let things happen, to finally feel there is a story, and a root cause and a purpose and some action. That is why, in many regards, even if it is just another part of the same story, The Obelisk Gate is the better book.

Unfortunately for me, I won't be able to read the third book, The Stone Sky, until it is released and then... err.. made available, which happens sometimes in August of this year. Yet at the same time I have to say that there was enough in this book to appease my desire for more Broken Earth. I may even not read the third book, even if I am curious on how it will all end. It is an important lesson to learn, that stories can burn themselves out before their time, just like an orrogene using too much power and dying of it. Somehow, at the end of Obelisk Gate there is not enough mystery left but what was so bluntly left out by the author with all the silent and "I'll tell you just enough" type of characters she used. I have to wonder if there is even enough material for a third book. The fact that there is a 2014 short story that seems to happen long after the third book makes me think that it was always planned as a trilogy and this will probably be it.

Bottom line: The sides become clearer, characters align with them and a lot of the education of normal people is being discarded in favor of the brutal way of thinking in case of terrible cataclysm and dire need. There is still a climax to come, but what will it entail except the obvious outcome and some fighting? To me, the important part of the story has been told already.

Friday, May 12, 2017

The Fifth Season (Broken Earth #1), by N. K. Jemisin

book cover The first book in the Broken Earth series, The Fifth Season is a good book. I liked the world building, the characters, even if there are so few of them and grabbing all the action in the story, and I am going to read the second book in the series, The Obelisk Gate, next.

The story is mostly a setup for the series, where the main characters are introduced and the world is built. As a far into the future post apocalyptic Earth, it is a mixture of old dead civilization influences and pure human survival. That is why some words that are particular to our culture stick out when used and N.K. Jemisin does slip a few in there, although not enough to be annoying. The book is split into three view points: the basically orphaned Damaya, the talented Syenite fast climbing in the ranks of the Fulcrum orrogenes and the old rogga Essun, walking a damaged landscape in order to find her husband... and kill him. The Essun point of view is written in second person, which may be off putting for a while, but one get used in time.

There isn't much else I can say without spoiling the story. The feeling at the end of the book is clearly not one of closure and catharsis, as it ends abruptly and you realize it is just the first part of a larger tale. While I can't say I was awed by the content or the writing style, they are both solid and professional. The book captivated me and I will be continuing to read the story, mostly to see where it goes.