Author Archives: James Bradbury

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 remuneration. 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.

Why I want to encrypt everything

When I suggest to people that we should communicate using encryption, I get the impression they don’t take me seriously.

Am I paranoid? Do I think I’m interesting enough to be the subject of surveillance? Maybe I want to play at being a spy? OK, maybe the last one is partly true, but seriously, I think there are good reasons to encrypt all information by default.

To be completely clear, when I suggest we use encrypted communication:-

  • I don’t have any classified information to share
  • I’m not buying or selling anything illegal
  • I am not planning to have an affair with anyone
  • I’ve got no intention of overthrowing any governments or hacking anything

I don’t think I have anything to hide. However, I don’t want to have to think, every time I send a message to a friend, family member or whoever, about who might see it, now or in the future and what the consequences might be. Maybe one day one of us will be famous and our embarrassing utterances may be of interest to the masses.

I’d just like every message between us to be between us. It’s easy to unthinkingly assume that the messages we send are only read by the intended person or persons. I want that assumption to be reasonable.

Email is not usually encrypted and is easy to fake

For a popular example, email has often been described as about as secure as a postcard. In practice I think it’s a bit worse than that. Firstly, because it’s easy to intercept and read millions of emails automatically. Secondly, with a postcard you can probably recognise the sender’s handwriting which would take some effort to fake. Email senders can easily be spoofed. By default there’s no way to verify that the address in the “From:” field is the person who sent the email.

It shouldn’t take too much imagination to see how the insecurity of email could lead to problems. It’s already been exploited via a simple scam in the UK.

To summarise the link above… A couple had some building work done and had agreed with the builder to pay via bank transfer as many people, myself included, do regularly. They received an invoice from the builder via email which included his bank details. They duly transferred £25k to the account, but the builder never received it. The email appeared to come from the builder’s email address, but was in fact from a scammer who had sent their own bank account details in place of the originals.

This would not have been possible if the email sender’s identity could be verified and the email encrypted. Another solution would be to share the bank account details in person or, if you recognise the person’s voice and know their number already, over the phone. A phone number in an email could also be faked.

There are ways to improve on email security, in fact it’s fairly simple if both parties can use the same service. Other solutions get a bit more complicated.

Encryption is getting easier

The good news is that it’s getting easier to encrypt everything by default. Google are now encouraging all websites to be delivered via HTTPS (the S standing for SSL or Secure), making websites harder to fake and adding to the reliability of online data.

Many email services now offer some level of encryption and verification within their service. So a GMail user writing to another GMail user can expect their communications to be encrypted. Facebook messages are encrypted, as are WhatsApp. In some cases it may be possible for employees of those organisations to access clients’ communications, or to change the application for a user so that their data can be read.

For a higher standard of encryption people look to “zero-knowledge” solutions in which the service providers don’t have the ability to read user data or access their private encryption keys, even if they wanted to or were forced by law, blackmail, bribery, etc. Zero-knowledge email systems include Tutanota and ProtonMail. They’re not perfect. I won’t go into all the pros and cons here except to say that at the time of writing neither are securely interoperable with other email services, but can still be used for unencrypted plaintext emails to/from any address. Of course all this is pointless unless you have a good password.

For text messaging the most respected zero-knowledge solution is Signal, which is available for free on iOS and Android. WhatsApp also offers “end-to-end” encryption, but unlike Signal the code is not open source, so not subject to public scrutiny. Researchers have already shown that WhatsApp can allow Facebook and possibly others to read private messages. Furthermore there’s some controversy over the sharing of user data with Facebook.

Secure messaging is not paranoia, it’s good practice.

The Rough Diamond Rough Statistics

Mark Rigby’s Rough Diamond is described as a “fast 300” on good roads and, being in July, the weather is usually better than 300s in the Spring. Ideal for those attempting this distance for the first time, like my wife Erica, so we did the ride together on the tandem. It’s a great ride and I’d recommend it to anyone doing this distance for the first time.

Many cyclists, myself included, track their rides on GPS analysis sites such as Strava. After the ride you can pore over the statistics to find out how your speed varied and, with additional sensors, where your power output dipped, your heart rate shot up or your cadence was sub-optimal. Besides a thorough approach to training, I think there’s a lot to be said for using these sites for nostalgic reliving or sharing rides, adding photos or planning future routes. It can be motivational too. Trying to beat my personal records on Strava was what got me back into cycling properly some five years ago. But, liking gadgets as I do, I know I’m at risk of being sucked into obsessing over performance data. Erica teases me about uploading my rides before I’ve even had a shower. So whenever I’m on an audax I defiantly tell myself I’m “out for a good time, not a fast time”, taking in the scenery, chatting to people I meet on the way and enjoying the adventure.

Those at the very front or back of the field may have more reason to scrutinise their average speeds. Indeed, it’s prudent even for those of us normally in the bulgy bit of the bell curve to keep one eye on the clock as I know from my failure to complete PBP last year. But, for many audaxers, the additional data is not of much interest and might even be considered a distraction from the enjoyment of the ride.

I enjoy looking at visual data, like that presented in the book Information Is Beautiful. So I produced a graph tracking what I thought was interesting on the ride. The result may not be exactly beautiful, but I thought it was interesting. Everyone will have their own opinions about what makes a great ride; the variables I’ve described with the graph are the ones which Erica and I thought were important. They’re also not very precise because we tried to reconstruct them later. I guess we could’ve carefully noted each one every fifteen minutes to get accurate results, but we didn’t want any distractions from navigation, chatting and looking at the view. Besides, that would probably be more annoying than constantly checking our cadence. Maybe one day someone will make sensors to measure some of this directly!

Thin green: Elevation profile. The only variable I’ve taken from the GPS track. It helps to work out where we are on the route and you can see how the climbs and descents affected the other lines. It includes the short ride to and from our accommodation.

Light blue: Social interaction. You’re never alone on a tandem, but we still enjoyed chatting with other riders, or just cruising along with them on the flatter sections.

Dark blue: Clothing dampness. This was affected not only by the morning’s rain but by riding up hill a bit too quickly without shedding layers.

Purple: Hunger. A rough average between myself and Erica as we seemed to get hungry at about the same time on this ride.

Brown: Scenery. Plenty of interest along the route, but some definite highlights including lakes, rivers and architecture.

Red: Morale/confidence. Again an average between the two of us. This was greatly affected by everything else we tracked and some particular events which I’ve marked on the graph.

rough_diamond_in_graphs

Side view of B&M Linetec light bodge-mounted on Carrdice rack

Rear bike lights round-up comparison review thing

As LEDs have become cheaper and brighter in recent years, there’s been a proliferation of bike lights, which makes choosing one difficult. Many of them can be had for under ten pounds but there are also plenty of premium super-bright rear lights available. For those with a particular obsession with gadgets, Garmin have created a light which uses radar to detect approaching cars, adjusting the light and warning you via your GPS display. Sounds fun, but I find it hard to believe it would make me any safer than listening for approaching cars. For deaf cyclists, I imagine it would be very helpful.

My search for the perfect rear light

I try to keep it simple. I need a reliable light that will keep me safe on long rides including audaxes in all kinds of conditions. There are other, more comprehensive bike light comparisons out there. This article is limited to the few (OK, quite a few now I list them) that I’ve tried. So far I’ve not quite found the perfect light for every situation, but I’ve tried some really good ones, each with different drawbacks.

Criteria

My preferences may differ from others, but here’s an explanation of what I’m looking for and my thinking behind it. I tend to carry a rear light on every ride in case I’m delayed by a mechanical problem or just want extra daylight visibility. I do use a dynamo front light for longer rides, but I’ve not got around to rigging a rear light up to this as well. Even if I did, I’m sure if want a spare in case it failed for any reason.

AA/AAA batteries: I always use lights with rechargeable AA or AAA batteries. The main reason is that, in an emergency, spares can be bought anywhere. Pretty much any corner shop or late-night service station will stock AA and AAA, albeit the non-rechargeable kind. I prefer rechargeable batteries (usually Eneloops) as I feel like less of an environmental criminal. Obviously, if I get caught out, I’m not going to put myself at risk and ride illegally, I’ll hold my nose and buy some Duracell. Plenty of USB-rechargeable lithium-ion lights claim to last 20+ hours, which should be enough, but lithium ion batteries tend to wear out after a few years and usually can’t be replaced. If I forget to charge it or find the cell is losing its mojo, I don’t want to discover that on a Welsh mountain pass at 11pm. Sure, I could take a USB charger with me, but it’s quicker and easier to simply swap the batteries. Most of the electronics I have on the bike, including my GPS, takes AA batteries and they’ll typically last well, though this depends on the light. As they’re all the same type, I can carry fewer spares.

Night time visibility: In the UK it’s a legal requirement to have lights and reflectors after dark. A rear light for riding in the dark doesn’t need to be especially bright, but the illuminated area (the height and width of the light itself) should be large or there should be several lights separated by some distance. This can help drivers to judge your position and speed. This is harder with flashing lights, but they are more easily noticed, especially in busy urban environments. So a combination of different lights seems the best approach to me. Also, bright flashing lights can be dazzling to other road users, especially when riding in groups, so any way to reduce this is a good thing.

Daylight visibility: Being seen by road traffic during the day is just as important and there’s some research which shows a reduction in accident rates for bicycles with daytime running lights. These lights are about getting you noticed. Once you’ve been noticed, it should be easy for driver with the benefit of daylight to judge your location and speed. With all that daylight to compete with, a daytime running light should be small and bright, possibly flashing. Many lights include a lens which focuses the light into a narrower cone within which it can be seen over a long distance. However, if used at night, unless these are adjusted carefully, which isn’t always possible, they can be unpleasant for following cyclists and even drivers. Drivers who are part-blinded or infuriated are not much better than those who haven’t seen you.

Smart light with broken clip

Above: broken clip – it looks like the newer models are more robust in this area.

Robustness: Aside from the obvious frustration of having a light fail, longer rides mean a potentially long stretch in the dark without a light if one should fail. The vast majority of rear lights with replaceable batteries have a battery compartment which is kept shut with stiff plastic clips. These are often opened by wedging a coin into a slot and twisting. This bends the clips a little, popping the case open. There are several problems with this. First is that the clips often break, especially in cold weather which can make the plastic brittle.

Secondly, sometimes they’re too loose and the light falls apart when you ride over a bump, dropping half of it in the road, often unnoticed.  CatEye Omni mounted on saddle bag with lens and batteries missingThere are various bodges to work around this, including elastic bands and tape, but they make changing the batteries more of a faff. The better solution is a battery compartment that is closed with a screw.

The other aspect of robustness is waterproofing. When it’s raining you need the light more than ever and I’ve heard plenty of reports of leaky lights. Luckily, all the ones I’ve tried have kept the water out so far but there are numerous reports of otherwise good lights malfunctioning in rain.

Lights I’ve tried

Smart Superflash mounted on seatstay showing tape holding it together.Smart Superflash 0.5W, 2xAAA

http://www.chainreactioncycles.com/smart-superflash-1-2-watt-rear-light/rp-prod56546

A basic and popular light. Two modes, flashing and constant. Above average battery life. Bright enough main LED for daylight use. Can be dazzling. Plastic clips can come undone when bumped. Others have reported water ingress issues. Overal: 6/10

Smart rl321r held in fingers, showing broken clipSmart Rl321r – 2 Red 0.5w Superflash, 2xAAA

http://www.halfords.com/cycling/bike-lights/bike-lights/smart-rl321r-0-5w-0-5w-2-red-0-5w-superflash-leds

Features two very bright LEDs, lots of modes, including a slowly pulsing one which I guess may be less annoying to other riders. Plastic clips broke when opened at about 2 deg C. In the photos of recent models the clips look a bit sturdier, so maybe that has been improved.

Gives a good daylight flash for about ten hours on rechargeables. Overall: 7/10

Mars 1.1 with rubber strapBlackburn Mars 1.1, 2xAAA

http://www.blackburndesign.com/en_eu/mars-1-1-rear.html

Not especially bright, so perhaps not the best daytime choice, but the 3 LEDs offer good all round visibility for longer than average. Haven’t had any trouble with the plastic clips and basic rubber washer, but not really tested this in extreme conditions. Cost well under ten pounds. Overall: 6/10

Two LED light with button between the LEDsMetro flash Dangerzone, 2xAAA

http://www.ebay.co.uk/itm/NEW-MetroFlash-Danger-Zone-Tail-Light-/171708741341

Probably the brightest light that runs on 2 AAAs at the time of writing. Really unpleasant to be behind. Despite the claims on the box (usually for alkaline batteries), I found it barely lasted two hours with rechargeables on constant mode.

Could be good for a busy commute or in rain or fog.

The plastic clips holding the battery compartment shut broke so I used an elastic band to hold it together. Once I forgot to do this and it split apart when I went over a bump losing the light and batteries. The button is easy to press when riding, but can also be accidentally turned on when in a bag or pocket. Overall: 4/10

 

Glowing red stick with two black rubber ends on a dark backgroundFibre flare shorty, 2xAAA

http://fibreflare.com/products/fibre-flare-shorty-red

A rather different design featuring a bar of light with a battery compartment at each end. Can be bent slightly and mounted in all sorts of creative ways and helmets, bags, seat stays, etc. Comes in a few different colours. Not especially bright, but covers more area than most, so may make it easier to locate you at night. However it’s almost useless in daylight. Rechargeable batteries last at least ten hours, more when flashing. Had slight water ingress problems until I smeared some silicon grease under the rubber caps. UPDATE: Bending by an enthusiastic child has stopped the light working. I might be able to fix it. Overall: 7/10

CatEye Omni5 with plastic bracketCateye Omni 5, 2xAAA

http://www.cateye.com/intl/products/detail/TL-LD155-R/

A good all-rounder for about ten pounds. Five moderately bright LEDs and a clear/red plastic body mean it can be seen from every angle. 3 modes, one of which is a bit headache-inducing. Daylight visibility is ok and it runs bright enough on rechargeables when set to flash. The body is rather brittle and can easily fall apart going over a bump, ditching the batteries and half the light on the ground. Overall: 6/10

Side view of B&M Linetec light bodge-mounted on Carrdice rackB&M Linetec senso, 1xAA

http://en.bumm.de/produkte/akku-ruecklicht/toplight-line.html

Probably my favourite rear light. It’s the battery version of a popular dynamo light and can be set to always on or “senso” mode which turns on in the dark if the bike is moving. There’s no flashing mode. When you stop it waits a few minutes before turning off. This prompts helpful people to tell you that you’ve left your light on whenever you park at night, but otherwise it’s a nice feature that means less faff. It’s a large “spatial” light with a wide reflector which glows at night, all of which should make it easy for drivers to work out how far away you are. The light shines evenly across a wide area so is visible from nearly 180 degrees without being dazzling. Daylight visibility is below average, but probably still worth using if you don’t have another light. Amazingly a single rechargeable AA battery will keep it going for over 30 hours; I tested it at home. The main downside is mounting. It has two bolts spaced 80mm or 50mm apart and will fit nicely on most rear racks. If you don’t have a rack there are are various ways to bodge it but, depending on your bike and luggage this may be a showstopper for some. It’s a sensible, grown up light for tourers, commuters or anyone who knows they’ll be riding a fair distance in the dark. Coupled with a small flashing light it is probably the best option. Overall: 9/10

Rear light with silver body, red bezel and clear front with rubber strap behindBlackburn Local 20, 2xAA

http://www.blackburndesign.com/en_eu/local-20-rear-light.html

This is a recent purchase that I’ve only used on a couple of rides so far. However it seems sturdy in spite of the common plastic clips closure. It’s a bit bigger and heavier than most rear lights, but can still be mounted on a seatpost or bag. In a home test I got more than 24 hours of constant light out of it before it started to look a bit dim. There are also two flashing modes. Daylight visibility is poor due to the lack of a focusing lens leaving two tiny pin pricks of light that seem to get lost. At night however, the whole thing glows beautifully and is visible from a wide range of angles without being too dazzling. It fills a similar role to the B&M Linetec above, but is more compact. I may keep it handy as a backup light or place to store spare AA batteries in my bag. The RRP is about twenty pounds, but it can be found for less. UPDATE: This light fell apart, presumably when going over a bump, resulting in the light and batteries being lost. I think this was partly due to the angle it was at on a loose bag which might have created a “whiplash” effect adding to the downwards force. On my Carradice saddlebag it has been fine for a year or so. As they’re only ten pounds I’ve bought another. Even so I’m dropping the score by a point. Overall: 8/10 Overall: 7/10

Conclusion

As you can see there are many decent lights out there so it’s all a bit different horses for stroking different blokes’ cats. Or something.

For any long ride I will have my B&M Linetec with me and I’m considering getting another for my commuting hybrid. I would also usually take the Smart Rl321r hooked onto my Carradice bag for daylight visibility or rain or fog. I also often pack the Mars 1.1 as a spare inside the bag, if only as a place to store spare AAA batteries for the Smart Rl321r. If I was travelling light after dark and only had space for one small light, I’d take the Local 20.

Tandem handlebars from flat to drop

Tandem with straight bars

The original handlebar set up.

In the last couple of years we’ve started using our tandem for longer rides and are looking at ways to make the bike more comfortable. We did some touring on it years ago, but now we’re riding 200k+ audaxes, where comfort is arguably even more important than when touring due to the time limit and limited time off the bike. As the stoker Erica tells me she’s very comfortable since we had a bike fit and she switched to a wide bullhorn bar with thick tape. With no need to steer she can easily change position on the bars or even let go or hold the saddle for a change when we’re going slowly. The tandem typically gives a very nice ride due to the long wheelbase, steel frame and 35mm tyres.

Flat bar issues

However, on my flat bars I’ve been stuck with a single hand position for an all day ride, which has caused some aches, particularly at the back of my neck and shoulders. I’ve never been able to ride no-handed and I don’t think it would be at all safe to do so on a tandem, as the stoker can shift their weight unexpectedly.

I don’t get this pain on my drop bar road bike even on much longer rides, so I wondered what the difference was. My current theory is the space between my hands. On the road bike this is at most 40cm, but on the tandem it’s always 50cm. I think this means my upper back has to work harder to bridge the gap and support my weight when leaning forward on the tandem. The usual advice for this is:-

Handlebars should be shoulder width apart (measured from acromion to acromion across the anterior chest) and comfortable.  Handlebars that are too wide may cause excessive trapezius and rhomboid strain leading to muscle spasm and pain.
roadcycling.com on Neck and Back pain

The other possibility is that the tandem simply takes more arm and shoulder strength to manoeuvre, but I think narrower bars with more hand positions are worth a try.

Drop bar conversion

With that in mind I’ve picked a drop bar that is 42cm wide. This should give me enough leverage for the heavier bike and plenty of narrower hand positions. It has a very shallow drop and short reach as I figured it wouldn’t make a huge difference to aerodynamics on a tandem. If I tuck down lower at the front it means I won’t be shielding the stoker from the wind quite so well. I imagine there are still gains there, but I assume a 20mm lower front position won’t be noticeably faster.

Hubbub adapter partly pushed into the Rohloff

Hubbub adapter partly pushed into the Rohloff

But there’s an additional complication to this set up. The tandem has a rohloff speedhub which normally needs a twist shifter. This is tricky to get onto drop bars. There have been quite a few ideas to make the rohloff work with drop bars, some of them rather expensive and fiddly to set up. I’ve gone for one of the simplest and cheapest options by putting it on an extension to the left-hand end of the drop. The extension is called a hubbub and has an expanding end so you can tighten it up inside the handlebar with an allen key. The shifter then clamps onto this as it would the bar. Having to reach down for this is another reason I wanted a small drop on the bars. I want to make it as easy as possible to change hand positions. I tried out Thorn’s Mercury a few years ago which, if I remember correctly, had a split bar with a twist shifter on the tops, near the stem clamp. The problem for me was that I don’t spend much time in the tops, preferring the hoods or drops. So reaching up for the shifter took some effort and I was putting a lot of weight on one arm to do it. Even on a short test ride this got annoying; on a longer one I guess it could actually become painful.

Putting it all together

Cutting a bit off the end of the bars so it's not so far back.

Cutting a bit off the end of the bars so it’s not so far back.

I spent a little under a hundred pounds on new kit, including Cinelli drop bars, Tektro RL520 Aero V Brake Levers, the hubbub adapter and SRAM bar tape. Luckily I already had a suitable stem leftover from a previous bike fit tweak to my wife’s hybrid. I held these up to the bike before fitting and did some rough calculations which confirmed that the hoods would be no further away from the saddle than on my audax bike. The bars were a little higher with respect to the saddle, but the only downside to this would be a slight aerodynamic loss and I could easily move them down later as there were still two 10mm headset spacers under the stem.

Rusty brake/shifter cables

Rusty brake/shifter cables

While I was doing the work I realised that the brake cables were getting a bit rusty, which is not surprising after at least twelve years use in all weathers. So I replaced the cables and outers, which was a bit fiddly but, even with the longer frame of the tandem, it cost less than five pounds. After I’d done this the rear brake seemed to have a lot of resistance in it compared to the front one. I can’t quite remember whether this was always the case, so I checked to see if anything was sticking.

Each part seemed fairly free and I could still get plenty of force through to the rear brake, so I decided it was good enough to try out there road.

I also added a small mirror to the opposite end of the bars though, being further inboard than the previous one, I’m not sure it will be worth it.

Test run

We took the bike out for a twenty km spin with a couple of steep hills. At slow speeds, especially starting off, I didn’t have as much leverage and fine control of the steering with the narrower bars, but once above walking pace they felt natural and I could even climb out of the saddle if I was careful. It was possible to hit my knee on the shifter, but didn’t happen often. What was not so good was that the shifter came loose and started rotating in the bar. The rohloff is quite easy to use, but each change does required a bit of force to get it to click. This soon became impossible without putting two hands on the shifter which was totally impractical and unsafe. So we stopped and found a suitable compromise gear to take us home.

Back in the garage I realised that the hubbub adapter wasn’t gripping the inside of the handlebar properly. I thought I’d got it as tight as possible with the shorter end of the allen key, the long end being required to reach down inside the adapter to the nut. If I had to epoxy the thing in it rather defeats the point of the hubbub adapter over a lump of wood or pipe. Online advice suggested that it just needed more torque, so I hunted around the garage for something to extend the small allen key lever. A bit of metal pipe would’ve done, but I was lucky to find an old suspension seat post. Miraculously, this is adjusted with an allen key in the bottom of the same size as the hubbub – 6mm. With a foot-long lever I could apply much more torque and it now shows no signs of moving. We’ve done a three-hour ride since and I’m confident enough to give it a go on a 220km audax at the weekend, which will be a real test of comfort.

New_bars

Finished and cleaned.

EDIT: After riding a 200 and 300km events (including one 1 in 4 climb) with this set up, I’m mostly pleased with it, but getting out of the saddle on a climb can result in  bashing my knee on the shifter unless I’m really careful. A sharp corner of it actually cut my knee on two occasions, so I may think about putting some tape over it or just stay seated.

Miele washing machine repair

This is following up on my disappointing experience of trying to get our four and a bit year old Miele W5740 washing machine repaired. When I got back to Miele, they offered to send an engineer for a free inspection and let us know what they could then offer us. Nothing to lose, I thought.

I wasn’t sure what they might offer to do and how much they’d charge, but I was weighing possible costs against that of a new machine. I’d previous looked up the cost of the failed part and service, which would be at least £417. Without any further guarantee, that doesn’t compare well to a new machine.

For example, John Lewis sell the Indesit XWD71452W which gets good reviews, for £209. Even if it failed just outside the 2 year guarantee, its cost per year would be around £100.

If the Miele W5740 proves uneconomical to repair it will have cost £203.83 per year (£958/4.7). If the £417 repair worked and it lasted a total of 20 years as implied by Miele’s website, then the cost per year comes down to £68.75, but all the risk of any further repair or replacement is on me, the customer. Consumer rights law suggests that you should be able to insist a machine lasts for a reasonable length of time, based mostly on the cost of the machine. However, enforcing this might require a trip to the small claims court, which isn’t expensive, unless you end up paying the company’s legal costs.

We’d already decided that I’d rather spend less than the full £417 repair cost on a new machine with some kind of guarantee, possibly selling the old Miele one for parts on eBay.

As it turned out the Miele engineer took a look and confirmed our suspicions that the main board had gone. He also said he’d phone his boss, saying we’d likely get a better deal than asking customer services. They offered to provide the £300 part which had broken for free and only charge us the £117 call out charge. Not a great deal, given there’s no guarantee it will work for any length of time, but less hassle than buying a new machine, so we went for it.

In future I won’t be taking much notice of how long a company’s marketing material suggests their products will last. Instead I’ll be looking at long-term reviews and how long the guarantee is.

Life span of a Miele washing machine

I’ve long been annoyed by throwaway culture and things not being built to last or made easy to maintain. So I’ve been trying to buy products which buck this trend and last a decent length of time, or are at least economically repairable.

I’ve been pleasantly surprised in two recent cases. Our Hope Vision One light suffered from water ingress and Hope repaired it free of charge, even though it was bought some 7 years ago for around £70. More recently the 10-year old Rohloff SPEEDHUB on our tandem came apart when the nuts holding the cap on mysteriously undid themselves on a ride. We sent it back to SJS Cycles expecting a bill, but were told that Rohloff had paid for the repair as goodwill. We got it back a couple of days later with a new gasket and thread-locked screws. I recently heard that Brompton did a free repair of an aging frame which had been taken off-road and cracked the rear triangle. Not only did they fix it free of charge, they replaced the worn chain and brakes too. I’ve experienced similar good service from Carradice. The idea that products should last well or be maintained by the manufacturer is not limited to cycling brands; Patagonia encourage customers to repair their clothing or will even do it for you (that might be US-only).

German appliance manufacturer Miele have been trying to market themselves as a reliable brand, boasting that their washing machines are tested for “20 years equivalent usage”. That strongly implies the machine should last better than most. On this basis we bought a Miele W5740 for the princely sum of £958.98 back in 2011. As you can probably guess from the fact I’m writing this, ours didn’t last that long. In fact, after 4 years and 8 months of moderate usage – much less than the 5 washes a week they test for – it refused to turn on. On closer inspection by a local repairman, it seems a chip on the main board had exploded, along with an adjacent resistor.

Miele W5740 exploded chip

Miele W5740 main board with exploded chip and resistor.

We got in touch with the retailer and Miele, explaining the situation. The Co-Op Electrical said some nice things to give the impression that they cared, which sounded rather insincere when they added.

As the item is out of its guarantee period, at this stage you would have to pay and arrange for an engineer call yourself and upon providing evidence that the appliance is faulty due to an inherent manufacturing defect, then we will gladly reimburse you this loss you have suffered getting an item repaired, upon supply of the invoice. This is in line with the Sales of Goods Act 1979 (amended) because the appliance is more than 6 months old the onus unfortunately falls onto the consumer to prove that the fault is inherent. If the engineer cannot confirm that the appliance was faulty at the time of purchase then we will not be able to cover the cost of the call out and repair. I must advise that for us to be able to reimburse any cost to you there must be proof supplied of an inherent manufacturing fault, if this is not supplied or if a report is supplied that remains ambiguous we will not be in a position to assist you further. The report supplied to us must state: what the fault is, what has caused the fault, what is needed to rectify the fault and how much a repair of the item would be. Failure to supply a report with this information will mean we cannot assist you.

Miele themselves were similarly kind, caring and utterly unhelpful.

I can confirm that the quality of the after sales support offered to our customers is of paramount importance to the Miele organisation. Whilst we make every effort to ensure that all of our components are of the highest quality, we cannot guarantee that breakdowns will not occur in individual instances, as even with careful use and regular operator maintenance, parts can fail or wear out from time to time.  However, we are confident that following the repair to your appliance, your machine should give you many years of satisfactory, trouble-free service.

We are constantly reviewing and updating our processes and procedures to offer the best service to our customers and as a result your comments will be used as part of our ongoing service auditing programme.

We wouldn’t be able to do this repair free of charge due to the age of the appliance.

I’ve replied to them with the following:

Apologies taking so long getting back to you.

I’ve pasted the text of my receipt from the Co-Op below. Here is my address and the serial number of the machine as requested.

For your reference I’ve also included a photo of the exploded chip.

You say “the quality of the after sales support offered to our customers is of paramount importance to the Miele organisation”. In the light of my recent experience, I find those nice words rather hollow. Your website boasts that your machines are tested for “20 years equivalent usage”. Failing in less than five years is not something a customer should have to pay for. It seems you’re unwilling to stand by your bold claims of quality and reliability.

I’m also not impressed by your confidence that, once repaired the machine “should give you many years of satisfactory, trouble-free service”. This presumably does not constitute any kind of guarantee. So if some part of the machine was to fail in the next few years, would I be looking at another sizable bill to repair it?

I’d be interested in what you can offer me in terms of repair, how much it would cost me and how long you’d be willing to guarantee the machine after that.

A new mainboard is about £300 and Miele’s callout charge alone is £117. So if it’s a quick job, I’m looking at well over £400 to fix a machine which has already proven itself to be unreliable, paid to a company who, it seems, are unwilling to stand by their bold claims of quality and reliability. If it fails again in a year’s time I have no confidence that Miele would do the right thing and fix or replace it for free. Miele appliances are usually more expensive than other machines of equivalent function. They certainly feel solid and well-made, but if they fail outside of guarantee it seems you’re no better off than with a cheap and cheerful brand.

Companies looking to establish a reputation as honest and reliable should treat repairs as an opportunity to show how much they care about their customers or at least the duty of a responsible manufacturer. Too often, in spite of boilerplate appeasements, repairing faulty products is considered an additional revenue stream.

I’m hopeful that Miele will see the sense in maintaining their “reliable” brand and differentiation from the competition, but time will tell whether they’re a Brompton or a Volkswagen.

EDIT: See follow-up: Miele repair.

Script for Garmin eTrex 30 barometer

If you use Strava and a Garmin eTrex 30 and care about that the climbing figures you get are accurate, then you may be disappointed that Strava is ignoring the barometric data the eTrex 30 gives you and working it out roughly by itself, presumably through the average elevation of large map tiles or similar.

There is a simple fix for this, as pointed out by tubbycyclist of yacf:-

A generic “with barometer” device is provided to force the system to use the elevation data from TCX and GPX file types. One only needs to add “with barometer” to the end of the creator name.

Easy enough with a text editor, but a bit of a faff to do every time you upload.

So I’ve created some scripts to make it easier. My idea is that these scripts will be kept in the root directory of the GPS so that they’re always accessible at the same relative path to the file(s) they are editing. There are different scripts for different operating systems, so they should work even on unfamiliar computers. So when travelling and using other people’s computers, they should still work.

Windows

This Windows Script uses PowerShell 1.0, so should work on  Windows XP SP2 or later. I’ve tested it on Windows 8 and 10. It’s the first bit of PowerShell I’ve written, so any comments are welcome.

Opening up a powershell window and running this script isn’t a lot quicker than editing the file manually, so I’ve also created a clickable shortcut to the script as described here. This avoids having to change the script execution policy on the machine, making an exception for this script only.

  • In Windows Explorer, create a new shortcut in the root folder of the GPS device (this might be E:\ or F:\).
  • Right-click on the new shortcut, and choose “Properties”.
  • Change the shortcut’s Target to the following:
    %SystemRoot%\system32\WindowsPowerShell\v1.0\powershell.exe -ExecutionPolicy Bypass -File "add_barometer.ps1" 
    
  • You may also want to name the shortcut something like “windows_add_barometer.ps1.link”.
  • Click “OK”.

Linux

This Linux script uses generic linux shell commands and has been tested on Ubuntu 14.04 and 16.04. It can be run from the command line with: sh linux_add_barometer.sh or possibly by double-clicking the file if you use one of the methods described here. I’m certainly not a bash expert, so again, your comments are welcome.

Mac

I’m told that it’s possible to run *nix shell scripts under Mac OS, so the Linux solution may work with some tweaking. I’ll update this post when I’ve tried it.