Further adventures with reducing IBS symptoms

Since my last blog post about my Irritable Bowel Syndrome and my attempts to solve it, I’ve properly learned what FODMAPs are (which I didn’t know then), and tried a low-FODMAP diet. The FODMAP app I’m using recommended I see a dietician to help me implement the diet properly, so I did. It was somewhat helpful – although not as much as I’d hoped – and I’m still following it.

So in this post, I want to review my hypotheses about what foods are causing or “triggering” (or indeed “irritating”) my condition, cross off the ones I’ve rejected, and record my newest hypotheses. I’m pretty excited because I think I’m getting closer to understanding my condition, and if my understanding helps some other people who have the same problem as me, that will be of benefit not just to me, but potentially to all those other people as well. However, I should stress that, right now, these are all just hypotheses. Hopefully in the future I’ll be able to get a better understanding of what’s going on, by reading and doing further experiments (i.e. experiments on myself).

Past hypotheses

  1. Gluten. Many people start to believe that gluten is making them ill, “cut out gluten” from their diet, feel better, and stop there. But why stop there? What if it was not gluten that was causing their problems at all? I have tried substituting gluten-free bread for ordinary bread, and keeping everything else the same in my diet, and this didn’t seem to help much – or at all. Also, I later had a blood test for coeliac disease done, which came back negative. So it seems that I am neither coeliac, nor do I have “gluten intolerance” (which probably doesn’t exist anyway).
  2. FODMAPs. These – there are 4 main types of FODMAP – are clearly part of the picture. Let’s look at the 4 types of FODMAPs in turn:
    1. Fructose: Yes, definitely. For example, apples give me abdominal cramps. How I could have gone through the majority of my life without realising this fairly straightforward cause-effect relationship is a mystery to me, but there you go. I suppose it’s possible that something, perhaps some antibiotics, triggered this particular food intolerance in me at some stage in my life, and previously I didn’t have it. But I don’t remember ever being free from IBS symptoms for long periods of time – so probably not.
    2. Lactose: I’m sure that I have lactose intolerance, and this was so obvious that I realised it (though I did not know exactly what it was, nor the name for it) when I developed it at around age 11, as many people around the world do. Arguably this is not really a “medical condition” because the majority of the world population has it. It’s more like people who can digest lactose (which includes most white people, but does not include adult-me, even though I’m white) have some kind of superpower. Taking lactase pills really does seem to help – and taking 2 or more of those pills spaced out through a meal, instead of the recommended one pill just before a meal, seems to help even more in some cases.
    3. Polyols: I am indeed, it turns out, extremely intolerant to even small amounts of polyols – as I found out when I tried to take a small caffeine pill that also contained sorbitol, a polyol. I won’t make that mistake again! (Of course, it’s theoretically possible that I’m actually intolerant to caffeine, but I have other evidence that I’m intolerant to polyols.)
    4. Oligos (oligos-fructans): Am I also intolerant to oligos-fructans, thus rendering my condition a complete – and rather unusual and dangerous, I understand – “all-FODMAP intolerant”? Well, according to the very useful and inexpensive Low FODMAP diet helper app that I use, 2 slices of certain brands of “ordinary” gluten-free bread are low in all types of FODMAPs, whereas some normal, non-gluten-free breads are high in both oligos-fructans and fructose. The problem with this hypothesis is twofold: eating gluten-free bread didn’t seem to help me, and eating Warburton’s 400g Toastie bread, even though it isn’t gluten-free, did. But I suppose it’s possible that the particular brands of gluten-free bread I tried weren’t low-FODMAP (unfortunately it seems no UK food producer has heard of FODMAPs, so food labels are no use for determining this) and it’s possible that for some reason, Toastie bread is low-FODMAP while more ordinary breads aren’t. It just doesn’t seem very plausible to me.

I don’t fully understand what makes food high or low FODMAP – I think in some cases it’s not just ingredients, but also food preparation methods. A very good example is sun-dried tomatoes – the very same ingredient – a tomato – is harmless if eaten raw, but becomes high FODMAP if left out in the sun to dry, amazingly enough!

The only way to really know for sure if a food is low FODMAP is to rely on the Monash University testing centre and their FODMAPs mobile app (see above), which connects to the Monash FODMAP test database that is regularly updated with new foods. This means that if people want a food that’s not sold in Australia to be tested, it needs to be shipped over there to them. In principle, even if it’s the same type of food as something that’s already in their database, if it’s a food with multiple ingredients and it’s a different brand, it might be very different from a FODMAP perspective! Maybe I’ll suggest to them that they test the Toastie bread (and the gluten-free breads that I tried).

So anyway, score a big fat zilch for gluten, and 3 out of 4 for FODMAPs, with the remaining 4th FODMAP – oligos-fructans – being unproven.

But I don’t think that FODMAPs can be the whole story for me, because I also have problems from eating most types of crisps (which are called “potato chips” in American English), which the Monash FODMAP app says are low-FODMAP. This is weird because crisps are essentially nothing but potatoes, salt and oil – and I don’t seem to have problems with potatoes, salt or oils per se. Chips (which are called “French fries” in American English) don’t give me problems. Weird!

New hypotheses

  1. Time of day. I’m inclined to reject this idea out of hand as just silly. How could the time of the day that I eat something, per se, affect my digestive system? I’ve never heard of that happening. But empirically, I haven’t yet ruled it out.
  2. Annoyingly, IBS symptoms can last for up to 24 hours after eating trigger foods, so the actual trigger might be something else that I tend to eat earlier – on the previous days – and it’s just coincidence that making it’s looking like the different types of bread make a difference. I consider this hypothesis extremely statistically improbable already, but it should be easy to rule out.
  3. mandubianhotep on Twitter – somewhat predictably for a Frenchman – suggests “quality and quantity of ingredients” (of the bread). This is frustratingly vague compared to most of the other hypotheses, which makes it more difficult to assess, so I’m inclined to ignore it for now and come back to it later if I run out of ideas. Well, actually he did tweet me very specific instructions to follow – but from a “scientific” perspective I would like to discover what is really going on here, not just find something that works and then stick with it. That’s the same mistake that the gluten-free people who aren’t actually gluten-intolerant make.
  4. Comparing the ingredients of one of the problematic types of “ordinary” bread, and the “magical” Toastie bread, there doesn’t actually seem to be all that much difference. The “ordinary” bread has palm fat which the Toastie bread doesn’t, so it might be that. This is saturated fat produced by fractionation.
  5. The Toastie bread has an agent added to prevent mould, and the “ordinary” bread doesn’t, so perhaps I’m extremely sensitive to invisible quantities of mould at levels that don’t affect most people. That would be very weird and disturbing, so I’m going to assume it’s not true. ;)
  6. The Toastie bread does have a substantially different consistency – it’s thicker – so perhaps it’s due to the use of less yeast. However, I can eat a whole loaf of it with few ill-effects, and yet have major ill-effects from a few slices of normal bread, so that doesn’t seem plausible.

So I’m going to go with palm fat, and test that hypothesis some more. And is this somehow connected with my “crisp intolerance”?

Stay tuned for the next exciting episode in this saga…

Look ma, no FODMAPs! A zero-sugar, gluten-free snack and pudding reviewed

Content warning: TMI/oversharing

In this post I will first discuss at length my weird problems with digesting sugars, and then at the end come to the main point of this post, which is to review two excellent sugar-free foods that I’m really grateful to my wife Nataliya for tracking down – as you may imagine, trying to live without any food that contains any amount of sugar is both difficult and unpleasant, so these foods that Nataliya discovered are a real breath of fresh air. If you just want to read the review, click here.

Sugar and FODMAPs intolerances

Irritable bowel syndrome is a relatively common but still poorly-understood condition, and there is evidence that in at least some cases, IBS may be triggered by a food intolerance – specifically, FODMAPs intolerance.

I seem to have FODMAPs intolerance, which includes (in my case) intolerances to multiple sugars, including lactose. Symptoms can include, after eating food containing FODMAPs: a feeling of abdominal bloating, abdominal cramps, flatulence, and diarrhea. Knock-on effects can include: needing to go the toilet much more than usual, grumpiness and irritability, social disconnectedness, needing to walk slowly, and if the symptoms are particularly severe or long-lasting, they can lead to anal soreness and bleeding. (Sorry, a bit TMI, I know.)

The severity and time of onset of symptoms after consumption may be related to how much FODMAPs are contained in the food and/or drink. This is particularly evident with sugars for me.

Obviously, this is a condition which can have a serious impact on someone’s life, and especially so when you do not know what is happening to you or why and you just assume that it is something genetic that you have to just “put up with”, as I assumed when I experienced these problems when I was younger.

Weird facts that don’t necessarily jibe with this theory

Although I’m pretty convinced that I have some kind of sugar intolerance, and maybe also FODMAPs intolerance, due to the abundance of evidence from my personal experience of trying out different foods and drinks to attempt to eliminate problems, there are a couple of weird facts that don’t necessarily fit in with this theory – although it is possible that they are explicable somehow:

  1. I don’t usually seem to have any problems from drinking Fanta Zero – which, despite the name, does actually contain some sugar. However, it’s not added sugar, it’s just sugar that’s naturally present in the fruit and vegetable juices that are added.1Ingredients of products created by multinationals like Coca-Cola may vary on a country-by-country basis, so always check the ingredients if you have food intolerances, let alone allergies. In particular, it looks like the US version of Fanta Zero contains a derivative of coconut, which affects me pretty badly, whereas the UK version doesn’t.
  2. What’s even weirder is, as a child I used to drink Ribena (the original version) almost exclusively, and Ribena, at least nowadays, contains added sugar, not to mention the sugar naturally present in the blackcurrant juice. So either it didn’t used to contain added sugar (but I’m pretty sure it did), or I’ve somehow developed an intolerance to sugar. Or – weirdest possibility of all – something I was eating or drinking somehow “switched off” – or failed to “activate” – a latent sugar intolerance. Although I used to have abdominal cramps fairly regularly as a child, I didn’t have them constantly, which is what I would have expected in hindsight, given that I was drinking Ribena exclusively.

There are other small anomalies with the theory like this, as my wife has pointed out to me. Some of them could be related to the low amounts of sugar present in the foods, although it doesn’t seem to be a simple gram-for-gram thing – sometimes foods with as little as a few grams of sugar in can affect me.

I also only seem to have developed lactose intolerance at the age of 10 or 11 or thereabouts – I remember swearing off milk and cream cheese – the latter of which I had previously enjoyed. However, this change is completely normal and doesn’t count against my theory, as lactose intolerance affects the majority of the world’s population, and for those who have some genetic tolerance to lactose, it is often lost in childhood or adulthood.

How to check if you have sugar intolerance (unofficial)

There is as yet no scientifically-validated test for FODMAPs intolerance, though an experimental one is currently being evaluated. There is a test for sucrose intolerance which doctors can perform. However, there is a simpler common-sense test for sucrose intolerance which I’m going to describe here.

After avoiding any other foods and drinks which you think might irritate your bowel (e.g. foods containing FODMAPs) for the rest of the day, in the evening, either eat a teaspoon of sugar or drink an ordinary Coke (not a diet Coke, obviously). If you experience symptoms like the ones I described above, you probably do have sucrose intolerance at least.

I say in the evening for two reasons:

  1. Many people have a regular bowel movement in the morning, so this is to prevent hypochondriacs getting misled by their regular bowel movement
  2. To try to avoid effects from food and drink consumed the previous day.

Similarly, to check if you have lactose intolerance, just try drinking a glass of milk and see if you get symptoms. Well, maybe not a glass, that might be overdoing it. Personally, I’d be too afraid to drink a whole glass of milk, with or without lactose intolerance pills (which I don’t find to be completely effective).

Speaking of lactose intolerance pills, they just contain lactase, which is the enzyme needed to digest lactose in your stomach. Lactose-intolerant people don’t produce enough lactase. Sucrose intolerance “medication” also exists, but unfortunately in Europe (but not in America) it is considered an experimental treatment, and thus only available to people with a formal diagnosis on a named patient basis – which in the UK context, seems to mean patients whose doctors are willing to allow the patient try out an experimental treatment for it. I’m not a medical professional, but it seems to me at first blush that it would be unlikely that a doctor in the UK would object to this, at least after they had confirmed the patient’s self-diagnosis – the active ingredient of the “medication” is just a digestive enzyme, surely!

Thus far I haven’t yet been formally diagnosed as sucrose intolerant, so I haven’t yet been able to access such a treatment, but it seems like I should try to get diagnosed as it could render a lot of this palaver completely irrelevant. On the other hand, too much sugar is bad for you, so maybe the fact that I need to avoid consuming it is a blessing in disguise which I should embrace – particularly as I am obese? What do you think? Leave a comment below.2And no, I am not going to get a H1B visa and move to America just so I can get this treatment more easily! That would be silly.

The “gluten trigger” theory

The problem with the test I described above is, if (as some people believe they have) you have another condition that causes temporary sugar intolerance only after consuming a certain trigger ingredient – perhaps gluten – the test won’t necessarily pick that up.

I have some (what is to me, amazing and awesome) experience of having no problems eating sugary food after having a gluten-free breakfast, but on the other hand, on other days I have eaten supposedly totally gluten-free food, and still gotten a horrible digestive reaction from some kind of FODMAP (I assume) that was in my food or my beer.

I really don’t know what to think, and I’d really like to solve this mystery! Possibly the food I ate on those bad days was illegally described as gluten-free when in fact it wasn’t completely gluten-free, or possibly it was accidentally cross-contaminated with gluten while being prepared. Or maybe it has nothing whatsoever to do with gluten and on the good days I just happened to hit upon a type of cake that day that somehow doesn’t cause me problems, even though it contains sugar – though that seems incredibly unlikely.

The food review

Now, finally to the main purpose of writing this post – the food reviews! (Probably very boring to anyone who does not have sugar intolerance, so if you don’t, you can stop reading now.)

The snacks – Clearspring organic rice cakes

51xNIAyLT6LFirstly, some people might like to know that as well as being sugar-free, these are:

  • officially certified as vegan (and are therefore vegetarian – everything that is vegan is also vegetarian)
  • organic
  • labelled as gluten-free. Given that it is illegal to market food as gluten-free in the UK if it contains more than 20 parts per million of gluten, I think we can pretty much just trust the label on this one.

These rice cakes are delicious, the best rice cakes I’ve ever tasted (admittedly that’s a pretty low bar, but still) and I was amazed that they (a) contained sesame seeds and yet still tasted nice (I don’t normally like sesame seeds), and (b) had no added sugar except the sugar found in mirin, which is a Japanese product that is made by fermenting rice. The sugar found in mirin is a complex carbohydrate, not a refined sugar, according to Wikipedia.

So, the rice cakes are not strictly speaking sugar-free, but are at least sucrose-free, and I experienced no ill-effects after eating them. It turns out that the mirin ingredient is also found in miso soup, which I’ve also had many times without problems.

Yesterday I also ate a couple of these, and had no ill effects either:

The desserts – “Simply delish zero strawberry jelly


Yes, that’s actually what they’re called. These are:

  1. supplied as sachets to be made up into jelly, so they are compact
  2. gelatine-free, and hence vegetarian (gelatine is rarely a health issue as far as I know, the main reason this matter is it’s just not vegetarian),
  3. really sugar-free – check the nutrition information – 0g of sugar!
  4. preservative-free, if you care about such things, and…
  5. stuffed full of lots of artificial sweeteners and flavourings. So if you’re one of those people that has an issue with such things, you probably don’t want to buy this. But if you are reading this post and are sugar-intolerant, I would really advise you to pick your battles. Our problems with sugar are very real – any speculated problems with artificial sweetners are as far as I know unproven at this point, and if any serious proven dangers arose, then surely they would be banned by regulators. Unless you believe that there’s a vast conspiracy between Monsanto and the regulators all around the world, but really… that’s kind of out there. For over a decade there have been websites insinuating that there was some kind of conspiracy involved in the approval of aspartame in particular, but if you look at them, they don’t seem to be very credible websites, generally speaking, and some of them have a clear conflict of interest (much like the gold sellers and gold marketers dissing fiat currency). There are legitimate reasons to criticise Monsanto, but I don’t think producing aspartame is one of them. For me, it and other artificial sweetners like it are a boon – and as a FODMAP-intolerant person, “natural” sweetners like sorbitol are just as bad as ordinary sugar for me.

So yeah, it’s jelly. It’s jelly that I can actually eat, which to me is awesome. It tastes like jelly, it looks like jelly, it feels like jelly, it pretty much just is normal jelly, without the sugar. At last!

Footnotes   [ + ]

1. Ingredients of products created by multinationals like Coca-Cola may vary on a country-by-country basis, so always check the ingredients if you have food intolerances, let alone allergies. In particular, it looks like the US version of Fanta Zero contains a derivative of coconut, which affects me pretty badly, whereas the UK version doesn’t.
2. And no, I am not going to get a H1B visa and move to America just so I can get this treatment more easily! That would be silly.

Linux convergence? I’m hoping for it!

UPDATE: This has now happened!

Bought myself a nice 5.1 speaker system a few months ago – so I don’t use our tinny crappy old computer speakers any more, yay! But the irony is, I usually just plug my Nexus 7 into it (using the bog standard noisey stereo input, instead of the higher quality digital input cable) to play music from Spotify!

That’s because, while Spotify is available for Linux, it’s only officially supported at the moment on Android, and it’s been a bit of a pain to install on Fedora Linux / QubesOS – there are two community-created install methods, one of which is currently known to be broken, and neither of which worked for me the last time I tried them.

I only use Skype on my Nexus too, for a similar reason. Skype on Linux is behind – it doesn’t support group calls. Microsoft, who acquired Skype Technologies in 2011, have said they are working on it. Microsoft? Working on commercial software for desktop Linux? That’s a new one on me!

But the irony is, both Fedora and Android are Linux!


Well, they’re Linux underneath – the operating system infrastructure on top of the Linux kernel, and how developers typically write applications, is quite different in each. There are now two main branches of Linux in the wild: desktop/server Linux, which is further subdivided into numerous distributions, and Android. “Server Linux” is conceptually just Desktop Linux with bits removed (and/or left unused) – it’s not really a separate thing, except for marketing purposes. There’s also a couple more branches of Linux which have just started to appear in the mobile market: Firefox OS and Sailfish OS; and two more nascent ones which haven’t been commercially released on real devices yet: Ubuntu Touch and Tizen.

In terms of open source, my sense is that desktop Linux and Firefox OS are the most open, and Tizen (if it ever gets properly released), followed by Sailfish OS, will be the least open, with Android somewhere in the middle in practice, although I may be wrong on that. I’m talking about the platforms here, not third-party apps – the open source application ecosystem seems to me to be far stronger on desktop and server Linux than on Android.

One of these is not like the others, though! Ubuntu Touch is an attempt to bring Ubuntu to mobile platforms – a bit like Microsoft’s ideas of platform convergence that it tried to force onto its users (not entirely successfully!) with Windows 8 – so it’s not a clean break like the other mobile operating systems.1Sailfish also runs Android apps, but since they’re both mobile platforms at the moment, that’s not as interesting or impressive to me as the idea of Ubuntu Touch.

Also, Firefox OS is pushing the concept of HTML5 apps – although these can also be downloaded like regular mobile apps, so it’s not completely clear to me where Firefox OS really stands in the convergence spectrum.2Sailfish also pushes HTML5, although not to the extent that Firefox OS does.

Finally – and perhaps most importantly – as I posted about yesterday on Google+, Google has said that Chromebooks will get the ability to run Android apps 3Presumably, this means without using an Android emulator – which is slow, as far as I know. by the end of this year – and Chromium OS, on which Chrome OS is closely based, is open source. So hopefully that ability will appear in Chromium OS, and then be ported to other Linux distributions – solving my Skype and Spotify dilemma.

A Samsung Chromebook. Photo by Alex Washburn/Wired [CC-BY-1.0 (http://creativecommons.org/licenses/by/1.0)], via Wikimedia Commons

The music industry probably won’t be bothered, as they’ve already agreed that Spotify users on tablets can have the same rights to stream music as Spotify on desktops – unlike Spotify users on mobile phones.4But how do phablets fit into Spotify’s streaming licensing scheme? We simply must be told!

But goodness knows what Microsoft will make of that! Wailing and gnashing of teeth, probably!

Footnotes   [ + ]

1. Sailfish also runs Android apps, but since they’re both mobile platforms at the moment, that’s not as interesting or impressive to me as the idea of Ubuntu Touch.
2. Sailfish also pushes HTML5, although not to the extent that Firefox OS does.
3. Presumably, this means without using an Android emulator – which is slow, as far as I know.
4. But how do phablets fit into Spotify’s streaming licensing scheme? We simply must be told!

A modest proposal

I made this fun presentation on how to simultaneously solve the Eurozone crisis and political bribery (inasmuch as the latter significantly affects the population at large).

Performance-Related Politics

Things not to take literally: “What do you care what other people think?”

Trigger Warning: General

What Do You Care What Other People Think: Further Adventures of a Curious Character is the title of an autobiographical book by physicist Richard Feynman. He was indeed quite a character, so one might reasonably suppose that he felt the former sentiment applied to him, and that’s why he chose it as the title of his book. (I highly recommend his series of autobiographical books, by the way, they’re funny, engaging and I think most intelligent people would enjoy them – except that if you are anti-nuclear-weapons you might not like his views on those, which are in a very real sense a product of his time and of his working on the Manhattan project. Likewise with his attitude to women I suppose, although I wasn’t as sensitive to that – certainly not when I read the books as a teenage boy, anyway.)

I think it’s important, especially if you are the sort of person who might take “What do you care what other people think?” too literally at least sometimes, not to take this idea too literally. Or to put that another way, not to take it to extremes.

Now, I’m going to do the standard thing of ignoring what the writer actually meant – because it’s a common enough sentiment in Western society, after all – Richard Feynman’s ghost can’t lay exclusive claim to it or anything.

I think it’s helpful to see it as a genuine question, as a starting point for reflection on whether what other people might think actually matters to you and why. So in that sense, do take it literally – as a literal question, not merely a rhetorical one. I don’t think it should be seen as a command or guidance to just simply ignore what other people might think, because it’s somehow “manly” or “brave” or “hipsterish” or “idiosyncratic” or “anarchist” or whatever else it might be that you want to be, or think you are. (I’ve certainly never thought of myself as an anarchist, at least, but I put that one in there because I think it is highly relevant to people in radical milieux, for fairly obvious reasons).

And certainly it should not be seen as applying in all contexts, in all social situations, with equal vigour.

Yes, not for the first time, this blog post is partly aimed at myself – but also to anyone else who might be a bit overzealous about “not caring what other people think”. Oh, I know I’m not the only one.

One example of where I think this sentiment really has value, is supporting someone who wants to “break the mould” socially in some positive or (you think) legitimate way, and is actually aware of the potential social costs of doing so and what that could entail, so they’re attempting to be brave in full (or at least partial) knowledge of what they could be getting into, and not just foolhardy.

One example of where this sentiment could be harmful, is if it leads you to ride roughshod over other people’s feelings. To take one extreme – but therefore compelling – example, if someone is a survivor of childhood sexual abuse (and remember you don’t actually know if any of the people in your social circles actually are survivors, but haven’t chosen to tell you), they may be particularly sensitive to all sorts of things – words, concepts, expectations, even just their perceptions of what you are implying or what you expect – that you’re perhaps not fully aware of.

Yes, it’s hard to guarantee (well, impossible to guarantee 100%) that you won’t offend. But, life is hard, and remember, if, like me, you’re not such a person yourself, it’s especially hard for them. So have some empathy. One thing that might help a little bit, is writing Trigger Warning (or TW for short, useful on a tweet), which can act to give such people a choice to avoid things that may trigger traumatic memories and/or make them highly emotional. Which is what I’ve done on this blog post.

Now, that’s just one example. I don’t mean to imply that that’s the only context in which you shouldn’t thoughtlessly ride roughshod over other people’s feelings (and, as I said, you can’t ever know for sure that you’re not in that particular context anyway).

It’s often been observed, in as many words, that it’s easier to ride roughshod over other people’s feelings online (I’m not going to link to the coarse version of this that is initialled GIFW, just because I personally choose not to swear very much online). Some of the reasons for this are obvious: for starters, no facial expressions or other body language (unless you’re on a Google+ Hangout or something video-based like that), so we don’t get the same social cues, and as a result it can be necessary for people to be more blunt to us to get through to us, than they would have to be in offline interactions. Well, maybe you’re really really good at online interactions and never need body language to interpret how someone is feeling. I would seriously question that idea, however! Not least because they may not want to show you how they are feeling when discussing something online, for various reasons!

Finally, it’s also worth asking yourself, if you are tempted to follow the principle “What do you care what other people think?”, whether you aren’t simply “not caring” about one group of people’s feelings, in order to “look good” or “look cool” or bond socially with the person or people who have just told you or suggested to you not to care what other people think – and therefore, you are in fact caring a great deal about what that second person or group of people think? Not that there’s necessarily anything wrong with that! But is there some in-group versus out-group effect going on here? Obviously, it’s perfectly commonplace for people to think in terms of in-group and out-groups – it’s probably part of our shared evolutionary psychology as a species, but…

No links because this post is long enough already. See, I’m thinking of you, the reader!

Women in computing – an apology

In which Robin actually learns something important.

Recently, a professor made an ill-judged remark about women at a conference about the Haskell programming language. Tim Chevalier blogged a criticism of the comment as sexist and off-putting to women thinking of going into Haskell or computing. That was when I made a stupid mistake. I tweeted to Tim that I thought the professor’s comment was “acceptable”, and then debated the issue and follow-on issues for several days online on Twitter and Reddit, before finally realising I had to write this blog post. (Tim has since posted a much longer version which I think is much better, so if you saw the first blog post and, like me, weren’t totally convinced, go read that one. You really should, if you are such a person, on both moral and pragmatic grounds! And try not to let anything which may seem too strident or comments which you may strongly disagree with, detract from keeping in mind the original complaint, which is perfectly sound, as I’ll argue below.)

Why did it take so long? Well, part of the reason is to do with the fact that I am a member of a group – which is to say, men, or to put it perhaps more accurately, white Western adults, or perhaps it would be even better to say human beings – which has a tendency to solidify and double down on their views in the face of criticism that they initially perceive as unjustified, highly abrasive, or ganging-up. That is not to say that they were necessarily unjustified, just that at the time, I perceived some of them as such. Another reason is that I have a job in the private sector and wasn’t particularly motivated to read what I just thought would be “more of the same, albeit possibly more radical”, in what little time I had left after spending time with my wife, reading and replying to tweets and reading and replying to reddit comments. Yet another reason is that I didn’t agree with everything that was said in the ensuing discussions (see the end of this post for an attempt at conciliation).

And psychologically, it’s sometimes much easier to blame and rail against others, even if those complaints may happen to be tangential, than to accept that you might have been wrong, in a morally significant way. Come on, don’t say you haven’t been there. We’ve all been there, haven’t we?

Of course, these tendencies – and indeed many of the abstract argumentative tropes that can be identified in the arguments that result – are not specific to discussions about feminism! They are general issues that occur in all sorts of human interactions, especially domestic ones, where you can’t just instantly block someone like you can on Twitter. Well, you can at least request a cooling-off period, which may be a good idea in such a situation.


The (apparently) offhand comment the professor made was unacceptable not only for the obvious reason that it did actually offend some women – and as I said myself during the course of the Twitter discussion I was involved in, women get to define what is sexist, not men. This should be enough – fundamentally, in a sense, you can stop reading right there. But if you want to read on: It was also unacceptable because:

  1. Anyone who supervises PhD students, as a professor does, is probably going to be supervising them directly for three or four years, or even more. Also, PhD students don’t receive a lot of money (on the grounds that they are undertaking a course of study from which they will benefit rather than doing a job), and they do have the option of applying for a job in industry instead. It is therefore incumbent on PhD supervisors not to drive away potential students with unwise remarks, and not to start the supervisory relationship on the wrong footing by saying anything that could lead to a suspicion that “This is a creepy person who says or thinks things like this all the time.” The latter is sadly not unheard of in academia. Now, before any sceptics of feminism get angry at me, I’m not making the claim (which would be totally ridiculous, especially coming from me) that there’s something wrong with being sexually attracted to women. There is a distinction to be drawn between being appreciative of the opposite or indeed same sex, and behaving in a way which is widely viewed as creepy or taking advantage of your students.
  2. Professors have an obligation to set a good example, to more junior staff and to students, of how to behave professionally and how to market the university environment appropriately. I don’t think this is controversial at all, as a general principle of conduct. (I don’t at all mean to imply that professors should not criticise the university environment, of course – that would be a grave encroachment upon academic freedom – only that if they intend to market the university environment, they should on pragmatic grounds take into account how their comments are likely to be received.)

Points 1 and 2 would probably have been obvious, perhaps too obvious or even secondary to consider mentioning, to many women encountering the professor’s comments. But personally, as a no doubt fairly typical man, never having been the target of sexual harassment or inappropriate sexual comments from an authority figure, they didn’t occur to me in the initial heat of the moment, when – as I’ve already said – I posted a stupid tweet.

You can find more arguments in the Reddit comments for the original blog post. I wouldn’t want anyone to come away from this without realising the Haskell community had strongly publicly disapproved of these remarks, albeit belatedly. For which we, or rather they (because I’m not really actively part of the Haskell community at the moment) have Tim to thank.

I would therefore like to take this opportunity to apologise to anyone affected by sexism who was offended by that particular hasty, thoughtless tweet of mine. I’m sorry. And I won’t claim that any statement relating specifically to women is “acceptable” or “OK to say” or anything like that without first listening to those who it affects, again. And if I ever do, you have my full permission to admonish me and mention this very blog post right away. Because, that would be hypocritical of me, and I don’t actually want to be a hypocrite, nor to morally go backwards. Indeed, I want to morally go forwards. Shouldn’t we all want that – those of us who have some time in our lives to think about self-improvement and who aren’t moral saints, at least? (Anyone who thinks I shouldn’t have apologised, should think about that previous question.)

This series of events has also caused me to reassess my general attitude of “just go ahead and tweet it, you can clarify or discuss or retract later if needed”. (An attitude which may have been influenced by (a) an acquaintance I respect who advised me not to care about offending people on Twitter, (b) a male feminist who strongly implied to me that it was actually patronising to withhold a tweet because it might offend someone.) I thought of bleating that this thoughtlessness was uncharacteristic of me, but unfortunately of late it actually isn’t. Just because you only have 140 characters, doesn’t mean you have to spend 140 milliseconds thinking about a tweet before writing it. That doesn’t mean that you have to ponder onerously every retweet of a kitten picture, but… just remember the internet really is serious business sometimes (no joke). Yes, I am talking to myself, thanks for asking – but also to anyone else who is a bit like me who may be reading this.

So, as a man who at some point in time had an incorrect opinion, I obviously had a choice. I didn’t need to push my ill-founded opinion out there assertively and wait to be educated – as if this was some high-school debating society – I could have waited for it to happen naturally. That might not have happened any time soon had I ignored the discussion entirely (side note: in many things, such as online polls, we forget about all the people who don’t participate or don’t notice and we get a biased perception of reality as a result), but one good way to stimulate discussion about something is to submit a blog post to a relevant, active subreddit on Reddit and then come back and read the discussion later – ideally at least 24 hours later. It’s a bit hit and miss, especially these days, but out-of-the-ordinary / controversial things are good to spark discussion.

All that said, I would like to re-emphasise my call for us all to look for and support or engage in diverse approaches towards trying to increase the number of women – and people generally – in IT, based on learning about and understanding the multiple and varied reasons why many women (and many people generally) don’t end up in IT, or don’t stay in IT when they get there. That is, it’s not all about off-colour remarks like this in the adult world – it also has to do with issues occurring much earlier, attitudes and preferences of teenage girls, and so on. I’ll stop there, before I offend anyone again.

Comments welcome, but comments that make me go “OMG, how could you say that!” may be deleted.

Why Kubuntu is not ready for the desktop

It’s great that Kubuntu allows you to report bugs direct from the desktop, but this doesn’t work at all. In my experience, every single aspect of it, just doesn’t work. I don’t know how many of these problems are general Ubuntu problems, and how many of them are specific to Kubuntu or KDE or Qt or my graphics drivers or the phase of the moon. All I know is that they’re problems.

(Note: This story is actually a hybrid of two true stories, to make it sound even more impressively bad. Most, if not all of it, could have happened this way, but it didn’t.)

I want to report a bug in a package. I look at the apport-bug man page (I knew to look there from a few months ago when this process did sort-of work), and it tells me I should, and I quote, “always” file a bug report by just typing apport-bug with no arguments. Fine. What are all the other command-line arguments there for, then?

I type apport-bug.

Which of these problems is it? OK, it’s none of these: I choose “Other”.

It then asks me what kind of display problem it is… What?! It’s not a display problem. Not even close. I didn’t choose Display problem!


What do I choose now? The only thing I can rationally choose is Cancel.

But the Cancel button doesn’t work.


I go back to konsole (I love konsole. In recent years it just works, with no problems at all. Unlike the rest of KDE.) I try to kill apport with CTRL+C.

It doesn’t die.

I kill it with CTRL+Z and kill %1.

It finally dies.

But my problems are not over. Oh no. My problems have just begun! I foolishly decide to try again!

I look at the apport-bug man page again, and see that I can specify a PID as a command-line argument. I do so.

It tells me I’m not the owner of that process, so I need to run it as root.

Fine. I do so.

It can’t work out which package owns the program running in that process.

Fine. I guess I should have just told it that in the first place, since I knew it.

I tell it which program it is.

Finally, things seem to be working!

As rekonq is uploading the bug report, I leave it running in the background. And then it crashes. So does apport-bug. At the same time.


Helpfully, a wild KCrashHandler appears, and asks if I want to report this crash as a bug.

I do. (I don’t know why. I should have just given up at this point. I’ll know not to do so next time.)

I go through the KCrashHandler dialogs, mashing checkboxes and buttons, lying that I knew exactly what happened and what I was doing, until it finally haughtily deigns to admit that maybe, perhaps, my bug report is “high quality” enough to be submitted to the developers.

Then… it refuses to submit it. Because apport-kde is not covered by the Ubuntu bug-tracking system. (Or was it the KDE bug tracking system? I honestly don’t remember. And I don’t care.)

Hmmm. Fail? I dunno. Is it reasonable to suppose that if you’re offered the chance to report a bug on a bug reporting tool, that there will be some kind of … I don’t know, bug tracking system, to actually receive your report? I dunno – you tell me.

Then I click Finish and it shows me the bug report it would have submitted to the Ubuntu bug tracking system, had it been able to. Then it tries to submit it via email, using KMail.

At this point, KMail appears – and immediately crashes. But not before telling me that it has to crash now, sorry. How nice of it to let me know! Admittedly, I haven’t configured KMail at all, so there’s no reason why it should work. But there’s also no reason why it should crash at this point.


I write the email myself. Well, no, I lied – I copy-pasted it into GMail.

I receive an autobounce email saying I am, and I quote, “not allowed to post to this mailing list”.

It doesn’t say, “just click here to subscribe to show you’re a real person, not a spammer”. It doesn’t explain anything. It just says I’m “not allowed”.


I write an irate email to the owner of the mailing list, using the email address provided in the bounce email.

THE ULTIMATE FAIL: I received no reply. I suspect that the owner email address redirects to /dev/null.

At this point, I gave up. No, I lied – I wrote this blog post.

Then I gave up.

The end.

Getting your face to appear under Google search results linking to your blog

UPDATE: If following these instructions messes up your blog post titles, tick the checkbox “” in Settings -> Yoast SEO -> Titles & Meta’s.

This post is for fellow bloggers using WordPress.

There is a slightly pernickety list of things you need to do to get Google to realise that your Google+ profile is owned by the same person that writes your blog posts, but once you’ve done so, Google may eventually (when it next updates) choose to show your profile photo under at least some of your blog posts.

But first, a couple of disclaimers:

  • As Google says:

Note that there is no guarantee that a Rich Snippet will be shown for this page on actual search results. For more details, see the FAQ.

  • Read the last step below first – there’s a potential privacy issue

If you still want this feature, you might want to use the Yoast SEO plugin, which has a new feature which makes that slightly more convenient to set up. No need to read that post though – here are the full step-by-step instructions you need to follow, exactly as I performed them:

  1. Download the latest Yoast SEO plugin development version from this link (it’s free)
  2. In your WordPress Dashboard, go to Plugins -> Install and choose to install a plugin via a zip file
  3. Install the zip file you just downloaded in step 1
  4. Activate the plugin using the link provided
  5. On the top-right corner of the page, click “Howdy, [Your Name]” to edit your profile.
  6. You should see a new profile field at the bottom: Google+ profile page. In a new browser window or tab, go to your Google+ profile page, and copy and paste its URL into the profile field I just mentioned.
  7. Delete the /posts part at the end of the URL you just pasted (I’m not sure whether this is actually necessary, but let’s be on the safe side).
  8. Important – Click the button at the bottom to save your changes!
  9. On your dashboard sidebar you will now see a new link at the bottom – SEO. Inside there, choose the subpage “Titles and Meta’s” [sic]
  10. Click the Home tab at the top of the page (yes, it’s a settings subpage with tabs – this Yoast SEO plugin has a lot of settings!)
  11. At the bottom, choose yourself in the dropdown next to “Author highlighting”
  12. Once again, click Save Settings.
  13. On Google+, edit your profile and add a link from your profile to your blog homepage.
  14. On Google+, make your +1 tab publicly visible if it isn’t already. (This may be a privacy concern for you, in which case, bad luck – you’ll have to make the decision as to which you value more – the privacy of your +1 clicks, or this new Google search results feature.)

OK, this was still a pretty involved process. However, the Yoast SEO plugin also has a load of other goodies included – including the ability to easily stop search engines from displaying archive pages in search results, but still let them crawl through them for links. Those particular settings are a must for all WordPress bloggers – it’s just really annoying and unhelpful when date or category archives rather than the actual blog post of interest show up in Google search results. It seems like half the time, the post of interest has fallen off the end of the archive page, and isn’t even visible any more!

So it’s worth going through this rigmarole and doing it this way. Also, you don’t run the risk of screwing up the HTML/PHP and wondering what’s happened, which is good if you don’t like editing HTML or PHP.

Comparison of functional program verifiers

This is a comparison of various tools for “verifying” that a piece of code (written in a functional programming style) fulfils a specification, with some degree of automation, to various degrees of confidence.

I’m not putting this on Wikipedia, because many Wikipedia editors will summarily delete supposedly “non-notable” table rows in tables, despite there being no Wikipedia policy to do so.

Note: DSolve is currently not included because the published version does not support recursive types, such as List.


Name Available for download Mode(s) Solvers Operates on
Leon Yes Automated Z3 Scala
Isabelle Yes Interactive Various Various4
Coq Yes Interactive2 Built-in2 Various4
Dafny Yes Automated1 Z3 Dafny
ScalaCheck3 Yes Stochastic None – direct execution Scala / Any
HMC No Automated Various ML
ACL2 Yes Automated, stochastic Built-in ACL2

1 Dafny really shows that the lines between interactive and automated provers have blurred. It has an intriguing feature – the ability to prove lemmas by giving the solver enough hints to let it prove it by itself, and then have those lemmas be automatically employed by the solver. I am not sure whether any other system offers such a feature, as such.2

2 Coq does not yet integrate with any solvers (other than its built-in decision procedures), though a project is underway to change this. So why would you want to use Coq instead of Isabelle at the present time? Well, one possible reason is that Coq supports dependent types (although not in such a convenient way as languages specifically designed for dependently-typed programming), whereas Isabelle doesn’t.

3 ScalaCheck is one of a family of independently-developed tools named something-Check, which began with QuickCheck (which is for Haskell).

4 These tools (Coq and Isabelle) both support code extraction to proper programming languages. Alternatively, there are front-ends to both which can read e.g. Java code and specifications, and create corresponding proof obligations. So don’t worry about being able to execute your code with reasonable performance outside of the tool – you will be able to.


Name Static typing Proof by induction Verifying higher-order functions Natively supports imperative code IDE
Leon Yes Yes No No No
Isabelle Yes Yes Yes No Emacs or JEdit
Coq Yes Yes Yes No1 Emacs or CoqIDE
Dafny Yes Yes ? Yes Emacs
ScalaCheck Yes No Yes Yes Any
HMC Yes ? Yes ? ?
ACL2 No Yes No No Emacs or Eclipse

1 Coq does not support imperative programming “natively”, but it can be done in Coq, using e.g. Ynot or Bedrock.

Corrections and additions can be supplied by comment below or by email; please supply a citation to a reliable source in every case.

Alternative currency for Scots?

Scotland is to have a referendum on regaining independence from the UK, and if the result is Yes, signs are that they are set to make the disastrous mistake of retaining a currency union with, or pegging to, Pound Sterling.

But as I often find myself saying: The Greens get it. Thank goodness someone does!

As, in fact, do Labour. It’s a wonder what needing to understand something in order to attack your political opponent can do! Suddenly the Labour Party is discovering the flaws of currency union without fiscal union that they were as a party so blind to when it came to the Euro.

Patrick Harvie has raised questions about defecting from pound sterling.

Published on Tuesday 29 May 2012 00:00

An independent Scotland will have to look at setting up its own currency, according to one of the “Yes” campaign’s leading figures

this site uses the awesome footnotes Plugin