Review: Schismatrix+ by Bruce Sterling

Bruce Sterling is, together with William Gibson, one of the godfathers of the Cyberpunk genre.

Oddly enough, while I love the aesthetic and the themes, I have not actually read many books in the genre, possibly because the ones I read (e.g. Gibson’s Sprawl Trilogy) weren’t much to my liking (see my notes on The Peripheral).

So it’s not surprising that I had not read anything (or if I did, I forgot it) by Sterling, and I decided to give it a try.

Mild spoilers ahead.

The Shaper/Mechanist universe

Schismatrix+ is a book compose of a novel, Schismatrix, and a few short stories set in the same universe, a future where humankind has fractured (see, that’s where the schism in the title comes from) into sects, micro-countries, corporation-states etc, and the major split is between shapers, aka post-humans who believe in improving themselves through genetics, and mechanists, those who prefer cybernetics and a merge of homo sapiens and machine.

There’s more schisms, like in everything, and people drift between one and the other over time so the boundaries are less fluid than the universe would have you believe, but it’s an interesting setting (and not an uncommon one, tbh).

(Sidenote: the Italian translation of the title is “la matrice spezzata”, or “the broken matrix”, which is quite different from the original but it’s quite good)

The place where this happens is the solar system, cause post-humans have not yet achieved interstellar travel, but at some point alien races do appear, the first and chief of which is the investors, a race of space-faring economic-minded reptilians/insectoids.

I really like the concept of the investors, which are, in some sense, a more grounded version of Star Trek’s Ferengi. They are obsessed with wealth, not particularly bright nor threatening, but they are scary in the way that someone far more powerful than you can always be, even if they play by some legalistic and deal-oriented rules.

I also really enjoyed the fact that in this future world there’s a general societal collapse, but we still have patents. Truly a dystopia.

Is this cyberpunk?

I am not sure what cyberpunk is. I thought the core concepts are the fragmentation of society, a lot of computers, the death of traditional nations and rise of corporations. I didn’t expect aliens. By this point of view this is a lot less cyberpunk than, say, Neuromancer or Burning Chrome.

TVTropes says that “Schismatrix is to Neuromancer what Gormenghast is to The Lord of the Rings“, and I honestly have no idea what they mean.

I don’t know, drawing lines hardly ever work, let’s just say this is a book about post-humanism and human societies which got too complex for their own good.

Prigoginic what?

Ilya Prigogine was a Nobel prize winner chemist, who, among other things, studied complex systems.

Sterling heard of him and made up the “prigoginic levels of complexity”. This is akin to old science fiction where “the fourth dimension” was a parallel universe, i.e. it uses some of the vocabulary but fundamentally ignores the actual meaning.

Anyway, in this universe, systems will sometimes make a leap from a level of complexity to another. So, the primordial chaos of the pre-universe made a leap into space-time and matter; matter made a leap into primordial life; life beame intelligent and self-conscious, and here is where we, and the shaper/mechanist universe is.

But the beauty of this post-humanist universe is it’s constantly running, and on the verge of, the fifth prigoginic leap. Something which we cannot describe, since it’s beyond what we can even conceive of.

Here’s an interesting on prigogine and science fiction, written better than I ever could.

Fun trivia: Bruce Sterling in the intro says Prigogine read the stories and said they had nothing to do with what he said, and Sterling agrees.

The stories

Before I forget them completely, these are the specific details about each story.

Here are more spoilers.

Schismatrix

The original novel which got “expanded” in this book. It’s a sort of picaresque adventure following Abelard Lindsay through various adventures, changes of identities, meeting with friends and enemies and so on, across the whole solar system and a span of decades (centuries?). The novel reads lightly even when it touches difficult topics, and it was very enjoyable for me.

It ends in an interesting way, and I particularly enjoyed the irony built into imagining of the various quasi-states, such as the Mare Tranquilitatis People’s Circumlunar Zaibatsu or the Czarina-Kluster People’s Corporate Republic.

7/10

Swarm

Probably the most beautiful story, which has also been made into a very nice animation in Netflix’s Death Love & Robots anthology. It explores the common sci-fi theme of “social insects in space”, but it puts a beautiful spin on it, embracing the idea that the Swarm not only prospers without something analog to our intelligence, but explicitly chooses to avoid it: from its point intelligence is a trait that leads to species fizzling out in a few millennia.

10/10

Spider Rose

Another one used for Death Love & Robots, tho they changed it slightly. I’d argue the original version is better, but the animation is good too. Basically: lonely mechanist receives a pet.

6.5/10

Cicada Queen

We revisit (tho originally this was written before the main novel) the Cicada Kluster, where a mixed community has developed around an investor queen. A Shaper named Landau invents a new kind of jewel, and decides what to do with his new riches. We also get to know the lobsters, a kind of mechanist post-human which wraps themselves in an exoskeleton which allows them to live in the void of space, becoming more and more self absorbed and detached from the human race.

7/10, mostly because of the lobsters.

Sunken Gardens

The people of Terraform-Kluster have been terraforming Mars for a while, and there are regular tournaments/battle between factions of “vassal” tribes to show their skills.

7/10, tho I had to go through it twice to appreciate it

Twenty Evocations

Some experimental post-modernist writing; basically we see the life of a Shaper named Nikolai Leng through fragments of his life in the form of “evocations”: singulat titles like “ECLECTIC EPILECTIC” or “CHILD INVESTMENT” followed by a sentence or a couple paragraphs. Kind of like you could imagine seeing flashes of your life before dying. Surprisingly moving.

7/10.

Conclusion

I think this was well worth the read. I didn’t love everything about it, but I liked a lot of it. This was not the book I expected, but it’s good.

Vote: 7/10, the book is a classic for good reasons.

Review: Greatest Hits by Harlan Ellison

I did not know Harlan Ellison until some time ago. I had read some his work in anthologies or magazines, but I never really pay attention to names.

But then I noticed this collection of short stories, and I realized he’s the author of “I Have No Mouth, and I Must Scream”, and thought I’d give it a chance.

Mostly, I’m convinced short stories are the format for speculative fiction.

Sure, I enjoyed the whole saga of Herbert’s Dune, or Asimov’s Foundation cycle. but I mostly like ideas, and a short story gives you that in a few pages instead of hundreds.

Anyway, this is an interesting collection; Ellison is an author of his time, and he perfectly embeds the New Wave style of science fiction (experimental writing, social critique, a penchant for shocking the reader). You may like this or not, but I think it’s worth reading it just to get yourself acquainted.

The Stories

I forgot to write this review soon after the book, so by this point I’ve already forgotten some of them… so these are some I do remember.

“Repent, Harlequin,” Said the Ticktockman (1966)

A classic tale of The Fool fighting against the establishment, the broken cog in the perfect machine, the rebel, the joker. I think this is written in an interesting way, but not particularly interesting plot-wise. Stephen King recycled the Ticktockman in his Dark Tower saga (book 3, “Wastelands”), and I think he did it mostly cause it’s just a cool name.

I Have No Mouth, and I Must Scream (1967)

One of the most famoys SF short stories, probably in the top 5 of most memorable ones (I’ll let you pick the others, but I have my choices, if you ask).

It’s harsh, and depressing, and everybody should read it.

The Deathbird

I think the author wanted to tell me something and I didn’t understand it. This one won a ton of awards, but for me it was “meh”.

Jeffty Is Five

Without too many spoilers, the story follows a kid who’s friend with Jeffty, and, well, Jeffty is always five years old. I cannot express how good this story is. It’s deeply moving and by far the better in the collection IMO, even tho the idea is so simple it is completely contained in the title. A masterpiece.

Pretty Maggie Moneyeyes

A great short “amazing stories” kind of tale, palate cleanser.

Mefisto in Onyx

This one also won some awards, also a fun “amazing stories” kind of tale. Follows a telepath who goes to visit a mean on death row, to actually confirm whether he’s guilty or not. Good story.

The Beast That Shouted Love at the Heart of the World

Look, the title is better than the story. It’s a deeply experimental composition with no linear narrative, and while I can agree it’s good literature, I’m not convinced it’s good SF. Wikipedia has the whole plot so you can go read it.

How Interesting: A Tiny Man

Another wonderful simple idea: a scientist creates a tiny man, which is initially considered a fun novelty, and then a target of hate. Very good story, very good writing.

Conclusion

I listened to this in audio form, and Harlan Ellison himself narrates most of it. Ellison was an odd person, and he reads the stories with so much emphasis as to almost be distracting. which in some ways compounds the effect of the stories, and in some others is just, well, annoying.

Still, he’s the author, so that’s how they should be read, perhaps.

I feel some of the stories have lost their power over time, and on the other side some may seem uncouth to modern readers, but I think anyone who claims to like SF should read them.

Also, again, the Jeffty story is wonderful and worth the price of the book by itself.

Vote: 7.5/10, Solid book, plenty of good stories, some iconic ones.

Micro Review: The Grocery

I read the Italian version of this book, the first in the Cherry Bomb book collection by Bao. The collection is curated by Zerocalcare who’s the most successful comic book writer in Italy in recent years, and there’s an interview with the authors on Bao’s youtube channel.

The Grocery cover

The original is French, so I’m happy to read a translated version (compared to e.g. english comics which I can read in the original), and it was published in multiple volumes, so this book is pretty massive, at 400+ pages. It feels like ~20€ well spent, and as ZC mentioned, you can also use the book to clobber someone if you ever need to.

The story starts as what one might feel as comic pastiche of The Wire, with drug dealers and gangs fighting for control in a generic Philadelphian neighborhood.

Still, this is done nicely, the cutesy art style and the contrast between sweet naïf characters and raw ultra-violent ones is a good idea.

Then, about half-way through the book, the story spins out in a completely unexpected direction and turns into a near future dystopia a-la Black Mirror.

And then it ends. I mean, it’s not like it doesn’t have a good ending, it does, it’s just sudden and somewhat unexpected.

I feel this is somewhat common in modern french comics (but please correct me), the stories seem put together perfectly for 60% of the story and then the authors.. give up? Still, I liked this book.

Vote: 7/10, I felt this was two different books, but I enjoyed both.

Micro Review: Gideon Falls

I’ve seen Gideon Falls mentioned often, but to be honest I kept confusing it with Gravity Falls.

The difference is: Gravity Falls is a rather entertaining cartoon with a bit of mystery that may entertain small kids, while Gideon Falls is a horror comic series that may traumatise them for life.

Read more for my opinion of it, but beware the mild spoilers.

cover for Gideon Falls Deluxe Edition (Book 1)

Gideon Falls is a comic written by Jeff Lemire and penciled by Andrea Sorrentino, centred around a group of people that enter in contact with a mysterious black barn.

It’s partly Lovecraft cosmic horror stuff, partly Stephen King’s The Dark Tower, and a sprinkle of David Lynch’s Twin Peaks.

The story touches on multiverses and time travel, which these days brings to mind the horrible way the Marvel Cinematic Universe does this, but it’s done with talent, so it does not suffer from the devaluation of any action done by the characters. On the contrary things have gravity and piece fall in place as they should. In spite of this, the plot is somewhat linear (but not without twists!).

The art is quite good. The style per-se is not my favourite, but the composition of the scenes and pages is beautiful, and you feel a lot of effort went into this.

I read this over a few days, and I probably didn’t pay enough attention to it, I think a re-read might reveal a lot of hidden gems and hints that I missed on the first read.

The series won 2 Eisner Awards (best new series and best colouring), when it came out a few years ago, make of that what you will.

I liked it enough that I’m going to try and read more of the Lemire/Sorrentino duo, since they seem to have been quite productive.

Vote: 7/10, I will read more by the same authors.

A memoize macro in Elixir

During my 2024 Advent of Code, I decided to try and write some solutions in Elixir. I knew almost nothing of it, and after a month or so with it, I still know basically nothing but I had fun.

I also solved the problem with Ruby, so most days I limited myself to translating the solution from one language to the other, which is pretty straightforward: both Elixir and Ruby have high level data types (lists, sets, dictionaries, regular expressions), similar functions/methods to work with them (map, reduce, sum, etc) and you can typically convert things line by line. There’s one big difference tho.

State

Elixir is mainly a functional language, so if I had written something in ruby which used mutable state (pretty natural) I’d have to do a bit more work when translating it.

For example, many AoC problems require writing a depth-first-search or a variation of that (Dijkstra, A* etc), I’d write that imperatively in Ruby mutating state (e.g. push/pop things from a queue), but doing it in Elixir you’d carry the state in an additional function argument.

This generally works fine, but at some point I wanted to try something different, since there’s a lot of AoC problems solved with dynamic programming and memoization.

Typically, the first part of the problem is something that can be brute forced, and the second part requires you to apply memoization in a smart way, understanding what is the “state” you care about.

In languages such as Ruby/Python/Perl/Raku you generally do this with some metaprogramming that converts a method/function into its memo-ized equivalent, so you’d go from something like e.g.

  def fib(n)
    if n < 2 do
      n
    else
      fib(n - 1) + fib(n - 2)
    end
  endCode language: Ruby (ruby)

to

  memoize def fib(n)
    if n < 2 do
      n
    else
      fib(n - 1) + fib(n - 2)
    end
  endCode language: Ruby (ruby)

Alas, this was a bit tricky to do in Elixir.

Memoization in Elixir, done bad

At first, I thought I’d write a higher order function that just wrapped the code with a cache check

    def make_memo(fun) do
      cache = %{}
      fn args ->
        case Map.get(cache, args) do
          nil ->
            result = apply(fun, args)
            cache = Map.put(cache, args, result)
            result

          result ->
            result
        end
      end
    endCode language: Elixir (elixir)

Something like this might work in Scheme or other mostly-functional languages, but this does not work in Elixir: re-assigning to cache creates a different variable, rather than update the existing one. The Map object is also immutable, so I can’t update it in-place.

Luckily, Erlang (and thus Elixir) come with two mutable dictionaries you can use!

The Erlang Term Storage (ETS) is a shared dictionary that is writable by the current process and readable by all. The Process dictionary is, well, a per-process dictionary which is also mutable. I do not really know what the specific limitations are for either, and I was going to have a single process anyway, so I went with the latter purely on aesthetical reasons.

Thus I could write code like this

  defmodule Demo do
    def make_memo(fun) do
      fn arg ->
        # try to avoid the most obvious name collisions
        case Process.get({:memo, fun, arg}) do
          nil ->
            result = fun.(arg)
            # mutable state baby!
            Process.put({:memo, fun, arg}, result)
            result

          result ->
            result
        end
      end
    end

    def slow_math(n) do
      IO.puts("slow computation..")
      n * n
    end

    def main() do
      IO.puts(slow_math(10))
      fast_math = make_memo(&slow_math/1)
      IO.puts("should only execute this once:")
      IO.puts(fast_math.(10))
      IO.puts(fast_math.(10))
    end
  end

  Demo.main()Code language: Elixir (elixir)

And executing this seems to show the memoized function is indeed only executed once

  $ elixir fib.ex
  slow computation..
  100
  should only execute this once:
  slow computation..
  100
  100Code language: Bash (bash)

My code is still broken tho! While it works for this simple function, it would not work for e.g. a standard recursive fibonacci:

    def fib(n) do
      IO.puts("fib(#{n})")
      case n do
        0 -> 0
        1 -> 1
        _ -> fib(n - 1) + fib(n - 2)
      end
    end

    def main() do
      fast_fib = make_memo(&fib/1)
      IO.puts(fast_fib.(4))
    endCode language: Elixir (elixir)

This outputs

  $ elixir fib.ex
  fib(4)
  fib(3)
  fib(2)
  fib(1)
  fib(0)
  fib(1)
  fib(2)
  fib(1)
  fib(0)
  3Code language: Bash (bash)

And you can see the output multiple times for each number.

What is wrong here is that the function calls itself, and not the memoized function. If you wrote a memoizing function in Ruby or Python you’d (likely) be shadowing the existing one, so that each call would then hit the memoized one.

But I can’t do this in Elixir (or perhaps I can and I just don’t know how, I’m a newbie).

The obvious fix would be to alter the function to receive a reference to itself as an extra argument, but that means I need to also update all call sites which is ugly and boring. There’s a solution which is more fun.

Macro all the things!

Elixir is largely built from macros. Many (all?) of the various defsomething are macros. The Elixir developers advice against overusing macros but a project that you’re doing for fun and literally lasts one day seems like a good fit.

The idea is the following: rather than define a base function and then wrapping it with something else, we will define a function using a body and wrapping it with our caching logic.

The only function will be the one we define, and thus any recursive call will hit the same macro-defined memoized function.

The main thing to remember about Elixir macros is:

  • quote is used to generate code
  • unquote is used to insert values into a quoted expression

It may help to think of them as “defining a string” and “interpolate a value in a string“.

The standard example from the Elixir docs is to define an unless (“if not”) macro

  # usage: macro_unless(condition, do: something)
  defmacro macro_unless(clause, do: expression) do
    quote do
      if(!unquote(clause), do: unquote(expression))
    end
  endCode language: Elixir (elixir)

you can imagine this as more or less

 macro_unless = "if !#{clause}, do: #{expression}"Code language: Ruby (ruby)

You can see how the macro will get the block of code in the do argument, via either the inline do: or the block-based do ... end form.

But function definitions have more than a single word as condition, what is their shape? Well, you can find out easily, spin up an elixir shell and use quote

  iex(1)> quote do def fun(arg), do: whatever end
  {:def, [context: Elixir, imports: [{1, Kernel}, {2, Kernel}]],
  [
    {:fun, [context: Elixir], [{:arg, [], Elixir}]},
    [do: {:whatever, [], Elixir}]
  ]}
Code language: PHP (php)

AKA

  • literally the :def symbol
  • some “context”, whatever that is
  • an array containing
    • the “head” of the function (name, more context, arguments, etc)
    • the “body” of the function.

Elixir provides a handy helper Macro.decompose_call/1 to extract function name and argument names (and ignore the various “contexts”), so our final implementation of a defmemo macro looks like this

  defmacro defmemo(head, do: block) do
    {func_name, args} = Macro.decompose_call(head)
    quote do
      def unquote(func_name)(unquote_splicing(args)) do
        key = {:memo_cache, __MODULE__, unquote(func_name), unquote(args)}
        case Process.get(key) do
          nil ->
            result = unquote(block)
            Process.put(key, result)
            result

          result ->
            result
        end
      end
    endCode language: Elixir (elixir)

Notice the unquote_splicing, in our “macros are string definition+interpolation” simile, this is the equivalent of “join the values with a comma“.

The last step is putting this all together, the only thing to keep in mind is you need to put the macro in a separate module before using it

  defmodule Memo do
    defmacro defmemo(head, do: block) do
      {func_name, args} = Macro.decompose_call(head)
      quote do
        def unquote(func_name)(unquote_splicing(args)) do
          key = {:memo_cache, __MODULE__, unquote(func_name), unquote(args)}
          case Process.get(key) do
            nil ->
              result = unquote(block)
              Process.put(key, result)
              result

            result ->
              result
          end
        end
      end
    end
  end

  defmodule Demo do
    require Memo

    Memo.defmemo fib(n) do
      IO.puts("fib(#{n})")
      case n do
        0 -> 0
        1 -> 1
        _ -> fib(n - 1) + fib(n - 2)
      end
    end

    def main() do
      IO.puts(fib(4))
    end
  end

  Demo.main()Code language: PHP (php)

And executing this it seems to work

  $ elixir fib.ex
  fib(4)
  fib(3)
  fib(2)
  fib(1)
  fib(0)
  3Code language: Bash (bash)

Success!

defmemo, how are thee broken? Let me count the ways. 

This implementation was enough for me to solve Day 19 of the 2024 Advent of Code, and I am very proud of myself for having managed to do it, tho 90% of the credit goes to Saša Jurić for his articles on elixir macros.

But beware: this code is still utterly broken, and that is my fault 🙂

For example, functions in Elixir can be defined multiple times using pattern matching, and can have guard clauses

  def fib(0), do: 0
  def fib(1), do: 1
  def fib(n) when n > 1 do
    fib(n - 1) + fib(n - 2)
  endCode language: Elixir (elixir)

If you try to replace def with defmemo it will not work.

Likewise, functions can be defined multiple times with different arity (number of arguments), and that will also not work. Functions can also have default arguments, and I’ve not even tried to see how those work.

I’m also not sure I used the Process dictionary properly, and I think there’s a lot of room for name clashes. So, in short do not use this code.

If you’re looking for a proper defmemo you better use one of the established modules such as https://github.com/melpon/memoize.

Still, I hope you enjoyed this short tour of how to write an elixir defmemo macro as much as I did. And notice I’m still a wildly incompetent Elixir programmer, so feel free to correct me in comments if anything I wrote is too far from the truth.

Micro Review: Dodger

Dodger is a non-Discworld novel of the late Sir Terry Pratchett, set in Victorian London, following the adventures of a “tosher”, AKA someone who looks for valuables in the sewers. A few “known faces” appear in the book such as Charles Dickens, Benjamin Disraeli, Sweeney Todd, Robert Peel, etc.

But, I gifted this book to my wife a few years back, and it took me a long, long time to actually read it. I loved Pratchett, I literally learned English on his books but getting through this was a bit of a slog.

There’s some funny bits, but it’s not nearly as brilliant as your average Discworld novel. It’s also very lengthy for no obvious reason, there are just a lot of things that happen which do not seem to add anything to the story.

I enjoyed the depiction of old London, learned a few things (did you ever imagine the Romans had a Goddess of sewers? Just the kind of trivia Terry would put in a book), but still not enough to cover for the rest.

Perhaps this was just the author trying something new. Perhaps it was his disease advancing. Perhaps it’s just me being angry at him for getting an incurable degenerative disease and dying. People should be more sensible than that.

The end result is I didn’t like this book., but it’s not bad, so consider giving it a try if you’re a Pratchett completionist, or perhaps a Dickens one.

Vote: 6/10, meh.

Micro Review: Fragile Things

I started listening to this audiobook around the time Vulture’s article about Neil Gaiman came out.

This book contains some of my favourite stories, not just by the author, but among all stories I’ve read and I remember, such as A Study in Emerald, which is probably my favorite fanfiction of both Sherlock Holmes and the Cthulhu mythos.

But the behaviour described in the article is so fowl I cannot in good honesty recommend the experience of listening to the author’s voice reading his own words after knowing of the accusations.

I’m no prude, I’m no judge, I’ve got my own opinions and I’ll bite my tongue and keep them to myself.

But I can say this felt like a punch in the gut. The folks over at Fumettologica (in Italian, use some translation service) have a very nice article on why this is so upsetting. We thought Gaiman was one of the good ones, this feels like betrayal (and I am in no way trying to say the fans’ feelings are comparable to the victims’).

Anyways, I’d suggest if you want to experience the stories, maybe get the Dark Horse collection via Humble Bundle, or pick the book at a library.

He’s rich enough and won’t suffer from this either way, but it may make your soul feel a bit better.

Micro Review: Something Wicked This Way Comes

I was reminded of this book while reading the short story The Man Who Forgot Ray Bradbury, by Neil Gaiman, which was reprinted in Trigger Warning.

I realized I’ve read very little of Ray Bradbury, the greatest sci-fi writer in history, and I thought I should fill this void a bit.

Given the crazy amount of stuff he wrote, I would have been troubled to choose. Likely, this one has the catchiest title.

In some ways, it was exactly the story I expected: Small Town America gets in touch with capital case Evil. A Carnival is involved, which seem to be a scary thing in US pop culture, like clowns. Or perhaps they started being scary with this story, it’s hard to tell.

The story has kids in it, so, to me, it felt like going home. How many stories I’ve enjoyed, of kids dealing with the supernatural in small american towns? From King’s “IT” to Netflix’s “Stranger Things”, I’ve visited this topos a hundred times.

And as usual, I enjoyed it. I didn’t find this book particularly original (could be a case of Once Original, Now Common), but it is certainly well written and entertaining, the characters are lively and the dialogs feel real. I also feel I missed some sub-text and meanings, so I welcome anyone who’d like to point me to some literary analysis of the work.

It did not leave me wanting for more tho, so I think it’ll be a while before I move on to other Bradbury works.

Vote: 6.5/10, good, just not as good as I expected.

Micro Review: un po’ di fumetti

(post in Italian)

Nel 2024 ho letto un bel po’ di fumetti, questa è una lista del penultimo carico

Nero 1-8 (Bonelli Audace)

Ottima l’idea: il medio oriente durante le crociate, ma in versione magica dove gli esseri umani si confrontano con forze soprannaturali, con buoni e cattivi sia tra i musulmani che tra i cristiani. Belli i disegni, storia ok. I personaggi mi sono sembrati tutti abbastanza stereotipati. Per qualche ragione piace un sacco a mio figlio.

Non sono un fan del formato (e del prezzo!) ma è una bella edizione.

Voto: 7/10, continuerò a comprarlo.

L’ignobile Shermann (Saldapress)

Un vecchio pirata che tutti odiano muore e lascia un’eredità a un gruppo di eredi sconclusionati. Per qualche ragione mi aspettavo Shermann come Barney nel libro eponimo (La versione d Barney). Ma no, effettivamente Shermann è un personaggio 100% negativo. E all’inizio sembra lo siano anche gli eredi, ma poi d’un tratto cambiano. Cambiamenti un po’ immotivati a mio avviso.

Disegni belli, ma non il mio stile.

Voto: 6/10, la copertina è meglio del libro.

Nathan Never: Il Giorno del Giudizio

Vent’anni fa compravo ogni uscita di Nathan Never, poi ho smesso. Ne ricompro qualcuna ogni tanto quando vado in Italia, ma mediamente le trovo deludenti.

Il giorno del giudizio è la ristampa di tre fumetti pubblicati una decina d’anni fa (vedi la recensione del primo numero su Spazio Bianco). È una buona storia con bei disegni, ma sempre più spesso mi capita di trovare i dialoghi dei fumetti italiani macchinosi e finti. Un po’ come succede con il doppiaggio nei film, dove attori bravissimi si trovano a parlare un doppiaggese che non esiste (“ehy amico stai attento, o quel fottuto bastardo ti farà fuori” e giù di lì).

Voto: 6.5/10, forse non sono più il pubblico di Nathan Never

Quando muori resta a me

Ennesimo capolavoro di Zerocalcare. Commovente a tratti, divertente per la maggior parte. Piaciuto anche a mia moglie che è cresciuta lontana dal GRA.

Forse un po’ troppi temi, ma è un libro molto intimo dato che tratta del rapporto dell’autore col padre e della sua famiglia, quindi chi sono io per criticarlo?

Voto: 8/10, Zerocalcare non delude quasi mai.

Docteur Mystère – L’integrale

Esiste (?) un personaggio creato da Paul d’Ivoi alla fine del 1800. Nel 1998 Alfredo Castelli e Lucio Filippucci hanno deciso di mischiarne la storia con Martin Mystère, e poi han finito per scrivere alcune storie dedicate solo a lui.

Quando ho scoperto che esisteva un’edizione integrale pubblicata dieci anni fa, ho deciso di leggerla, pur non essendo un lettore di MM. Non è stato facile procurarsela, ma alla fine ce l’ho fatta.

Il Docteur è geniale, atletico, onorabile e strapieno di sé. Una specie di Capitano Nemo + Batman + Poirot. Le storie so scritte in modo ironico e auto-caricaturale e hanno continui rimandi alla lettura di inizio secolo scorso, nonché a eventi e persone del periodo (il maresciallo Radetzky ke parla kome uno tetesko di Sturmtruppen è stato esilarante per i miei figli).

È un divertissement surreale e a tratti demenziale, con storie che non hanno granché senso, ma a me ha divertito molto, e questa specifica edizione è molto bella e ricca di contenuti extra.

Voto: 8/10, lo rileggerò.

Micro Review: Way Station

I don’t have proof, but I think the ’60s had the best sci-fi. Looking at the list of Hugo Award for best novel there’s not a book in the ’60s which isn’t absolutely great. But I have not read them all, so I decided to pick up the missing ones.

I think this one is free if you have an audible subscription, so if audiobooks are your thing give it a go.

Way Station by Clifford D. Simak is one I missed. The premise is quite original: Enoch Wallace is an American civil war veteran who ends up managing an interstellar traveling station in his house, apparently made immortal, and being more in touch with aliens who pass by than with his own world.

I won’t give spoilers, but the book seems to have a few ideas that may have deserved a better exposition, and some things seem just a bit forced. Enoch is a wonderful character, but there’s basically little else.

Still it’s a an original and optimistic piece from 80 years ago, and I enjoyed it.

Vote: 6.5/10, you can’t go wrong with the ’60s sci-fi