I had planned today for quite a while. I wanted to fit in the maximum amount of exercise, because I am a slave to my stupid Garmin’s opinion about my training status. IT has been saying “recovery” for nearly a week, and I have to make it say “Productive”, which I succeeded in doing yesterday.
I’m never quite sure why these things have such a hold, given I’m not even training for anything in particular. I have however discovered that the Concept 2 website lets owners of PM5 rowing machines upload “verified” times, and rank them against every other user in the world. It also allows rankings to be filtered by age, gender, location and weight. So I’m pretty much hooked on a wide variety of virtual competitions with people I don’t know, supported by various bits of tech.
Unfortunately, rowing and Garmin watches have some way to go. I bought the Forerunner 645 Music, mainly because it was half price. I then discovered the reason it was half price is that it’s the obsolete model, and it does have quite a few glitches. It’s a great watch for running, and for heart rate/fitness monitoring on bikes or runs – that is kind of its target market. It added on support for stroke rates on rowing machines, which enables me to synch the Concept2 Erg Data app to it. Unfortunately, it is not capable of detecting heart rate on wrists when rowing, which is somewhat odd. It will regularly give me a heart rate of 44 when I’m doing pyramid sprints at a split of 2:00 and a stroke rate of 30, which is not possible (unless of course I am a replicant after all). I therefore use a Garmin chest strap when rowing. This works well, as it means the native Garmin activity tracker picks up the full heart rate effect, and gives me the fitness credits, whilst the ErgData app I have integrated with it gets all the detail, and loads it to the Concept2 site. The fact they duplicate on the Garmin Connect app interface looks a little silly, but doesn’t seem to have any effect on the metrics.
So that’s the good news. It all works, I have my routine all worked out. I am steadily progressing up my fantasy rowing ranking, and day dreaming about the mere 1,020 extra metres I need to make to equal the lady from Bristol City Rowing Club.
To use the software development analogy, my Minimum Viable Product is deployed, and I’m just working through the increments in Production. I will obviously need to add in a whole lotta extra stuff like weights, other cross training and diet if I were to have any hope of progressing much further.
So this morning, I decided to fit in that little bit extra. I was going to drop the kids at school and preschool, then go for a quick run, while I waited to pick one of them up again for a blood test. Then I realised I might have just enough time to fit in a rowing workout before preschool pickup at 12. I was honestly super-excited about making this work.
Then I made a mistake. Despite being wholly happy with my set-up, I decided to try out the full capability of my watch, and see if the music playback would work as well. So I brought my bluetooth earbuds with me on my run, having charged them for hours yesterday and checked the status. I had already checked the playlist was still loaded onto the watch. Everything went great. I dropped kids, went for my run, zoomed in and out of school, drove to the hospital, dropped kiddo back at school, and headed home to jump on the machine. Only whilst I was running, I had been getting bored of the downloaded songs. So when I got home, I thought I’d quickly change them. The watch can only hold about 50 songs at a time, meaning you have to remove one playlist before you add another (unless they’re all really tiny lists, but Spotify compiled ones default to 50). I removed the playlist, and tried to add the desired one. At this point, the watch warned me that I can’t synch playlists unless battery status is over 50%, which obviously it wasn’t after the earlier run. Fine, I thought, can deal with that, I can bin the watch Bluetooth and just hook it up to my phone instead, which also has Spotify. Only for some reason, my phone cannot find the headphones. The low battery warning comes on. I give up entirely on the stupid headphones, and revert to my trusty Bose speaker paired to my phone, which always works quite seamlessly. I’ll just risk pissing off the neighbour, but given I also have three kids yelling every afternoon, a bit of Whitney seems like a pretty minor issue.
I’m sitting on the machine. I’ve put on the HR chestband, and checked it is connected to the watch. I’ve linked the Concept 2 to the phone app, and it’s ready to go. I’ve successfully ignored the firmware update (a previous fail taught me that not hitting “ok” will stop the app recording the workout); I really must do it one day, but it requires an actual USB cable connected to my laptop, which seems a bit…2006.
I am ten minutes in, and doing quite well on the projected end distance (I always do a 30 minute timed workout, so I need to keep pushing the distance to move up the centiles). I am getting to that struggling, breathless point of needing a boost, and need the music louder over the noise of the flywheel. I can’t adjust the speaker volume without losing time. The excellent Google voice volume control comes to the rescue, and Whitney Houston is blaring out of the spare room in no time. After all, no neighbour can possibly mind How Will I Know. Great syncopation. Phew. Breathless, sweaty mess now, and really need to know this is worth it from a training point of view.
I look at my watch. It says my heart rate is 78. The chest strap has obviously stopped connecting to the watch. This means that Garmin now thinks I’ve done nothing, because all of its metrics are based on heartrate zones. Might as well have been making dinner. Still, I finish the workout and get the satisfaction of beating my previous distance by about 10 metres, probably because I’m super annoyed and thrash the wheel. Sure enough, the evil Garmin Connect tells me I’m in “Recovery”. I think the watch face will be in recovery from my rage pretty soon.
So somehow I took a 100% working process, and turned it into a total mess that didn’t achieve a key objective, with a whole lot of time wasted on dead ends. The issue is partly the approach I took, and partly the result of wider issues within the tech industry, both of which I find interesting. First of all, let’s look at the process mistakes:
- I tried to fit too many new elements into a limited amount of time – I had already tried out the watch music separately, I didn’t need to add it into the rest of the tech sequence.
- I failed to prioritise and focus solely on the important elements – the heart rate monitor was the only key piece of tech here, and I suspect the reason it failed was that I was initially pairing the bluetooth from both the HRM and the wireless buds to the watch, and I suspect one of the pieces of hardware won’t pair 1:M and won’t re-pair.
- I was overconfident on the basis of early solid results – just because the basics worked, I had no reason to chuck multiple extra points of failure (battery life, playlist functionality, bluetooth pairing) into the key part of the plan.
The other thing I then wonder about is the glitches I came across. The battery was my fault, but there are other frequent glitches in apps for suppliers of high quality hardware. The watch for example is an excellent piece of hardware, but I can end up with stupid issues with the app, where it suddenly loses data.
Bose is a fantastic maker of speakers, but on the rare occasions I do use their app to pair to a new device, it can be super flaky. It’s possible the bluetooth itself is the issue, but it seems more like a software issue. Concept2 is pretty old school in its use of tech, and I’ve found that the app always needs to be foregrounded on the phone screen, otherwise it will hibernate. This is why I have started making more extensive use of Google voice commands, which enable me to control the music without losing the app.
That leads me on to what the problem is – Google’s total absence of glitches. Nothing on Android ever fails. It manages my cooking times, my playlists, hands free dialling in the car, my nav, my whole life. The reason for that is that if you’re one of the best software developers in the world, you will go and work at the FANGs (Facebook, Amazon, Netflix, Google). You’ll probably swap around a bit between them. You might even spend some time at Microsoft, laughing at Word tables or OneDrive, and then give up because it seems eternally unfixable. What you won’t do, unless you get fired for not really being quite so top-drawer after all, is go and work at…Garmin, or Concept 2, or whichever hideous outfit makes the Head Candy bluetooth speakers – they work about as often as a Jaguar XJS. These are all small players, with single use apps. They cannot compete for the best developers. They can just hook up APIs to Android, develop off a standard template, get a few testers from Wipro, maybe.
Back in the 2000s, it felt different, even though maybe it wasn’t. The big players weren’t quite so overwhelmingly dominant. You could set up a travel website from scratch, and have some great developers deliver fantastic projects. I loved the newness of it all, the way I’d be sitting there feeling like the least intelligent person in the room, bouncing ideas around with the development team. Back in 2003, we were talking about the quality of Business Analysts (guys like me, who at the time were highly qualified experts who could independently define the product, and work with stakeholders and developers to make it happen). The development manager was saying he had a real problem finding high calibre BAs and developers, and kept finding people on the business side who claimed XML was too hard to read, and developers who failed simple coding tests. That decline in quality has only really continued. They are now all, without exception, doing very well for themselves at Facebook and Google. The website we treasured so much got sold, and it’s terrible. They do no UX work on it at all, as far as I can tell, and it’s all just a white label from whichever outfit last bought them.
I often think finance has the same problem, and I wonder how connected that lack of tech talent is with some of the systemic issues we have seen in the industry. To what extent can the staff keep up with the tech required? Aren’t the good ones all in California? If you want to develop exciting tech, you want to be the product. Working for a website meant that tech was the product back in the 2000s, but now, virtually every big consumer company churns out tech, whether software or hardware. When the product is money and alpha, as it almost always is in Financial Services, working in FS Technology can just feel like an ops role. You’re not delivering their flagship product, you’re usually delivering some cost savings, or volume automation, or some random bit of the website. It’s probably still interesting working in high frequency trading, but it’s somewhat niche.
I still like it, and clearly since I’m still busy making the same mistakes, I’m well suited to it. But it’s not dynamic. It doesn’t capture the imagination. People don’t make movies about working in finance, like they did in the 80s. Rather in the same way as Brexit has arguably done to the UK, finance has lost its cultural capital. It was a lot more gradual than the effect of Brexit, but it will be hard to regain. In the 80s, there was in popular films about the City a clear narrative that it was an industry which would reward talent. Working Girl was full of cheesy cliches, but it was quite confident that finance was a meritocracy.
Of course many characters are portrayed as greedy, but many are also often moral. Wall Street may be about insider dealing, but it also makes the world the traders inhabit look impossibly glamorous and desirable. It never attacks the structure or purpose of the industry.
Films about finance now are wholly about its abject failures, chronicling in somewhat documentary form the fall of the various rogue traders, or the fall of Lehman Brothers (the excellent Margin Call ) .
Anyway, the wider questions of the role of finance in society might be a topic for another blog post. Bottom line: Google wins.