Author Archives: david

MacIver: A pronunciation and spelling guide

My name appears to cause people problems.

I’m normally pretty good at taking this in my stride, but the thing with constant irritations is that there’s very little middle ground between being able to ignore them and being enraged by them. Most of the time I’m all “Hey, it’s fine, everyone gets this wrong” right up until the point where I snap and go “ARGH WHY DOES EVERYONE GET THIS WRONG I HATE ALL OF YOU”.

So here is a guide to not getting it wrong. Note that if you deliberately get it wrong to troll me (hi jonty), I’ll just think you’re bit of a dick and will not be successfully trolled. The annoying thing is that people find this difficult to get right. Most names are easy to get wrong when you’re actively trying.

First thing to note: That’s a capital i, not an lower case L. When written in a sans serif font this may be non-obvious.

This confuses a lot of people. About one time in ten if someone is calling from my bank or similar where they’ll not have seen my name before they say “Hello can I talk to Mr Mackelver please?”.

The second problem with that I is that it’s pronounced ee. If you’re like most people you will be pronouncing my name to sound like the guy from the TV with the paperclips and be saying “Mack-Ivor”. This is, to be honest, fair enough – the Scottish clan we’re descended from do pronounce the name that way.

However, I don’t. I’m not sure when it happened, but for whatever reason our branch of the family do not pronounce the name that way, and haven’t for a few generations (and I have video evidence to prove it. There’s a 1941 movie set in 1840 which uses our pronunciation). [Edit from the future: Apparently it’s a west coast vs east coast of Scotland thing, but I’m not clear on which is which]

A minor irritation is caused by people who omit the a. Mc/Mac are both common prefixes for mac names, so if you encounter one and are not 110% sure how to spell it (and need to spell it) you should probably ask which one it is.

“Ask how to spell names” is especially true in this case given that the person who is talking you may not be able to pronounce it. Which is how I ended up with my name spelled as “Mcgiver” on my P45. This is possibly the single most annoying abuse of my name I have ever encountered. [Edit from the future: I’ve since been referred to as “Dr Mactiv”. I do not know where the T came from.]

I believe this covers all the normal issues. So now you should have no excuse but to get my name right. Your compliance in this matter is appreciated.

Sincerely,

Day-vid Rich-ee Mack-ee-verr

PS. It’s DRMacIver. Not DrMacIver. My name is David Ritchie MacIver and I do not (yet) have a PhD.

PPS. My first name is David, not Dave

PPPS. The restaurant who somehow misheard my first name and book us a table under the name of Danger MacIver gets a pass. If you really want to call me Danger MacIver, you can.

This entry was posted in Isn't my life interesting? on by .

The man who named the stars

This is a fairy tale that popped into my head a few years ago (I believe inspired by Lord Dunsany’s Time and the Gods). I didn’t ever write it up because it feels incomplete, but I was rereading Sandman this weekend and it reminded me of this and I figured I might as well.

In the dawn of the world, there was a boy. He was not a terribly unusual boy. Perhaps a little cleverer than most, perhaps a little more prone to trouble. He had many adventures, but the world was young and full of adventure then.

There was a girl he loved, or thought he loved. Unfortunately she did not love him, and spurned his advances, yet he pursued her anyway.

Most likely he knew this was wrong. He was not a bad boy, but very proud (as boys often are) and he thought that through persistence he could win her heart.

Eventually in order to get rid of him, she began to set him tasks, claiming that he needed to prove himself to her.

“If you really loved me”, she would declare in the dead of winter, “you would bring me a perfectly ripe peach to show your love”.

And so he would search far and wide, and he would return with just the perfect peach.

As time passed and he refused to be frustrated she would set him harder and harder tasks. With each task, he would learn new tricks and his skills and alliances would grow. He befriended animals and trees and spirits and winds and fairies and they would show him the way to fetch what she desired.

“Bring me a flower from the top of the tallest mountain” she would ask, and a wind would carry him there to pluck the flower for her.

“Bring me one of the moons on a necklace” and the fairies would fetch a moon from the sky for him (this is why we only have one moon).

At last, so frustrated at his persistence, she set him one final task.

“If you truly loved me, you would bring me the names of all the stars in the sky”

For once, the boy paused. He knew, at last, this was a task beyond him. He pleaded for her to accept some lesser gift – a necklace of burning jewels, the egg of a dragon, a cloak woven from the finest spider silk, but she was adamant.

“You only seek to deny this gift because you are afraid that it is beyond you”, she declared triumphantly.

This was of course true, but it stung the boys pride deeply. He could not refuse.

“Very well”, he said. “I will find the names of all the stars in the sky, and I will bring them to you. I swear before the gods that I will not rest until I have done so”

At this, both  boy and girl knew that they had perhaps gone too far, but it was too late. It is dangerous to swear an oath before the gods, because they might be listening, but it is more dangerous to go back on one, because they will be vengeful.

So, his fate sealed, the boy set out on his quest to find the names of all the stars.


There is a man who stands upon a dead world. He knows the names of all the stars but one.

The sun has long gone out. It is a blackened cinder that now burns cold where once it lit the world.

The sky is empty but a single point of light. It was once the least of all the stars. It burned the dimmest, and thus has lasted longer than all the others.

The stars are a guarded lot, careful to give out their names, but the man has spent many aeons earning their trust and one by one they all gave their name to him, save this last.

Whenever he has asked its name of it, it has replied “I will give you my name, but not yet”.

So, to pass the time, he has learned many other names, always returning to the star that denies him.

“I have learned all the names of all the animals in the world”, he said. “Will you now give me your name?”

“I will give you my name, but not yet”

“I have learned all the names of all the trees of the forest”, he said. “Will you now give me your name?”

“I will give you my name, but not yet”

The world has died around him, and as it has died he has learned the name of every thing in it, but still the little star has denied him its name.

At last, as it begins to flicker its last, he asks it one more time.

“Little star, will you give now me your name?”

And it gives him his name, and then fades away.

And so he speaks the name of the girl he once loved and calls her spirit to him. In the time since he left to name the stars she grew into a woman and married a man. He did not bring her the moon on a necklace, or name the stars for her, but she loved him and that was enough. They had children, and then in the natural way they grew old and died.

To the man who named the stars, she still looks as she did when they grew up together.

“I have brought you the names of the stars, as I promised”

She bows her head to him in silent apology.

“I would love to hear them”

And so he speaks the names of the stars.

As he names each star, its glow appears above in the night sky, called out of death and into light.

By the time he speaks the name of the last star, the one that had long denied him, the sky is once more ablaze with light.

The woman he had loved smiles and thanks him.

He continues to speak.

He speaks the name of the sun, and for the first time in aeons it begins to rise.

He speaks the names of the winds, and the dead air stirs.

He speaks the names of the plants and the trees and the grass grows and the forests cover the earth again.

He speaks the names of the animals and the birds and the fish and the world once more teams with life.

He speaks the names of the people who have lived, and humanity once more walks upon the earth.

And, finally, he is able to rest. And so he does.

This entry was posted in Fiction on by .

A culinary option you may have overlooked

I’ve recently been visiting my aunt in Jordan, and as a result I would like to advocate something very important that if you’ve not had much exposure to middle eastern cuisine you may have overlooked.

Specifically, that there’s this thing called Za’atar and it’s amazing and oh god you should be eating so much of it and why aren’t you?

I first encountered it as a kid growing up in Saudi Arabia. Then we moved to England I forgot about it for ~ 10 years. At some point in my early 20s I said to my mother “So… I remember eating this thing with yoghurt and pita bread as a kid. What was that?”, rediscovering it as a result and finding out that it was even more amazing than I remembered.

Confusingly, Za’atar refers to two different things. It is both a species of herb (related to thyme. One of its English names is “wild thyme”. This confused me so much that it’s only in writing this blog post that I’ve understood that they aren’t the same thing and why my past experiments with making it have been so disappointing). It’s also the name of a spice mix made of said herb.

As a result the (non-recursive) basic ingredient list for Za’atar is:

  • Za’atar
  • Sumac
  • Toasted sesame seeds
  • Salt

It frequently contains other herbs and spices as well. I’ve no real idea what the “correct” ones are and it seems to vary a lot from brand to brand and person to person.

The result is this wonderful slightly sharp and spicy savoury mix.

The correct way to eat za’atar is to basically put it in large quantities on everything.

That being said, 90% of the way I eat it is much simpler: Take pita bread, dip pita bread in greek yoghurt, dip yoghurt coated pita bread in za’atar. You can also substitute olive oil or hummus for the yoghurt in this.

Other ways of eating it include making some sort of flat bread and topping it with olive oil and za’atar before baking and heaping it on top of a lightly dressed salad (just using a bit of olive oil for the dressing works well. You can also add lemon to give it a little more of a kick). There are a lot of za’atar based recipes but I’m basically such a fan of the the pita bread mode of eating that I’m always slightly hesitant to experiment in case it would be disappointing.

Which brings us to… the dark side of the za’atar.

It’s available in London, certainly. Also online. The problem is that it’s available in the same way that spices are available: You pay £2-5 for a little 50g sachet of it.

A 50g sachet of za’atar is approximately 1.5 servings. Maybe 2 if you stretch it.

This can be worked around. It takes a bit of hunting, but there are stores both physical and virtual which will sell you za’atar for a sensible price (generally speaking my rule of thumb is that you should be paying under 10% of what you’d get it for in a normal supermarket for spices – so in the above case £2-5 should buy you about 500g). There seem to be online shops for za’atar which will do this, and also some turkish supermarkets (though I’ve not been super impressed with the quality of some of the za’atar I’ve bought in London. It’s been ok, certainly it’s been better than not having za’atar, but it’s not been amazing. I think this may be because it’s made with a mix of actual thyme and other green spices in an attempt to approximate real wild thyme).

I can’t offer great advice on provisioning it unfortunately because my main source is friends and family in the middle east. I just want to make it clear that these are the quantities you should be buying it in.

And that if you haven’t tried it you should definitely be buying it.

This entry was posted in Food on by .

We are borg

So those of you who follow me on Twitter / are friends on Facebook already know this by now, but I figured I’d make an announcement here for the remaining 10 of you who read this via RSS (i.e. the correct way). I’d also like to talk about some of my reasoning, and some of the implications.

In June I will be joining Google (specifically the Zurich branch) to work on Knowledge Graph.

This move has not been universally popular. There are some things that Google does that have failed to endear themselves to a number of people I know (some of these I agree with. e.g. I’m definitely not a fan of the real names policy).

But… you know, they also make really good software. I don’t really acknowledge the concept of “more good than harm”, but Google do a lot of good, and I can’t help but see improving the quality of access to information for billions of people as both unambiguously good and more useful than any software I’ve worked on to date. So I’m pretty excited about that.

There is however one thing that I am legitimately quite concerned about in joining Google though: My primary experience of people joining Google is when blogs I read get a blog post saying “I’m joining Google, but don’t worry: I won’t fall into a black hole like everyone else who joins Google. I’ll definitely keep blogging” and then maybe they write one or two blog posts shortly after that and the next one after that is the one several years later where they announce that they’re leaving Google to move onto other things.

Well, I’m joining Google, but don’t worry: I won’t fall into a black hole like everyone else who joins Google. I’ll definitely keep blogging.

A colleague (I forget which one) said the other day that he wasn’t worried because he was pretty sure no power on earth could stop me from blogging. I’m not quite so confident. There have been some pretty long periods (I think the longest was 6 months?) in the past where I’ve not blogged at all, and it wouldn’t be surprising if I had another one.

I’d quite like that not to happen, but I’m not under any impression that I’m in some way special. Lots of other people who wanted to keep blogging also stopped.

One way in which I’m a bit special is that most of those blogs were purely technical, and I know that part of what stops Googlers from blogging is that it’s difficult to blog about technical things when you’re immersed in the Google ecosystem and can’t share the details without extensive clearing from the legal department. I on the other hand blog about plenty of other things – maths, feminism, fiction, voting, etc. As far as I know it should still be fine to keep blogging about all of those.

But I don’t really feel confident that that’s enough. I still haven’t entirely convinced myself that beeminder is useful (I’ve been using it to keep me reading books, but I’m not sure how much that’s helping vs just intention), but I figure I might as well give it a try. Starting beginning of May I’m going to set up a beeminder requiring me to write at least a blog post every two weeks (my normal blogging rate is more like one a week, but I figure I should give myself some slack. If I end up vastly exceeding this I may raise the rate. If this turns out to be intractable due to reasons, I may lower the rate to one a month, but I don’t think I’ll have to do that. Worst case scenario you’ll get a whole bunch more book reviews, half-baked fiction and a few “So, Switzerland. What’s up with that?” posts.

This entry was posted in life on by .

Locally compact Hausdorff spaces and the Riesz Representation Theorem

So I’m trying to get my head around the proof of the Riesz Representation Theorem (I’ve mostly got it, I’m just trying to. As part of doing this I was trying to figure out the role of the assumption that the space was a locally compact Hausdorff space: The proof generally seems to follow through with just normality (and maybe paracompactness?).

(Note: Asking questions like this is the mathematics equivalent of my asking small questions approach to learning)

Eventually I realised where it was hiding. It’s not actually in the existence part of the proof, it’s in the uniqueness: If the space is not locally compact then you can’t cover enough points with functions of compact support and thus there will be a large chunk of the space that your functions just ignore and you can use whatever measure you like there.

More detailed proof: Let \(x\) be a point with no compact neighbourhood. Then every function \(f\) of compact support has \(f(x) = 0\) as otherwise the support of \(f\) would be a compact neighbourhood of \(x\). Therefore the measure which assigns a mass of 1 to \(x\) is indistinguishable from the \(0\) measure by integrating against functions of compact support. QED

This lead me to think about the structure of locally compact subsets of topological spaces. In particular I noticed the following:

Theorem: Let \(X\) be a regular topological space. Then there is a maximal open sets \(A \subseteq X\) such that \(A\) is locally compact in the subset topology.

Proof:

Let \(A\) be the set of points with a compact neighbourhood (that is there is open \(U \ni x\) with \(\overline{U}\) compact).

Then certainly every locally compact open subset of \(X\) is contained in \(A\): Let \(B\) be such a subset and let \(x \in B\). Then there exists \(x \in U \subseteq B\) with \(\overline{U} \subseteq B\) compact (because the closure is compact it doesn’t matter whether we mean closure in \(B\) or in \(X\)). Thus by definition of \(A\), \(x \in A\).

So we need only show that \(A\) is locally compact.

Suppose \(x\) in \(A\). Then because \(X\) is regular, we have open sets \(T, V\) with \(x \in T\), \(A^c \subseteq V\) and \(T \cap V = \emptyset\).

Now. Suppose \(x \in U\) with \(\overline{U}\) compact (such exists by definition of \(A\)). Then \(x \in U \cap T\). But \(\overline{U \cap T} \subseteq \overline{T}\) so is a closed subset of a compact space and thus compact. Further, \(\overline{U \cap T} \subseteq V^c \subseteq A\). Hence \(x\) has an open neighbourhood whose compact closure is contained in \(A\). Thus \(A\) is compact with the subset topology.

QED

So essentially \(A\) is the set of points you can distinguish with functions of compact support, right?

Well. Almost.

It turns out to be relatively easy to find an example where there is a function of compact support whose support is not contained in \(A\). In order to do this we just need to construct an example where \(\overline{A}\) is compact.

To do this we’ll glue together my two favourite examples of a locally compact space and a non locally compact space. Let \(X = \mathbb{N} \cup l^\infty\). In order to distinguish the zeros, let \(\tau\) be the 0 of \(l^\infty\).

We will give this the topology generated by the following basic open sets:

  1. \(\{n\}\) for \(n \in \mathbb{N}\)
  2. \(B(x, \epsilon)\) for \(x \in l^\infty\) with \(x \neq \tau\) and \(\epsilon > 0\)
  3. \([n, \infty) \cup B(\tau, \epsilon)\) for \(n \in \mathbb{N}\) and \(\epsilon > 0\)

where \(B(x, \epsilon)\) is the \(l^\infty\) ball.

So essentially we’re gluing together these two spaces by treating the \(0\) of \(l^\infty\) as the “point at infinity” in the one point compactification of \(\mathbb{N}\).

Then in this case \(A = \mathbb{N}\): \(\mathbb{N}\) is a locally compact open subset of \(X\) and any point \(x \not\in \mathbb{N}\) has no compact neighbourhoods (because no open subset of \(l^\infty\) has compact closure). But \(\overline{A} = \mathbb{N} \cup \{\tau\}\) which is homeomorphic to the one point compactification of \(\mathbb{N}\) and thus compact.

This then leads us to our definition of a function whose compact support is not contained in \(A\): Let \(f(n) = \frac{1}{n}\) for \(n \in \mathbb{N}\) and \(f(x) = 0\) for \(x \in l^\infty\). Then \(f\)’s support is \(\overline{A}\) which is compact, and so \(f\) has compact support.

(Note that we could have arranged for \(\overline{A}\) to be an arbitrary compactification of \(A\) using a similar construction: Take the compactification and glue a distinct copy of \(l^\infty\) to each point at infinity)

In general the set of functions of compact support on \(X\) are a subset of the set of functions which vanish at infinity on \(A\) (that is, for \(\epsilon > 0\), \(\{x : |f(x)| \geq \epsilon\}\) is compact.

Proof: Let \(\epsilon > 0\). Then \(\{x \in X : |f(x)| \geq \epsilon\} \subseteq \mathrm{supp}(f)\) so is a closed subset of a compact space and thus compact. We thus only need to show that it is a subset of \(A\) to prove the result.

But it is a subset of \(\{x \in X : |f(x)| > \frac{1}{2}\epsilon \}\) which is an open set whose closure is contained in  \(\{x \in X : |f(x)| \geq \frac{1}{2}\epsilon \}\), which is compact. Every open set with compact closure is a subset of \(A\), so  \(\{x \in X : |f(x)| \geq \epsilon\} \subseteq A\) as desired. Thus \(f|_A\) vanishes at infinity.

QED

Is the converse true? It turns out not. The following is true however:

Given \(f : A \to \mathbb{R}\) vanishing at infinity we can extend it to a continuous function \(f: X \to \mathbb{R}\) with support contained in \(\overline{A}\).

The obvious (and only possible) definition is to extend it with \(f(x) = 0\) for \(x \not\in A\). Does this work?

For \(y \not\in A\) the set \(U = \{x : |f(x)| \geq 0\}^c\) is an open set containing \(x\) such that for \(u \in U\), \(f(u) \in B(0, \epsilon)\), so \(f\) is continuous at \(x\) as desired.

QED

 

The problem is that in general there’s no reason to expect \(\overline{A}\) to be compact. Consider for example pasting \(\mathbb{N}\) and \(l^\infty\) together and not joining them together, just treating this as a disjoint union. Then \(A = \overline{A} = \mathbb{N}\) and the extension of the function does not have compact support.

So in general we have \(C_c(A) \subseteq C_c(X) \subseteq C_0(A)\), and it’s possible to have either or both of these inclusions be equalities (to get both you just choose \(X\) to be any locally compact space so that \(A = X\)). I’m not sure it’s possible to say more about it than that.

This entry was posted in Numbers are hard on by .