Author Archives: James Bradbury

Some sleep correlation data

You may have read my previous post that I’m trying to use data to work out why I’m sometimes not sleeping well and how I might sleep better. I’ve been doing that now for some 86 days and I’m excited enough to look at the data and see if anything interesting has shown up. Ideally I’d like a year’s worth of data to get reliable results, but I’m impatient.

You may be wondering why the title of today’s post is so undramatic, prosaic even. Well, I’m rather a newbie when it comes to data science and I don’t want to leap to conclusions from the first thing I try. As you’ll see from my GitHub project, all I’ve done so far is to read in the data and use Python Pandas to produce the correlation results. I then pasted this into a spreadsheet, sorted and highlighted some rows.

I used to think that correlation implied causation. Then I took a stats class. Now I don't. Sounds like the class helped. Well, maybe.

I’m also wary that correlation does not imply causation. But it does make for an interesting start.

With those caveats out of the way, this is what I’ve got so far.

Screenshot of spreadsheet showing potential influences on the "hours that night" variable.

Plain correlation from the first 86 days of data

The factor I’m hoping to maximise is “Hours that night” – how many hours I sleep on a night after all those potential influences have been measured. So I’m interested in things which might be positive or negative influences on that.

The top two I’ve put in grey, as I think they’re not very interesting, except to show that the correlation function seems to be working as expected.

  • “Max possible” is low when I have to get up very early, say to travel somewhere, so it’s always going to limit my sleep.
  • “Av hrs past 5 days” is a rolling average of “Hours that night” over the last 5 days. That I’m more likely to sleep if I’ve built up a huge sleep debt recently is unsurprising, but also confirms that the model seems reliable.
  • ZMA and FOS are two supplements I’ve been taking recently which are said to help with sleep, the ZMA particularly for those doing a lot of exercise. Evidence is limited and I’m not keen on trying every eccentric treatment “because you never know”, but they’re cheap and the side-effects are trivial. However, I’ve only been taking these for a couple of weeks, so I don’t think there’s enough data to say if they have helped me.

Eating

If I had guessed I would’ve expected “Evening meal finish” – the time at which I finish dinner to have had the greatest negative effect on my sleep as I often wake early feeling boated if I’ve eaten late. It does seem to be a negative factor, along with “Evening meal size (0-5)”. I’ll aim to eat earlier and keep recording results.

Alcohol

This wasn’t a significant factor for me. This is supposed to make you fall asleep later but wake up too early, losing sleep overall. Anecdotally, I have found to be true for me. However, I drink quite rarely and haven’t had more than four units a day in any of the last 86 days, so my stats so far may not say much about that.

Daylight, Sugar, Screen time, Fasting

I’m recording these as they’ve either been blamed for bad sleep or hailed as a helpful thing. They don’t seem to be a big deal for me. I may consider stopping recording them so I have more time/space for other data.

Worry, Excitement

It interesting that these have some negative effect on my sleep, but as they’re all day values, there’s probably not a huge amount I can do to control them.

Exercise

I am surprised and, if I’m honest, disappointed to see “Exercise (1-5)” as such an apparently bad influence on my sleep. Studies have suggested that exercise should have a positive effect on sleep, but that may depend on intensity.

For me, and exercise score of 1 indicates a day where I didn’t walk for more than 15 mins and did no other exercise, 2 a normal day where I cycle to/from the station, about ten minutes each way, 3 is a bike ride of up to 3 hours or a 20-min weights/callisthenics session, 4 is a 3-6 hour bike ride, 5 is reserved for the all-day and sometimes all-night rides I occasionally do.

Perhaps this isn’t enough data on what, for me, may be an important question. Questions I’d like to answer might include.

  • Is morning exercise better or worse for sleep than evening exercise?
  • Is moderate exercise better for sleep than either extreme?
  • Does taking ZMA (or something else) mitigate the apparently negative effects of exercise on sleep?

Finally, instead of simply “Hours that night” should I be measuring the sleep I got as a fraction of the “Max possible” sleep? That might account for strange circumstances where I was still cycling at 1am and inevitably scored a 5 for “Exercise”.

Conclusions

I shouldn’t be drawing any firm conclusions yet, I think. 86 days is not that much data and there are many confounding factors that could be influencing things. I have a lot of thinking, learning and tweaking to do.

I plan to keep recording the data, expand my exercise data to include AM/PM and separate short intense efforts from longer endurance ones.

Volunteering at Thirsk for LEL

I recently volunteered for a few days at the Thirsk Control for London Edinburgh London. I put up banners, sorted out chargers for riders GPSs and phones, found beds for people, served food, fixed bikes and marshalled people into the control. It was tiring, but with a great bunch of people to work with it was also good fun.

Here are a few of my photos.

Lego ginger cat

Siobhan’s cat

Light green bags with LONDON EDINBURGH LONDON 2017 written on them

The bag drop has landed

Pens, space blankets, banners, signs, torches, etc laid out on a desk

A wide variety of kit is needed to run the control

LEL 2017 banner on school gate

Banners to guide the riders in

James standing in front of two LEL banners

Proud of my handiwork!

USB chargers on table.

Lots of charging for GPS and phones

Metal barriers in the car park

Parking for hundreds of bikes

School gym with mattresses laid out

A few beds in the overflow hall

Large school sports hall with many mattresses ready

160 more beds in the main hall

Three audax riders arriving at Thirsk school

An early group arrive before dark on Sunday

Boy on mountain bike

Not an audaxer

Woman on shopping bike with basket.

Also not an audaxer, but it’s hard to tell from a distance, OK?

Volunteers in school corridor

Edwin and Kate doing sleep running

Bikes parked at night

Plenty of bikes making use of the parking facilities

Volunteers in canteen

James and James learning how to serve food – it’s harder than it looks.

Pasta, Rice, Curry, Meatballs in canteen

Ja, I vill have ze pasta wiz ze curry. OK…

Bikes parked in daylight

A fairly busy time.

Red velomobile

Wow

Bike on stand being serviced

James looks into another gearing problem.

Light blue frame and front derailleur

Stiff shifting to the big ring, gunk in the cable duct. Lubed up and it was good enough.

Trouble sleeping

For a couple of years I’ve had some trouble sleeping. I’m not sure how much of this is due simply to age or the disruption of having a small child. However, lately I find that even when my daughter sleeps soundly, I often find myself waking too early.

I’ve taken the usual medical advice and found little improvement. GPs seem unwilling to investigate after they’ve done the standard checks and decided there’s nothing seriously wrong with me. Frustrated, I decided to do some work on it myself. Part of my day job is data analysis and I figured that if I can record the right data I might be able to write some code to work out what is causing me to lose sleep. Or, as Mark Watney might say,

I’m gonna have to data science the shit outta this!

Thumbnail image of Google docs spreadsheet

Sleep data Google docs spreadsheet

I started a couple of months ago, simply with a spreadsheet recording rather subjectively, thirteen different aspects of my day which I thought might influence my sleep. Things I thought might make a difference to my sleep but are hard to pin down without recording data due to the many confounding factors. 

Things like exercise, evening meal size, evening screen time, daylight hours, worry etc. Where no simple measurement scale exists, I estimate a number from one to five. So my ten minute cycle to the station and back counts as 2/5 for exercise. Only a 100km+ ride gets a 5/5. As I said, it’s a bit subjective, but hopefully enough to be useful. There’s no way I’m going to carry a light meter round with me or start weighing my meals. As it is, recording the data takes barely two minutes a day. The following morning I record roughly how much sleep I think I got, in hours. I have set the spreadsheet to calculate the average over the last five days.

What might be a bit more accurate is a gadget I’ve acquired recently, an EMFit QS. This intends to measure both my sleep and heart rate throughout the night, producing all kinds of numbers describing how well I’ve slept and recovered from exercise. I’m not sure I’ve fully understood how to use it or whether I’ve got it set up right yet, but I’m adding some of the numbers to my spreadsheet in the hope it will give me some clues.

I haven’t yet decided on what techniques I’ll use to analyse this data and spot patterns, but I intend to start with a straightforward correlation matrix before moving on to something more sophisticated that can look at results from previous days in case for example, the exercise or food I ate two days ago could influence my sleep tonight.

I’ll share any code I write on my github account and explain what I’ve tried here.

Knock Ventoux 2017

Few bike routes truly deserved the overused term “epic”, but I think Andy Corless’s Knock Ventoux 300km audax is a contender.

I rode this in June 2017 and here are my photos.

 

Tweaking the bike for Everesting

I’m planning my second Everesting, so thought that as well as climbing lots of hills to prepare my legs, I should do something to prepare my bike. I have one proper road bike which I use for club runs and audaxing. Audax is bikes are partly about comfort as over that kind of distance discomfort eventually becomes pain, which slows you down a lot. Anyway, it is supposed to be enjoyable, mostly. Maybe some type-2 fun, but hopefully not type-3.

I’ve pretty much decided on The Burway for my next Everesting, even though I won’t be the first.

Mods for Everesting

I’m conscious that with Everesting there’s a lot more climbing than even the hilliest audax. The Cambrian 200 is one of the hilliest and even that has under 4000m of climbing. Everesting means 8848m in as little as 180km. When climbing, weight makes a huge difference, so some of my modifications are to reduce weight. I’ve removed the mudguards, the bell and the pedal reflectors and swapped my dynamo hub wheel for a standard one. The weather looks good and I hope not to be riding too much into the dark, so hopefully this will be OK. I’ve also swapped out my Brooks leather saddle for a simpler and lighter Charge Spoon. If this isn’t quite as comfortable I’m hoping it won’t matter as I tend to stand up for the descents and maybe parts of the climbs.

I’ve switched to some 25mm Continental GP4000 tires I have but rarely use. These are fractionally lighter and also roll a bit faster, which is a bigger proportion of energy usage uphill when aerodynamics are negligible.

Scale showing 8.61kgI haven’t spent a huge amount of money to do this, just bought a couple of cheaper bits. No doubt you could save a bit more weight by spending more. The titanium frame is light, but not as light as some carbon ones. Still, I’ve got the weight down to 8.6kg.

The other significant change I made was in gear ratios. The Burway has a 20-25% section which I can easily get up with 34×29 when I’m fresh. However recent training rides on a 18% climb make me think that will become very hard after a few repetitions. I’d like to have the option of standing or sitting to climb, even when my legs are tired. So I had a look at Spa Cycles and found a cheap triple chainring that would do the job. the smallest ring is 22 teeth, which gives a lowest gain ratio of 1.4 (or 18.1 inches), compared to the 2.1 (or 28 inches) I had previously. At 90 RPM that’s 7.8kph, probably a realistic speed for the steepest part of the climb, though I expect my cadence will drop further when tired.

Small 22-tooth chainring mounted on titanium frame, missing larger rings

Very low gears with a 22-tooth chainring

I only have a shifter for a double chainring and didn’t want the hassle/expense of buying and setting up a full triple at the moment. So I thought I might as well remove the two larger rings and for that matter the front dérailleur. A little extra weight saved.

I can still shift between 32 and 11 tooth cogs on the back, but this means I can’t pedal fast enough much beyond 25kph, so I may be a bit slower on the flatter bits of the descent. I’m not too worried about this as I think the climbs are more important to the overall time. Ideally my front ring would be about 28 teeth, but I don’t have one of those without spending more money or pulling apart my hybrid.

Maintenance

I’ve also replaced the chain as it was getting worn and set the length of the new one for the small chainring. I guess when I switch back to my double I’ll need a new, longer one.

Broken aluminium nipple

Broken aluminium nipple

Horrible aluminium nipple with damaged head.

Horrible aluminium nipple with damaged head.

 

 

 

 

 

 

 

 

I’ve also noticed recently that the fairly cheap wheels I bought about a year ago have had several nipple breakages, two when the wheel was just sitting in the garage. It looks like the nipples are made of aluminium rather than brass. Brass ones are a bit heavier (1g vs 0.4g by my measuring), but also more reliable. I don’t enjoy the prospect of nipples breaking while out on even a short ride, so I’ve laboriously replaced them all.

Hopefully all this will help me complete the Burway Everesting tomorrow!

 

 

Preparation for Everesting

A couple of years ago I everested Bowden hill in Wiltshire and found it a good challenge. I was the first person daft enough to do it. Since then I’ve been thinking about another hill to Everest.

For a long time I had my eye on Bwlch-y-groes aka Hellfire pass in North Wales, but last year Ian Barrington did it before me. More recently I’ve been thinking seriously about The Burway in Shropshire, but a couple of weeks ago Chris Winn did that one. Huge kudos to both these guys for amazing efforts on these famous climbs. However, I was a bit annoyed that I couldn’t be the first up either of these, which is what the Everesting.cc hall of fame focuses on.

Why?

I started wondering about whether I really needed to be the first to Everest a particular hill and for that matter why I do it at all – something which I feel I often have to explain to puzzled friends and family. Last time I was doing it for charity, but this time I’d rather do it for me. Partly because I don’t like asking people for money.

One reason I do these kind of challenging rides is that it adds a definite goal to aim for. Whether I’m training or modifying my bike or working out the route and logistics, it’s all more enjoyable with an aim in mind. If you don’t have a goal you can’t fail, but success is also rather meaningless. There’s no sense of anticipation or achievement. Some cyclists use racing or aiming for KOMs on Strava segments as goals, but I’ve never been much of a racer. I’ve assumed that, having only started cycling seriously in my thirties I was a bit old to be really fast over a short distance. But I feel I might be better suited to these longer and quite frankly, weirder challenges. If I really feel the need to get the “first ascent” on the hall of fame, am I doing it for bragging rights? A lot of people I know find my challenges more eccentric than impressive, so perhaps I am doing it for my own satisfaction. I’ve said before that everyone’s challenges are individual and in some ways hard to compare. I’ve judged that Everesting will be a challenge for me. Despite having done something similar before, I’m not sure I’ll be able to complete it with my current level of fitness, a different hill, different conditions, etc. That’s part of what makes it interesting.

So I’m still undecided about redoing a famous climb or trying to be first on a new one. Either way, I’ll need to prepare my bike.

Let me help you commute by bicycle

I regularly use my bike to get to work. Usually only for the short journey across town where I leave it at the station and take the train the rest of the way. Once every week or two I ride the full 25 miles to Bristol. It’s a nice way to start the day, saves the train fare and on at least one occasion has been quicker than waiting for severely delayed trains.

Hybrid bike with rack bag by canal

Hybrid bike set up for winter riding

However, I can remember a time when this kind of distance and the logistics of riding in to work seemed intimidating. How long would it take? Where could I secure my bike? Will I need lights? How do I carry my laptop and work clothes? Can I shower at work? What if I get a puncture?

I’ve now resolved these questions and my 18-year old hybrid is now my go-to form of transport for short journeys and sometimes longer ones.

Have you thought about making some or all of your journey to work by bike and never quite got around to it?

Cycling UK‘s Bike Week event is coming up (10th to 18th June) and in the spirit of encouraging more people to cycle, I’d like to offer to help those friends and colleagues who’ve never commuted by bike to give it a go.

I can give some advice on the practicalities, safety, route planning and, if you need a bit of extra motivation and you live or work nearby, I may even get up early to escort you to and from work the first time. Just ask and I’ll see if I can help. My guess is that when you give it a go, it won’t be as difficult as you think.

James in a white jersey with tandem in a country lane, rear seat is unoccupied.

Don’t have a suitable bike? How about joining me in the tandem sometime?

If you’re​ already comfortable commuting by bike, then have a think about how you could encourage others to do so.

Why you may not want to hire passionate people

In my industry, “Passionate” is one of the most overused words in job adverts. Recruitment blogs are overflowing with advice on how to find these precious employees. It seems every company wants to hire people who are not just enthusiastic, but passionate about their work. The assumption is that people who describe themselves this way will produce better quality work and go the extra mile to get things done. A person’s passion can often be infectious, boosting morale for the team. In my experience these differences in attitude are real and I can see why they’re attractive to an employer, but they’re not the whole story.

There’s already some debate about whether it’s reasonable or healthy to expect passion from employees or if it is simply a way to demand more work for less renumeration. Maybe “we’re looking for passionate people” is code for “unpaid overtime is expected”. Could the idea of passion for a job be counter to achieving a healthy work-life-balance? I’m sure most modern companies would say that people can and should be passionate about their work and have a fulfilling home life. Hence well worn phrases like “work hard, play hard”.

Let’s assume employees can be “harmoniously passionate“, have a healthy lifestyle and devote a good portion of their time to friends and family. Would you necessarily want to employ them?

Passionate employees care more about what they do. They care about how it’s done. They may even care about the overall mission of the company. Often companies encourage people to get involved and to care deeply about these things. Not everyone takes this to heart, of course. For some this kind of talk is like water off a duck’s back. They roll their eyes as the CEO stands in front of PowerPoint slides depicting the moon landing or how they’re going to use quantum computing to cure cancer.

But some people do feel passionate about their company’s mission or technical vision. They will understandably have stronger feelings about how things are done or whether they are done at all. It’s unlikely that they’ll always agree with leadership on the direction the company takes or decisions that are made in their behalf. Sometimes the inspiring promises that the company makes don’t pan out.

“Sorry, but the quantum computing solution turned out to be too expensive, so we’ll be using 1970s mainframes instead.”

Any​ employee who is professional and responsible would say, “we’re doing this wrong, this is what we should do instead”. If management decide to ignore their advice many would shrug their shoulders and get on with the next task. A truly passionate employee will campaign for change, research the best options in their own time and make the case for improvement as forcefully as they can.

“It looks like we won’t be directly curing cancer, but gathering statistics on the cancer drugs prescribed over the last ten years.”

Whether it is the leaders or the employee who has the better argument, the difference of opinion can become a serious impediment to progress and morale. The employee may become disgruntled and start looking for a new job or, if they’re making a lot of noise about it, be forced leave the company.

This is unlikely to happen with less passionate employees. Those who work to live rather than living to work. Plenty of my valued colleagues over the years are not at all passionate about their work and I don’t think they should feel guilty about that. I would say they are professional. They want to do a good job, because doing a good job is more satisfying than doing a shoddy one. Being liked by your colleagues means being helpful and responsible. However, they’re not so wedded to the company mission that they’ll feel any great loss if the decisions of senior management put the project or even the company at risk.

The professional rather than passionate person may move on, of course, but it will likely be for more practical reasons – salary, benefits, location or career development. Those things are probably easier to measure and manage than factors like how realistic the company mission is or how inspiring the technical challenges.

“I know you guys are master carpenters hired to carve unique furniture, but we urgently need you to assemble flat pack wardrobes.”

To be clear, I’m happy to work with anyone who is responsible and ethical at work, whether they’re passionate or not. I think it takes all sorts to make a good team. What I dislike is the obsession with passion at the expense of the merely professional.

Passion may be a great motivator, but it is hard to manage properly and can become a destructive force when it is not.

What is the point of code reviews?

In most of the jobs I’ve had peer code review was an essential and regular part of the software development process. My experience is that it improves code quality and is well worth the effort. I’d also say that at least half of what I learnt in that time was through code review. Either someone would suggest improvements to my code, or I’d discover new ways of doing things from reviewing other people’s work. It’s a great way to share knowledge. This is not only true in specialist domains where the answers are not always easily found by searching the web, but any time someone is not aware of a better way of doing things. You won’t search for something if you don’t know it exists.

That’s my opinion, but there is also plenty of evidence that code review improves code quality, helps find bugs early and ultimately saves money. The numbers vary between studies, but finding bugs early is not just cheaper, it’s significantly cheaper.

What about testing?

No doubt some people will say that the purpose of unit testing is to find bugs early or, in the case of TDD, prevent them ever being created. So why do we need code review as well?

I agree that unit testing is powerful, indeed I’ve used TDD thoroughly to tame some seemingly intractable problems, but I still highly value code review. I think testing and code review achieve different things. Both are important.

Unit tests are great for quickly checking that everything that worked previously still works after a recent change. They provide confidence to refactor or experiment with code in the knowledge that the essential functionality can be quickly checked and rechecked. Achieving this via a code review would be slow, boring and error-prone.

Code reviews on the other hand can ask bigger questions, like:-

  • Is the code understandable?
  • Are the unit tests testing the right requirements?
  • Is there a more efficient way to do this?
  • Does it increase unplanned technical debt?

In fact, any check that can’t be automated. Coding style, static analysis, spell checking etc can all be automatic and the most a human reviewer should do is check the results.

Code review suggestions

Others have already written good things about how to conduct code reviews without annoying people or what tools you should use, so I won’t repeat that. Here are my observations and suggestions about how to get the most out of code review:-

  • The most important thing for a code review to check is whether the code is functionally correct. Does it do exactly what it says on the tin? Are the code and tests fully implementing the requirements of the story/ticket? Or has the developer misunderstood what’s needed in some way? If so then they’ve probably written the unit tests with the same misunderstanding, so they all pass fine. Yes, this is a hard thing to check – it takes some time to fully understand, but it is important. Get this wrong and nothing else matters.
  • Code review is a great way to share knowledge. Again, this does mean you have to take the time to properly understand the change, but it develops the team and mitigates risk.
  • There should be no reviewer hierarchy. Different perspectives are useful. More than once a more “junior” developer has reviewed my code and asked a “naïve” question only for me to scratch my head and say, “You’re right, I’ve done that totally wrong”. Even when it doesn’t happen quite like that, reviews tend to stimulate questions and the transfer of ideas.
  • That said, it can be worth making sure the local domain expert is one of the reviewers of any important change, but they don’t have to be the only reviewer.
  • Applying more engineer hours to the review does find more bugs, but each additional hour will be slightly less valuable on average than the last, so there’s a balance to be struck.
  • Don’t get bogged down in matters of opinion. When it comes to how to make code understandable and maintainable, there’s a big slice of judgement involved. “I wouldn’t do it that way” is not sufficient justification for raising a comment. There’s a danger of getting into “tomayto/tomahto” arguments. Be open-minded, take a step back and think about how important your point is.
  • Following on from the last point, it’s OK to have no comments. It might seem like you haven’t done your job as a reviewer, but it’s better than nitpicking for the sake of feeling productive.
  • If possible, do not manually check anything that can be automated. Style guidelines should be agreed across the project and checked quickly and automatically. Reviewers are human beings; they’re above that stuff and anyway they’re not very good at it.
  • Pair programming can function as a kind of instant review, but there are also risks. The reviewer can be too “close” to the code to be impartial or may make the same false assumptions about the requirements. A slower or more timid engineer might not want to question the other’s work without the time to think it through properly. So, while pairing can find bugs very early, I don’t think it should be the only kind of review a change receives.

A different kind of challenging

An audax has been described as a journey with an uncertain outcome. If everything goes well, the time limits are usually generous enough for people of a widely varying speeds to finish. However, they take place in the real world where expected things can and do go wrong and it pays to be well prepared. To my mind, this uncertainty adds to the sense of adventure and challenge, even if it is sometimes frustrating.

Having been ill with a persistent fever and cough for most of January, I was recovering physically and desperate to get out in the fresh air. So I booked 31st Jan off work and planned my first ride of the year – a 50km DIY audax with plenty of hills, plus a little bit to and from the start. If I took it slowly it should be a gentle start to the year which my unfit body and still-sensitive lungs could manage.

It was a damp and misty day, with the threat of rain. I don’t have the luxury of much flexibility in my spare time, so I wasn’t going to let that put me off. I’ve got some good waterproofs – trousers, jacket and socks, so I put it all on and set off. I got to the start at Upper Castle Combe in about half an hour, already warming up, so I stopped to take off the waterproofs as the rain had stopped. When I did so I realised that the batteries in my front light had dropped below the level where it will actually turn on, as had one of my two rear lights. Arguably these aren’t essential in the daylight, but I prefer to use them anyway, especially as it was so misty. After a bit of switching around I worked out that one of the batteries from my front light still had enough life in it to drive the extra rear light, so at least I’d be really visible from behind. I’m glad I used all AAs, but really I should’ve checked more carefully before leaving that they were all fully charged.

I set off and whizzed downhill through “the prettiest village in England“, dodging a few tourists who were out early. After several small ups and downs, I reached the highest point of the ride near Colerne where the mist and drizzle made visibility very poor. A bit of a shame as there are often good views from up here. Nevertheless I was happy to be out in the great outdoors feeling freedom and adventure. I felt like a caged bird set free. Albeit a slightly wheezy bird. But my lungs were 95% normal and my legs still seemed to know what to do. I was happy to amble along without expecting to break any personal records.

By now I was a bit chilly again and, knowing I had a long descent ahead of me, re-donned waterproofs. Thankfully the journey through Bath was easy and unhindered by traffic. Once out in the countryside again I enjoyed some unfamiliar scenery. The last time I rode down there was two years ago, so it made a nice change. Things got seriously steep riding in and out of Wellow, but at times the mist cleared and there were glimpses of the views I’d hoped for. I returned to Bath via the two tunnels cycle path which I always enjoy. It’s a gentle gradient and a good surface, so progress is easy in either direction. Mid-morning on a weekday, there were few pedestrians about, but I was surprised by one in dark clothing – shame my front light wasn’t working.

Once out of Bath I had a choice of two climbs, the narrow, quiet, meandering Steway lane, or the busier Bannerdown hill. The latter is the obvious choice downhill as it’s possible to safely pick up speed, but on the return journey Steway lane usually makes for a more relaxing route, especially at busy times. However, the surface often gets a bit “agricultural”. In the light of the recent damp weather, I chose the simpler and cleaner Bannderdown hill, taking the long climb into the mist steadily.

As I approached the top I noticed a lot of noise from the rear tyre. A puncture. Disappointing as this one had gone on my last ride too. Never mind, I found a gap by a farm gate and looked for the hole. Normally I take the tyre and tube off and inflate then listen for the escaping air, but in this case the tube wouldn’t stay up long enough to do this. I thought this meant it was a pretty big hole, but I couldn’t see anything. Maybe the valve had failed. A light misty rain was falling and I was getting impatient. I checked around the inside of the tyre for anything sharp, but found nothing. Yes, must be the valve gone. I put my spare inner tube into the tyre and set off to finish the climb. I’d barely got twenty metres when the back went down again. I yelled some bad words into the mist and walked it up to the large lay by at the top of the hill.

In as few mins I had a glue patch applied and was putting air back into the tyre. The problem was that it wasn’t staying in the tyre. Sighing, I got the levers back out and removed the tyre again. I only had one spare tube, so I had to fix this somehow. Part of the patch had stuck, but air was escaping from the other side. More glue on that side and try again. Nope, it still won’t hold air. Maybe a whole new patch? How about the Park Tools self-adhesive patches? A bit better, but still not good enough. Maybe the ubiquitous grime and moisture was the problem? I tried wiping the tyre down with some spare clothing from my bag, one of the few really dry things I had. This seemed to help a bit, but still didn’t quite do the job. Each time it failed I had a small outburst of frustration, before regaining my calm and trying again. I’ve fixed loads of punctures, why can’t I do this one? After an hour and a half I was considering whether to walk home. It would take three hours and I wouldn’t be able to validate my DIY audax, but at least I’d be back for dinner.

Just then another cyclist arrived. Chelsea was on her first tour from Bath to Oxford and she was having issues with her gears shifting into the spokes. This can be seriously bad news and even wreak a wheel. I did my best to help her by adjusting the limit screws, but I’m not sure it was totally fixed. It had been a lonely ride up to this point, so a bit of chat was welcome. She also kindly gave me an inner tube – I got the impression it was her only one. I felt a bit bad taking it. Fingers crossed her Gatorskin tyres are tough enough for her journey.

We said goodbye and, unsure of how much time I had to complete my ride, I sped off at a faster-than-usual pace. Thankfully the worst of the hills were behind me and there was a slight tailwind, so I made good progress. Later I found I’d finished with about five minutes to spare!

The ride was certainly difficult, but not to for the fitness-related reasons I had expected. Often long-distance riding provides more mental than physical challenges, but I’d rather not repeat this experience. Inspecting my rear tyre on my return, I found it full of tiny cuts and with little tread left. My Strava history suggests it might’ve done around 9000km – far more than I’d usually expect, so I’ll replace it before the next ride. I also plan to carry two spare tubes with me in future, partly for those times when I mess up but also so I can donate one to someone else without leaving myself at risk of getting stuck.

Hopefully Chelsea reached her destination safely and without needing her spare inner tube.