‘Sponsored By America Online?’

Score: 2/5

David Baldacci

Meh. I really liked the previous book I’d read by this author but this one wasn’t great at all. It’s not just that it seems like he’s just swallowed the America Online email manual (although 20-odd years later that is kinda funny), it’s not the implausibility of some of the tech, it’s not just the obvious tech solutions that were available when the book was written, it’s just... it’s just not great.

The plot isn’t well paced, and I don’t really care for any of the characters. I’m supposed to warm to some of the central people and hope they grow to trust one another but mostly I just sat there thinking they should both be locked up.


Tags: 4 Word Book Reviews
Created by on Logo15659OpinionatedGeek Ltd.Logo15659

‘Better Characterisation Than Movie’

Lee Child

There is more visibility and development of character in the first 50 pages of this book than in the two Jack Reacher movies combined.

I was loaned this book but I was suspicious of it because I didn’t really like the first Jack Reacher movie. I read it anyway. It’s much better than the movie. (This is a Jack Reacher book, but it’s not the basis of either of the movies.) Jack Reacher feels like an actual person in this book, rather than the one-dimensional portrayal he gets in the movies.

The plot is obvious in parts, some of the ooh-why-does-that-happen are not difficult to figure out, and if you’re fond of crime books you’ll see the ending a mile off, but it was still fun to read.

Tags: 4 Word Book Reviews
Created by on Logo15659OpinionatedGeek Ltd.Logo15659

‘Thoroughly Undecided About This’

Score: 4/5

I’m honestly not sure what to make of this book.

It certainly seems as if the author has met a lot of psychopaths. And also that I have not.

I don’t think he’s seeing psychopaths where there aren’t any - many of the actions he describes seeing are indeed pretty awful. They’re just not things I’ve seen in person. Maybe I’ve led a particularly sheltered life. Maybe the author has led a particularly un-sheltered one.

(In a slightly strange twist, I met the author at a conference a couple of years ago, before his death last year. He seemed a perfectly fine, straightforward person, not someone prone to flights of fancy. No idea what he made of me.)

The basic thesis is that there are more psychopaths around than you expect, since they are generally underreported for various reasons. And that psychopathy isn’t so much a psychological disorder as it is an evolved predator/prey strategy where the psychopath wants to maximise gain and minimise effort and the non-psychopath wants to spot psychopaths early instead of becoming involved.

The relationship has evolved to the stage where spotting psychopaths is non-trivial. All the simple ‘tells’ have been eradicated, but they’ve left behind some strange behaviours. For instance, according to the author, psychopaths tend to want to get a lot of information from their victims while giving very little information in return. And so we non-psychopaths have evolved to be wary of people who act like that. The constant evolution of the behaviour of both psychopaths and non-psychopaths causes changes in the other party. It’s a constant battle. According to the author.

He admits he has no education in psychology and no qualifications to write this book. But on the other hand, no one else is writing a book from this perspective.

And I honestly don’t know what to make of it.

Tags: 4 Word Book Reviews
Created by on Logo15659OpinionatedGeek Ltd.Logo15659

‘Short, And Very Basic’

Score: 2/5

I’ve been reading up on Bitcoin and Ethereum lately, and I wanted to jump-start my learning by getting some Actual Books on the subject.

At £7.15 this seemed like a bargain. Not so, it turns out. It feels like a small book, and at 44 pages it is a small book. So small they don’t bother putting numbers on the pages in case you notice. And while I’d happily pay that much (and more) for a good book on the subject - one with an insight or two I can’t get just reading the websites - this wasn’t it.

I’m still only learning about Ethereum but I’m already well ahead of the content in this book. That’s a shame because it’s such an interesting subject.

Tags: 4 Word Book Reviews
Created by on Logo15659OpinionatedGeek Ltd.Logo15659

‘A Joy To Read’

Score: 5/5

Geoff Dyer

I thoroughly enjoyed this book. It’s not the sort of thing I’d commonly read - a writer gets to spend a two-week residency aboard a US aircraft carrier - but it’s wonderfully written and that made it enjoyable to read.

The author doesn’t take a pandering tone - it’s clear he disagrees with some of the people and their attitudes (particularly when it comes to religion). But he does seem to genuinely like and respect these people too. Mostly. And he has a very self-deprecating style - talking freely about how he’d hate having to share a room for 6 people (and how one for 6 people would be even worse than the one for 200 people!)

To give you a bit of a flavour of the author’s style and his occasion forays out of his depth, here’s a lovely bit. To set the scene, he’s just gone to the onboard gym:

Anthony Benning, the Fit Boss, was standing next to me, wearing a T-shirt and biceps. He had grown up in a military family but was actually a civilian, supervising the exercise program on ship. From what I could see his job resembled that of a bouncer, stopping people getting in. The gym was filled to capacity so he was operating a one-in-one-out policy that you get at overcrowded nightclubs. I didn’t know what to say but, feeling I ought to ask a question, said:
‘How big can a human arm become before it stops being a limb and morphs into something else?’

I genuinely laughed out loud at that bit.

Tags: 4 Word Book Reviews
Created by on Logo15659OpinionatedGeek Ltd.Logo15659

I’ve been playing around with Scheme for a little while. (Yeah, I guess I still don’t really have the urge to work with dotnet.) One of the things I did a while ago was ‘port’ the Common Lisp version of Eliza in Peter Norvig’s ‘Paradigms Of Artificial Intelligence Programming’. Eliza, in case you haven’t heard of it, was one of the earliest natural language processing programs. It tried to imitate a Rogerian psychotherapist using simple pattern matching. (I thought the original Eliza paper by Weizenbaum was exclusively behind a paywall but there’s a freely-available version of Weizenbaum’s Eliza paper here.)

This port is available on Github, of course (that great single point of failure in the distributed version control system) and it’s called ElizaNorvig.

It’s not a super-smart chatbot, it has to be said. Norvig’s focus was on the beautiful pattern-matching lisp allows, and he supplied a fairly small rule-set (about 40 rules) to demonstrate its use. It’s enough to show some simple conversations but it quickly shows its limitations:

You: Hello there

Eliza: How do you do. Please state your problem.
You: I'm tired
Eliza: Do you feel strongly about discussing such things?
You: Not really
Eliza: What does that suggest to you?
You: That I'm tired
Eliza: Please continue.
You: Please don't make me
Eliza: I am not sure I understand you fully.

If I were smarter or more persistent I’d have extended the rules to give what the Cool Kids these days are calling a better ‘conversational UI’. But I didn’t. I thought I’d keep that version a pretty pure port of Norvig’s code, and I’d put my tweaks in a separate repository. But again I didn’tAfter that tweet in May I made a few tweaks and then pretty much forgot about it.

I’d tried a bunch of different Scheme implementations on the way but found Chibi Scheme to be closest to what I wanted - a simple, pure R7RS scheme implementation that stuck to the standards instead of requiring special command-line switches to make it standards compliant. It’s pretty cool. I like it.

Then I noticed there was a web site that allowed you to run Chibi scheme in your browser. That’s pretty neat, given that Chibi is a C program...

Turns out you can build Chibi using emscripten to create an asm.js version that can run in browsers.

So of course my next step was to try running Eliza in a browser too.

And it worked.

There’s no documentation on running the asm.js version of Chibi, but I got a lot of the way there just looking at the existing online implementation. Then a few emails to the authors of Chibi Scheme and Chibi’s emscripten build got me answers to my remaining questions. (Thanks guys!)

The big hurdle that wasn’t shown in the existing online implementation was sharing data between the browser/Javascript and the scheme code. The easy approach is to create a global variable in Javascript, say ‘foo’:

window.foo = '';

This can then be accessed in scheme code with:

(define (foo)

  (string-eval-script "window.foo"))

And set using something like:

(define (set-foo! value)

  (eval-script! (string-append "window.foo = '" value "'")))

(You’ll need to be careful of quoting ‘value’ above if it contains quote marks.)

With those wrinkles sorted, getting my existing scheme code running was remarkable easy. All the SRFIs I needed were available and my code wasn’t doing anything tricky so I shouldn’t have been too surprised, but surprised I was. It worked!

And you can try the Eliza out live in your browser right now!

Tags: Scheme
Created by on Logo15659OpinionatedGeek Ltd.Logo15659

‘Different Perspective On Transhumanism’

Score: 5/5

Brenda Cooper
£17.50 (Really? I paid £3.29...)

I’ve read some science fiction about transhumanism but this book had a slightly different take on it. Instead of seeing the process of a society becoming transhuman, this book looks at what could happen if some in society became transhuman and were then banished. What would happen when they came back?

It’s a neat idea, and worth exploring. It’s an interesting setting, with more depth than normal, but it suffers a little from the everywoman lead character feeling a little contemporary. She feels of this current age - 2017 - not the time period she’s from.

There are a few shortcuts like that. It’s almost like the author wrote the book then did a global search replacing ‘coffee’ with ‘stim’. Yeah, it sounds a little fancy at first but when the phrasing and use of the term all suggest coffee it’s a pretty transparent gimmick.

These niggles aside, it is interesting to read and think about.

Tags: 4 Word Book Reviews
Created by on Logo15659OpinionatedGeek Ltd.Logo15659

‘Nice Self-Contained Science Fiction’

Score: 4/5

Adam Rakunas

A nice, self-contained science fiction story. (There is a follow-up but I haven’t read it - it’s not one of those big-books-cut-in-two-to-double-the-profit.)

The setting is deep enough to be interesting. Not everything is explained right away, and sometimes things aren’t explained at all, leaving you to figure it out. Characters are more than paper-thin too. I found it quite readable.

Tags: 4 Word Book Reviews
Created by on Logo15659OpinionatedGeek Ltd.Logo15659

‘Too Reliant On Coincidence’

Score: 2/5

Clive Cussler

Things happen in life. In fiction, sometimes weirder things happen. The protagonist is often at the centre of events because, well, otherwise they wouldn’t be the protagonist. Books about people doing nothing don’t often make it far in genres like ‘Adventure Fiction’.

(Side note: I’d never heard of ‘Adventure Fiction’ before seeing it on the cover of this book.)

Some level of coincidence is probably essential. Some types of books are heavier on coincidences. Some take it to levels that stretch credulity.

And then there’s this book.

I’m OK with the hero being involved in the right place at the right time for some international intrigue.

I’m even OK when he also happens to have the boat closest to the action when one of the characters needs rescued. I’m even OK that he was diving from an inflatable in the middle of the sea and that inflatable was the only thing within reach of the action.

I’m not OK when all that action connects from a wreck he dived on to an undiscovered wreck over a thousand miles away that just happens - just happens to be discovered that week. That very same week. It had lain on the ocean floor for a century and it was discovered the very week it became relevant to the plot. And you know who discovered it? The hero’s son and daughter. Who just happened to be exploring in that exact area.

At this point I kinda started treating the book as a comedy.

After all that, it’s just OK. It’s well paced but it’s shallow, superficial.

It’s also, however, only the second book I’ve read that was set in the time I was reading it - this book is set in July 2017. (The other book I read in the period it was set was 1984.)

Tags: 4 Word Book Reviews
Created by on Logo15659OpinionatedGeek Ltd.Logo15659

Back in March this year I wrote a blog post ‘Your tools shouldn’t spy on you’. I still feel pretty much the way I felt then.

Today Microsoft has released some of the telemetry data along with announcing their plans for future telemetry collection.

I wrote a comment for that blog post of theirs. It’s currently awaiting moderation, but I figured I should post it here too so I can keep a record of what I said.

I pretty much stopped using dotnet in March when I found out it was collecting this telemetry. I believe it's wrong that tools spy on their users: https://opinionatedgeek.com/Blog/2017/3/26/your-tools-shouldn-t-spy-on-you

Spying is a good word for what's happening here. There's no guidance when you install, no prompt to ask you if this is all OK, just the sneaky sending of data that you may not even know about. If all you did was install and run the tool, you wouldn't know it was send data to Microsoft. It's hidden away unless you're a fan of technical blogs.

Despite someone's Github issue - https://github.com/dotnet/cli/issues/3093 - (over a year old and still running), despite someone else's Pull Request - https://github.com/dotnet/cli/pull/7096 - switching telemetry off by default, we are in the situation where Microsoft now seems intent on making the tool's spying even worse, all while talking about community engagement.

Because now, as well as gathering data whenever you run the tool, it's going to capture and pass on a token to uniquely identify your computer. And what's worse is this token can be discovered by anyone on your LAN. Worse still, the plan is for this data to be made public.

Want to know what your former colleague was doing before they left the company last month? Just find out their computer's MAC address (from their network card), compute the SHA256 of it, and then you can search this data Microsoft is making public and see the commands they ran and when, right down to their typos. See? You can spy too now! (How soon until this telemetry is evidence in a lawsuit, I wonder.)

'The data collected does not contain personal information.'?
And then there's the opt-out mechanism. To stop the tool opening network connections I didn't ask it to, or sending data I don't want it to, I have to specify an environment variable. To ensure that's done, I need to put that in the user initialisation of every shell of every user of every machine and every container that might possibly be running dotnet. And if I make one slip-up, the tool spies on me again.

But the problem is not the identifying token. The problem is not the publishing of the data. The problem isn't the poor opt-out mechanism (for users who didn't opt in in the first place!) The problem isn't even the opting everyone in by default.

The problem is the normalisation of this spying. The drip drip drip of taking more information, combined with making it hard to configure the tool so it doesn't spy on you. The problem is having to monitor everything about the tool because you can't trust it. The problem is the attitude that says "We know you don't want us collecting this information, so we're not even going to ask you about it when you install."

Without asking the user if it's OK, there's no informed consent. Taking data without informed consent is bad. Publishing data without informed consent is bad. It annoys me that I have to state these things.

I suppose that in the end it all comes down to the question I asked in March: "Would you prefer a tool you can just trust, or a tool that may have better features but that you constantly have to check to verify isn’t doing anything it shouldn’t?" I'd prefer a tool I can trust. Since March, dotnet has not been my preference. I prefer my tools Private By Default.

Tags: Clueless Idiocy
Created by on Logo15659OpinionatedGeek Ltd.Logo15659