My Experience Of The Low FODMAP Diet for IBS

I have had Ulcerative Colitis, a form of Inflammatory Bowel Disease (IBD), for over 40 years. Fortunately mine is relatively mild and I have not had to have surgery and it now 4 years since my last major flare up. However between flare ups I do suffer from Irritable Bowel Syndrome (IBS) to which people with IBD are prone because of the mess IBD makes of one’s bowel.

Last year my IBD consultant at York Hospital agreed to refer me to a dietitian to try a Low FODMAP diet to see if it would help with my IBS.

FODMAPs are fermentable carbohydrates, or Fermentable Oligo-saccharides, Di-saccharides, Mono-saccharides and Polyols. Recent research has shown that these carbohydrates contribute to IDS symptoms.

In September I started on the diet. This had to be followed strictly for 6 weeks initially. I found this fairly easy to do provided one avoided processed food. Eating out however was near impossible.

High FODMAP foods to be avoided include all wheat products (bread, flour, pasta etc.), pulses, onions, garlic, milk, various fruits including apples, pears and peaches, cashews, honey and fructose syrup. The good news was that all meats, maize (corn), and some fruits and vegetables were ok as were lactose free dairy products.

For the first 3 weeks of the diet I noticed little change and was beginning to think the diet would not help me. But then over the next 3 weeks my IBS improved significantly and became better than for many years. Yes, the FODMAP diet was working for me! According to my dietitian it improves the IBS of over 75% the people referred to her.

The FODMAP diet is not however intended to be followed for the long term. It is important to reintroduce FODMAPS to make one’s diet more varied and healthy (and also to make it easier to eat out etc.). To enable this one must try and identify to which FODMAPs one is most sensitive to because not everyone reacts to all FODMAPS and different FODMAPS can be tolerated in different amounts.

During this reintroduction phase, one remains on the diet but tries one high FODMAP food at a time, known as a challenge. The quantity of the food is increased over three days. If adverse symptoms are obtained, that challenge can be abandoned but another high FODMAP food cannot be tried until the symptoms have subsided. In this way one develops an idea of which high FODMAP foods one can tolerate and to what extent.

Most high FODMAP foods fall into one or more groups and if one can tolerate one food in the group one can probably tolerate others. Unfortunately that is not the case with fructans. Foods high in fructans have to be individually tested.

These challenges take a lot of time and in my experience the results are not totally clear. Some foods I reacted strongly to. These included sweet potato (mannitol part of the polyol group), and cashews (galacto-oligosaccharide group). However I did seem pretty tolerant of mango (fructose group). Milk (lactose) was more confusing. Initially it seemed ok but by day 3 I was having bad symptoms. Likewise for avocado (sorbitol a part of the polyol group). I take this to mean that I have some tolerance but should avoid large quantities. I reacted badly to both garlic and onion (members of the Fructans group). This is annoying as they are so widely used and so difficult to avoid when eating out.

So to conclude, I am very pleased that I tried the Low FODMAP Diet. In the past I have been unable to associate any particular food with the causing of my IBS symptoms. Now I know to totally avoid certain foods where possible and to try and reduce others. If I start having symptoms I know I can switch to low FODMAP foods and things should improve. As eating high FODMAPs does no permanent damage, one can afford to be fairly relaxed when eating out. In a restaurant, when choosing from a menu, I try and avoid dishes that I think may be high FODMAP– but sometimes I take a risk because I really fancy a dish. When having a meal at friends or families I normally would not mention my diet. Although I try and have lactose free milk and yogurt at home, I am relaxed about having some normal milk and yogurt when it is not easily avoided.

The great thing is that I now have some control.


Some Background On My Weather Stations

I currently have weather stations at 3 sites.

My home in Cockermouth has a Davis Vantage Vue. This is a nice bit of kit and has so far proved very reliable. The problem is that together with the Weatherlink data logger, which you need to hook it up to a computer, it costs about £450. Therefore for my other 2 sites, at York and in the Chilterns, I have chosen a Maplin N96GY weather station costing about £60 when on offer (as it is at present). This works fairly well but is less accurate and much less reliable. Both Maplin sites have had to have new rain gauges and both lose contact with their sensors occasionally.

Weatherlink the software that comes with the Vantage Vue data logger is fine if you just want to display your data on a PC connected to the console but its support for websites is very limited. Therefore initially I wrote python programs that read the Weatherlink binary files, aggregated the data storing it in a SQLite database, and from the database produced static html webpages which were uploaded to my website. I did this to avoid paying extra for web hosting; my ISP provided free web hosting but did not support dynamic pages.

When I bought my first Maplin weather station I quickly decided not to use the feeble Easyweather software provided and instead chose to use Cumulus from Sandysoft to interface to the console. I then enhanced my python programs to accept input from the Cumulus monthly log files as well as Weatherlink files.

Around this time I had signed up for paid web hosting to support another project and as a result had PHP and MySQL available. This gave me the opportunity to improve my website design. I modified my python programs to upload the raw and aggregated data to a MySQL database in the cloud and wrote PHP scripts to dynamically serve the site’s web pages, a vast improvement on the use of static pages.

One of problems with Weatherlink and Cumulus was that both ran only on Windows. Windows isn’t ideal as a host. Windows computers tend to be quite pricey (although these days there are some surprising cheap ones) and Windows has some very annoying habits such as deciding to shutdown when it feels like it. I had bought a Raspberry Pi (RPi) when it first came out and was thinking about whether that could be used. Around that time Sandysoft made available a beta version of Cumulus MX which could run on both Linux and Windows. After trialling Cumulus MX on a RPi, and porting my Python programs to Linux (which was very easy), I switched all my weather stations to use that architecture.

Unfortunately Cumulus MX at that time proved to have a few quirks with the Maplin weather station. The pressure reading sometimes jumped, timestamps on catch-up readings were corrupt and the rain rate values were very inaccurate. Also it frustrated me that I did not have control of the source code. Since I was really only using Cumulus MX to interface with the station consoles, I wondered if I could find something that suited me better. I had become aware of weewx and pywws, 2 open source python weather station software packages. Weewx supported both the Vantage Vue and Maplin (aka Fine Offset) weather stations; pywws supported just the Maplin weather station. Both are very impressive and pywws in particular seemed to be leading edge when it came to dealing with the Maplin’s tricky interface that was prone to hanging. However both did a lot more than I needed, but not quite what I needed.
So I decided to take the Vantage Vue interface from weewx and the Maplin interface from pywws and adapt them to my needs. In particular I made quite a lot of changes to the Maplin interface to help my understanding of what was going on and to fix problems I encountered (and maybe introduced). The two interfaces now write out a simple monthly log file that is easy to edit and feeds into my existing Python programs to support my web site.

One of my concerns with using the RPi is that its storage is on an SD Card. These have a limited write life so I have tried to minimise disk activity by, for example, getting rid of the local Sqlite database and reducing unnecessary logging. Fingers crossed, as yet I have not had a failure.

Another concern was that my Maplin weather stations are at remote sites. As the Maplin consoles have been known to hang in the past I run them without batteries so that a reboot from the RPi (which powers them) causes them to reboot. To connect to the remote RPi without having to open ports on their local routers I use (previously known as Weaved). This has proved reliable but I do take the precaution of scheduling a reboot of the RPis each night just in case a hang up occurs.