My First Marathon

My intention when I revived this blog at the beginning of the year was to write more about the world of software development and delivery. Yet I find myself writing about my relatively recently discovered pastime of running for the third consecutive post.

I’m not one for applying labels to people (that’s another blog post in itself) however were I to label myself, “runner” would be one of the last labels I would think of. At the beginning of last year, I couldn’t run to catch a train without getting out of breath. I completed a couch 2 5k programme in the interests of improving my fitness and keeping my body weight under control, there was certainly no intention of running further than 5km. Why would I want to do that?

And then I discovered parkrun. One of the things I really like about parkrun is its inclusiveness. At any given parkrun event, you’ll find athletes who run the course in under 18 minutes and they start alongside the casual walker who’s happy to wander around the course in an hour, taking in the scenery and enjoying a social chat with the tail-runner. And there is everybody in between.

At my former home parkrun at Westerfolds Park, I met a lot of social runners who were always pushing the limits of their achievements: working hard to beat their own 5km personal bests and setting goals to run further than ever before and always encouraging others to join them. Most weeks, after our run, there’d be talk of the next big run on the local running calendar and all distances were in the mix from 5km to ultra marathons! It was easy to get caught up in the wave of enthusiasm for these events and this was a part of the reason I ended up pushing my own limits and running longer distances last year, culminating in a half marathon – a distance I never imagined I would run!

“Half marathon” is a terrible name for running 21.1km. I hear runners who’ve worked so hard to get themselves fit enough to complete this distance say things like, “I only did the half”. I am sure I used a similar phrase last year. I don’t know many people who’ve run a half-marathon but it’s no mean feat, I can tell you. When I got home from the event last October, I was so tired I struggled to undo my shoelaces. There’s a lot of hard work that goes into training for a half marathon and anybody who runs the distance has achieved a whole lot just by lining up at the start line.

The “half” part was bothering me at the beginning of the year, though. If I’d run a half, would I be capable of running a “full”? Shortly after I crossed the line last year, I bumped into my Engineering Director and one of the first things he said to me, after “congratulations”, was, “can you imagine feeling this tired and realising that you were only half-way?”. I couldn’t imagine running another kilometre at that juncture. However two of my friends who had run marathons assured me that if I could run 21.1km, with enough training, I could run 42.2! My friend Gary had planted the seed of a thought that I might be able to tackle a marathon as we stood chatting at the start of October’s half but I can’t remember the moment I decided I would give it a shot. When the day came that the entries opened for the 2015 Melbourne Marathon, I signed up and committed myself to taking on the biggest physical challenge I ever imagined putting myself through.

I sat down with my friend Adrian one lunchtime and he put together a training plan for me: 23 weeks of running 45-60km per week. I was averaging about 20km per week at the beginning of the year, so I clearly needed to step it up but the increases were incremental and seemed utterly achievable. It’s good to break goals down into manageable chunks!

A number of decisions along the way to the marathon seemed like taking the obvious option at the time although they’re not obvious to me now (such as the decision to enter the thing in the first place). When the time came for me to do my first long training run, a half-marathon, I decided to run four (and a bit) laps of Westerfolds Park, a course that I knew well (and know even better now), and a course that has a whacking great hill! Each hill climb was harder than the last and by the fourth time I wasn’t sure I would be able to run to the top. I went home with a huge sense of achievement that morning but 42.2km seemed a long, long way to go!

A week later, I did the same course in reverse. There are two shorter but perhaps more intensive hill climbs in that direction but I thought a change of direction would keep things more interesting. There was an unexpected benefit of running laps, though. My friend Olivier joined me for two laps. His company (and perhaps a little friendly rivalry) provided good motivation for me and I ended up completing the distance nearly fifteen minutes quicker than I had the previous week. Perhaps I was on to something.

The long runs became the focus of my training and each week I’d return to Westerfolds Park, alternating between clockwise and anticlockwise laps. Each week I’d find myself with great company for a large portion of my run. I had always understood long distance running to be a lonely activity but I could turn up to a car park at seven o’clock on a Sunday morning, before the sun had crept over the horizon, and find that I had friends waiting for me ready to run a few 5km laps before breakfast. Over the next five months I continued to take my long runs around Westerfolds at 7 o’clock on Sunday morning and friends I’d met through parkrun joined me, kept me company and kept me going. Thank you to Alison, Barney (who coined the terms “Lapsterfolds” and “Lapsterfoldians”), Chris, Dougall, Elisa, Gary, Kerryn, Lee, Martin, Matt, Narelle (who also went on to run the marathon), Nicole, Olivier, Rohan, Simon, Scott S, Scott T, Tim and Wendy (and anyone I’ve inadvertently missed).

Aside from my Lapsterfoldian endeavours, I would regularly run before work with Adrian (until he got himself injured), Natalia, Ronja and Peter. These people, too, rock! Indeed, I ran very few of my training kilometres solo.

My running buddies really helped me complete my training and I’m very grateful to each of them.

I ran my last couple of long runs away from Westerfolds, since the Melbourne Marathon course is predominantly a flat one. The first I ran on my own along Merri Creek and the Yarra River down to the City and then around Albert Park Lake down to St Kilda Beach, where I met Kirsty and our kids for breakfast. It was great to see them after a three hour solo run, I can tell you! The other I ran with Scott T out on the Marathon course.

Twenty three weeks seemed like an eternity at the start of the training programme, but it came around quickly and before I knew it I was on my bike heading down to Melbourne Olympic Park for my first marathon (public transport isn’t at its best at that time on a Sunday morning). I bumped into Barney and Simon near the start line and chatting with them really helped me relax. I also managed to find Narelle in the heaving crowd at the start to wish her good luck. Somebody sang the national anthem over the public address system before the starting gun sounded. The atmosphere was sensational. It took a little while to get moving, as large crowds tend to. I crossed the starting line about two minutes after the first starters and kept my eye on the bouncing yellow balloons attached to one of the four-hour pacers: it was my aim to finish in front of these balloons! It took me about 2.5km to catch the pacers and I ran with them for about 5km. As we headed up through Albert Park I became conscious that I wasn’t comfortable with my rhythm and I started to speed up a little, leaving the pacers behind. Soon after I’d broken away from that pack and found some space on a still very crowded course one of my shoelaces came undone. I’d run hundreds of kilometres in training and never had my doubly-tied shoelaces come undone; I had to stop!

I hopped over the low chain fence to the left of Lakeside Drive and tied my shoelace securely before getting back up to speed and hopping back across the chain. Just as I landed back on the road I heard an almighty bang behind me. I turned around to see a pair of sunglasses on the tarmac. The runner who picked them up said that they’d been knocked off his head by a stray golf ball!

As I exited Albert Park, I saw the lead athletes from the 21.1km race entering: these folks had started an hour after me and were only 5km behind. I couldn’t sprint as fast as their half-marathon velocity!

There was a very mild breeze as we ran the coastal section of the course, I’d been warned that the wind along there would make it tough, but I got lucky and it was pleasant and cooling. I checked my watch as I passed the 21.1km mark: 1:55, which was quicker than last year’s time but crucially I didn’t feel anywhere near as I had twelve months previously. The training was paying off!

Around 30km in I was heading back up Fitzroy St in St Kilda. As we headed down the street earlier I’d heard another runner comment how hard it was to climb back up the street. I’d not really noticed that it was downhill on the way out but his words echoed in my ears on the way back and I tried to ignore the fact that it was a gentle climb. The next thing, I spotted Kirsty in the crowd with Eamonn and Dara. The sight of them gave me a very welcome boost, as would the drink and the jelly beans they handed me. Shortly afterwards I was heading north back up St Kilda Rd full of energy. I smiled as I saw the 17km flag for the half-marathon event… I recalled how exhausted I felt the last time I saw that. I saw follow Lapsterfoldian Martin spectating (having blitzed the 10km event); seeing familiar faces along the way was surprisingly refreshing for the spirits!

The next familiar face I would see was Scott T. He was entered into the race (which happened to be on his birthday) but had to pull out last minute due to sickness, I later learned. He was out cheering on his wife Iwona, who was running in the 21.1km event, as well as any parkrunner or Westerfoldian he saw along the way. I wished him a happy birthday and continued on my way.

As I ran around the Arts Centre, 35km in, I felt my pace really start to drop. I’d be taking on honey as a DIY energy gel every half-an-hour but 3 hours and 15 minutes into the run, I was really flagging. This was the furthest I had ever run (my longest training run was 34km and at a much slower pace) and I was now into the unknown zone. I reached for the bag of jelly beans Kirsty had handed me earlier, ripped the corner off with my teeth and popped a couple into my mouth. I imagined that they gave me an immediate energy boost and pushed hard to regain my pace. The last seven kilometres of the course are tough physically and mentally as you come so close to the finish line only to be guided back down around to Royal Botanic Gardens and to cover the top section of St Kilda Rd. Again. It was along this section I saw quite a number of runners fall by the wayside to be treated by medics. This was a sorry sight and made it hard to focus.

I’d covered this section in my reconnaissance mission with Scott a couple of weeks earlier and was prepared for last few kilometres. There’s a bit of a gradient as you head around “The Tan” and somebody was holding a sign saying, “you own this hill”. “This isn’t a hill”, I thought; having climbed to The Manor House in Westerfolds Park up to seven times in my training runs, going up steeper hills even when tired was manageable. I was starting to pass people once again!

I bumped into Scott again along Birdwood Avenue and he ran with me for a little while. He confirmed that I was nearly there, that I was still ahead of the four-hour pacer group and that it was mostly downhill to The ‘G. This gave me another boost and I managed to pick up the pace a little more. The Sun had started to break through and after three-and-a-half hours of running, I was getting quite thirsty. I’d been sipping water along the way but now I was gulping down the supplies I’d carried with me all the way. I stopped at a water station on the final section up St Kilda Rd to guzzle down a cup of the sports drink they were handing out and then I was ready to push hard for the finish. The crowds at Federation Square were cheering loudly and that made me smile, just in time for a photographer to get a shot of me opposite Flinders St Station.

The last kilometre down Batman Avenue is downhill, and my legs felt like they were on autopilot, a stark contrast to the last kilometre of pretty much all of my training runs. The MCG is in sight. I was going to finish a marathon! As we entered through a tunnel and there was an almighty roar… another energy boost! I looked out for my friends and family in the crowd but there was this strange void on the lap inside the stadium between the mouth of the tunnel and the finish line where most of the spectators had gathered. The first person I spotted was Narelle’s husband, there with his camera (a familiar sight to my parkrunning friends)! I gave him a wave and then I saw the clock above the finish line, it started with “3:57” and I knew if I kept going, not only would I have run 42.2km, I would have done so in under four hours and that would be the icing on the cake. There is a video of me crossing the line and in it you can see just how overjoyed I was with this.

It’s still sinking in that in February last year I went for my first run and in October this year I ran a flipping marathon!

Two weeks have passed since then and I’ve been letting my legs recover. There was some muscle soreness for the first couple of days but it wasn’t anywhere near as severe as I expected. I felt really fit for the first week and went for a swim and cycled lots. The second week I felt really lethargic and did next to nothing. I jogged around parkrun both weekends with Dara in the pram, just to keep the legs moving, but it’ll be another week or so before I risk going for a run. Going from 60+km per week to nothing is very strange. I’ve found myself feeling grumpy (more so than usual) and lazy but still as hungry! I imagine Kirsty will be kicking me out of the house with my running gear before long to get the endorphins flowing again!

I’ve been asked a lot when the next marathon will be. I don’t know. 23 weeks, 3 hours, 57 minutes and 48 seconds is a lot of time out of family life and I don’t really want to invest that kind of time in another marathon. Kirsty breathed an audible sigh of relief when I got the rejection email from the London Marathon for 2016 (it would have been absolutely great to run alongside my “little” brother, but it wasn’t to be this year). Having actually enjoyed the experience this year, I’m sure there’s another marathon in me but just not yet! I’m very happy to stick to some shorter runs and spending more time with the three very special people who supported me through this wonderful experience. Thank you, Kirsty, Eamonn and Dara; I love you and I could not have done it without you.

I could not have run a mile without these special people in my life

Coburg parkrun

I haven’t looked back since I ran my first parkrun last June. You may remember I mentioned parkrun once or twice in my year of running. It gets me out of bed of a Saturday morning (hence encouraging me not to over-indulge after work on a Friday), it has helped me improve my running and I’ve made some good friends through it.

Most of my parkruns have been at Westerfolds parkrun, with a few tourist runs. Westerfolds Park is beautiful, but it is a bit of a trek from where we live. In fact, heading to parkrun is about the only time I use our car these days.

After a pre-run briefing last month, the local Territory Director mentioned that he was looking to form a parkrun in my home suburb of Coburg. We got talking after that morning’s run and from there started planning Coburg parkrun, which I am pleased to say will launch on 16 May 2015!

The official webpage went up today and it was a bitter-sweet moment when I switched my “Home run” from Westerfolds to Coburg. I shall miss my regular Saturday morning run with friends there (but look forward to being a tourist in future). That said, I’m delighted to be able to give something back to parkrun. It’s a superb global community, mostly run by volunteers, who provide a social way to enjoy keeping fit and healthy. I’m looking forward providing Coburg with its own parkrun and seeing it grow as Westerfolds has grown.

If it’s your thing, you can follow Coburg parkrun on Facebook, Google+, Instagram, Strava or Twitter. Perhaps I’ll see you there for a run if you’re in the area?

Thanks for your support!

My year of running

Today, I ran as part of a Corporate Triathlon relay team with my amazing colleagues. Had you told me a year ago that I would be doing this, I’m not sure I would have believed you. This is the story of how I got there…

# February

I’d never heard of “Couch to 5K” before and then I heard a few people talk about it in different contexts. I was on a tram home from work when I looked it up and wondered whether I’d be able to do it. I don’t think I’d run more than about 100m in one go before; since my school days I have gravitated away from the sports field and towards the computer lab. Yet, I’d lost some weight at the beginning of the year through being more selective with my diet and I was both keen to keep that weight off and to do more exercise. Eamonn is a very energetic lad and keeping up with him around the local parks would often leave me breathless. I downloaded a Couch to 5K app, and told Kirsty I was going to give it a shot. She didn’t laugh. That night, armed with some tunes and an iPhone app, I set off towards Merri Creek on my first jog. I was out-of-breath and ready to stop after a very short period, but just then the app told me to walk. It kept me going. After about a half-an-hour and 2 km, I returned home out-of-breath and sweating profusely but felt like I had started something…

# March

Having completed a week or so of Couch to 5K, I bought myself some running shoes. I told my brother about my adventures and he recommended I use Endomondo to track my runs. Being a data nerd and believing that you can’t improve what you can’t measure, Endomondo appealed to me. It also gave me regular feedback on a run as to how far I’d travelled and at what pace. By the end of March, I’m able to do 4.29 km in 33m:41s. Nearly there! I’ve also switched from running in the evening to preferring early morning runs.

# April

Towards the end of the Couch to 5K I was still doing just four-point-something kilometres in a session, never quite reaching the target. Rather than get frustrated by this, I just kept running past the end of the programme. On 8 April I did an extra lap of the local high school grounds to clock up 5.18 km and felt pretty happy. I completed the distance twice more that week to prove it wasn’t a fluke. The following week, I clocked up 6 km in about the same time I’d run my first 5 km. Not speedy, but getting faster! On Easter Monday I headed out for an early morning run before Kirsty and Eamonn were awake. I couldn’t find my earphones and decided that rather than wake them up tearing the house apart to find the earphones, I’d try running without them. I’d heard that people run better without music. All I could hear as I ran along my usual route was the wheezing of an old bloke who’d overindulged over the long weekend. It was horrible and I vowed never to run without music again.

For most of the Couch to 5K, Kirsty had been on at me to sign up for a run, the Mother’s Day Classic. The MDC includes a 4km and an 8km run around Melbourne’s iconic Tan Track. I can comfortably run 6km, so faced with the choice, I opt to stretch for 8km and book my place on 22 April for the run on 11 May. I start training the next day and the day after that, I rode to work from our home in Coburg for the first time (expect a cycling post sometime this year).

Looking back, having an iPhone app that can get a geek out from behind a computer screen and running 6km from nothing in the space of a couple of months is amazing. I bet Steve Jobs never envisaged that when he launched the device and the App Store!

# May

Cycling to work and back on a Wednesday seems to be helping with my fitness and I’m finding the running a little easier. On my fifth training run I made the 8km distance and I’m happy that I’ll be able to run the MDC without keeling over. There’s the Anderson Street Hill to consider, but how hard can a hill be, eh? It turns out… it is hard!

Race day came around quickly and I’m standing near the start line in Alexandra Gardens. I’d got there very early, because it was my first running event and I had no idea what to expect. I’m wearing my race number (11564) and have some new tunes lined up to listen to on the clockwise circuit. I’m not sure whether I’m nervous or excited. My friend Ross’ advice was echoing in my ear, “There will be marathon runners: don’t try to keep up with them and go at your own pace. And speed up when you get to the hill”. Music is pumping near the start line, and then we’re off! I ran as hard as I could and, having started near the front, people are absolutely whizzing past me. Before I knew it I was halfway up Anderson Street Hill and I feel like every blood vessel in my body is about to explode. I don’t hear what Endomondo says my pace was at the end of the first kilometre, but it started with a five: I’d never heard that before. I took my right earphone out and I can hear lots of fellow runners pounding away at the pavement and I don’t seem to be wheezing the most. I can do this! The second lap was much much harder. I kept as far to the left as I could manage as I climbed Anderson Street for the second time. It felt like Everest and I wanted to give other runners as much space as I could. I was struggling to put one foot in front of the other and was hugely relieved to reach the summit. According to Endomondo’s graph, my pace dropped to 11:33 min/km… I walk faster than that! I was so pleased to reach the finish line three kilometres later.

I only ran once more that month and it wasn’t even 5km.

# June

For the first couple of weeks of June I’d not even put on my running shoes. After completing the Couch to 5km and the MDC I think I’d lost motivation. I went in search of some targets and found The Run Melbourne was in about a month’s time and had a 10 km run. If I can do 8 km, I can do 10 km, right?

I’d registered for parkrun back in May but had never actually attended a run. I decided that it was time I found out what all the fuss was about… it would serve as good training for my next event. There are were a few parkruns around Melbourne but I chose Westerfolds parkrun as my first run. Westerfolds parkrun was a lot more relaxed than the MDC. The organisers were welcoming and friendly and so were the runners. The course is lovely, too: there are beautiful views, flora and fauna. Sometimes I see kangaroos hopping around as I run there. Westerfolds Park has become my favourite place to run in Melbourne. Somebody recently described it to me as “The Bathurst of running”. My weekly parkruns have become the heartbeat of my running schedule and my fellow parkrunners have become good friends.

# July

My friend Gary introduced me to Strava in July. Strava is a lot like Endomondo but has even more data (for nerds like me) and more of my friends are on it. I said before that parkrunners are friendly, they’re also very encouraging; I don’t think I’ve done a run yet where a fellow parkrunner hasn’t given me kudos on Strava. It has become my favourite tracker (but I haven’t locked myself into just one).

The Run Melbourne 10 km was one of my best runs of the year. It was the first time that I’d managed to run consistently under 6 minutes per kilometre and I finished comfortably in under the hour that I’d targeted. What’s more, I was less tired at the end of this 10 km run than I had been after the 8 km one two months earlier. Here is a photo that Kirsty snapped of me at about 7 km. I actually look like I’m enjoying myself!

To keep the motivation going, I signed up for another 10 km run at the Melbourne Marathon Festival and a 14 km run at The City to Sea. More on those later…

# August

My running calendar for August, much like June, looks pretty empty. We had a few things going on in our lives outside of running. Not least the arrival of Eamonn’s little brother Dara.

I kept up with the parkruns, though and managed to do all five in August. Two of them were interesting.

# Westerfolds parkrun # 45 - 23/08/2014

It was a cold morning. Eamonn and his Granny (who’d just arrived from England) came along with me. I brought gloves as my hands had been freezing the previous week. Eamonn decided that he wanted to run with me, so he joined me at the start and ran alongside me until we got back to where Granny was waiting for him, where he went off to play with her. I was still carrying my earphones and couldn’t get them untangled with my gloves on. I decided, despite my earlier vow that I would carry on with them in my hands and not my ears. To my surprise, I wasn’t as wheezy as I had been last time I ran without music. And I didn’t have a cable bobbing around to annoy me. Perhaps this wouldn’t be so bad.

# Westerfolds parkrun # 46 - 30/08/2014

I left the earphones at home for this one. Eamonn stayed home, too (the lure of a new baby brother)! Much to my surprise I beat my personal best around Westerfolds Park. Perhaps my music had been holding me back all this time? I’ve not run with music since (and the next parkrun I knocked nearly two minutes off this week’s time).

# September

With 10 weeks to go to the City2Sea, the organisers announced a new course… a new fifteen kilometre course. I had signed up for a 14 km event. I’d not run more than 11 km before (and hadn’t run more than 5 km for over a month), it was time to start to think seriously about how I was going to get up to that kind of distance. I was still on paternity leave so managed to squeeze in a couple of runs in the week (with much gratitude to my mother-in-law who was staying to help with Kirsty and the boys) and broke through the 11 km barrier.

On the morning I was to return to work, I was awake really, really early. I decided this would be a good opportunity to go for a run and bring myself closer to running 15 km. I had about an hour and a half before I had to get ready for work and decided to use all of it and that’s what I did. That morning I ran 16.5 km, 5 km more than I’d ever run before. I felt pretty good after that, I can tell you!

Since I’d stopped using Endomondo, I’d missed the frequent feedback on my pace, distance and time, so I decided to buy a running watch. I took it for its first run at the end of September and it made a huge difference over carrying a phone with me. On my first run with the watch, I ran 18 km. It was a game-changer. I would normally advocate against reading the comments on the Internet, but if you can read the comments on that last run on Strava, do! My friends Gary, Barney, and Cecilia convinced me that I should be upgrading my Melbourne Marathon 10 km entry to a Half Marathon entry based on that run. I really didn’t think I’d be ready for it.

That weekend we were in Adelaide for a wedding. It was a good opportunity to do my first tourist parkrun, which was a lot of fun. One of the many things I enjoy about parkrun is the way that you can find one near you almost anywhere in the world. I’ve done four tourist parkruns now and they’ve all been enjoyable experiences.

When I got back to Melbourne, it was time for another long run. I decided to see if my friends were right and set off at 06:00 on a Monday morning to see what distance I could cover in two hours. 22.6 km was the answer… I could do a half-marathon… I just did one! I kept a pretty consistent pace too (thanks to the watch). Okay, I would see if I could change my entry.

That week I started what was to become a regular arrangement with some of the folks from work who were also in training for the 10 km event, we started to run from the office down to The Tan, around The Tan Track and back again. We still run that course most Wednesdays before work (back then it was Fridays, but we switched). That was the first time that I’d ever run with anybody and it’s made me a better runner for sure.

# October

On Sunday, 12 October 2014, having upgraded my entry on the Thursday, I ran the 2014 Melbourne Marathon - Half Marathon in 01:56:31. From a guy who’d not run 100m at the beginning of the year, to run over 21 km at all was pretty surprising. To do it in under two hours was, I think, incredible. The exhaustion from such a long run was certainly surpassed by the sense of achievement of completing a half marathon. The cycle home afterwards was hard work, though!

Two weeks later came an even prouder moment… Eamonn took part in his first fun run: 1 km at a much faster pace than I could have managed back in February. He also raised AU$160 for charity. Not bad for a four-year old. I’m not sure that running makes me a better parent, but I hope I’ve set a good example for my boys that exercise is “normal”.

# November

I made another weekly running commitment. Commitments to friends are good motivators to get out there, whatever the weather, and run. Fridays are to be “run to work days”. At the beginning of November, as Melbourne was warming up for Summer, I ran into work with another Coburger. It has become a fairly regular thing since then. Unfortunately towards the end of this first run I started to get some pain in my left shin. The next day I ran at Westerfolds parkrun and the pain came back quickly and just didn’t go away. I read up about “RICE”, Rest, Ice, Compression & Elevation. The City2Sea was only 8 days away and I really wanted to get that medal so I did everything in my power to get my leg ready to run the following Sunday. Compression socks are ace (once you get the things on). Kirsty spent most of the following week trying to talk me out of running but I wanted to get that medal!

I’d been pain-free for a couple of days when the City2Sea came around, so figured it would be fine to run. It was raining very heavily on the morning of the race, so I drove into the city rather than cycle and start the run wet. I had been worried about how hot it would be in Melbourne in November I shouldn’t have been. I lined up alongside my friends from work and set off at a reasonable pace. I bumped into Gary who asked how my leg was: it was fine and my compression socks seemed to be keeping everything in line. About 4 km in, though, I started to feel it again, a niggling sensation in my left shin. By 9 km as I headed up through Albert Park I was in a World of pain. I wondered about stopping but figured I was closer to the end than the start, so I should get to the end and then stop. I finished in a great time: 01:16:30, which I’m not sure I would have done had it not been for the pain!

Unfortunately, the next day I was barely able to walk! I went to a physio and was ordered not to run until the Anterior Tibial Tendinopathy had been treated. And I wanted to do one more run this year!

# December

The physio allowed me to ease back into running gently at the beginning of December. I went for a 1 km run with Eamonn to celebrate and was completely pain-free. That Saturday I did a slow return to my home parkrun. Again, pain-free. I’d wanted to run the 10 km Christmas Run at Albert Park, but the physio advised me to stick to 5 km as a limit for now and so I ran my best-ever 5 km at Emma and Tom’s Christmas Run: 0:24:10.3. I did a couple more runs in Australia before heading to the UK for Christmas.

On Christmas Eve I did my first ever run on British soil. It was really hard work running in such cold, damp conditions with heavy traffic travelling quickly next to a narrow footpath. I returned to our holiday home feeling that I probably would never have taken up running had I stayed living in the UK. It’s hard to tell, of course. I run in cold, damp conditions in Melbourne!

# 2015

This year I’m running regularly again and building up distances back up gradually to avoid a repeat of last year’s injury. I occasionally get niggles from my left knee but they go away with rest, so I’ll continue to keep them in check.

The goal for this year? I have bib number 800 for the Melbourne Marathon! My friend Adrian has helped me form a training plan and now I just have to work through it. Well… a half was a great achievement, but when have I ever done anything by halves?

Part of the problem, or part of the solution?

I’ve decided to return to blogging in 2015 with something I wrote in May 2012. This was written for a publication of one of my former colleagues, “Light Bulb Bites”.


Light Bulb (or “Globe”, as we say in Australia) Bites call on us to be more creative and more innovative. Oft-times, a developer’s first instinct when faced with a technical problem is to reach for an editor and start putting a script together to automate a solution. Jerome demonstrated this with Days!

In his ‘EWD’, “On the cruelty of really teaching computing science”, Edsger Dijkstra wrote:

[…] if we wish to count lines of code, we should not regard them as “lines produced” but as “lines spent”: the current conventional wisdom is so foolish as to book that count on the wrong side of the ledger.

This is a real challenge: is my first instinct counter-productive?

In his 2012 Q1 post-earnings address to the firm our President and CEO highlighted that each of us has to be more productive and that we’ll all be measured on this productivity.

Are calls for us to innovate and create in opposition with the mandate from the top to be productive? Thankfully not. In Jeff Atwood’s recent blog post “Please Don’t Learn to Code” he reminds us:

Software developers tend to be software addicts who think their job is to write code. But it’s not. Their job is to solve problems. Don’t celebrate the creation of code, celebrate the creation of solutions. We have way too many coders addicted to doing just one more line of code already.

When we write code, particularly code for an already-solved problem, we are not really contributing a solution but adding to the problem! Now we have more code that needs to be tested and maintained. Furthermore it must be understood by the next developer who has to solve an adjacent problem.

By creatively reusing an existing solution, not only are we not adding to our colossal codebase, we’re actually saving our company time and effort in testing and maintaining it for years to come. That is real productivity!

We need to look around us and identify the obstacles that stand between us productivity. And not just in development or QA: talk to a member of the trading team or technical support and find out what really slows them down: solve that problem and award yourself an extra pat on the back if you didn’t write a single line of code to do it.

Solutions are more valuable the more people that they help. If you’ve come up with an innovative solution to a problem you or a colleague faced please share it. In a global company if one person faces a problem it’s highly likely that their counterpart in another office is facing the same problem and would welcome your solution. This value is multiplied when you consider that your counterpart in the other office may be working a solution when they could be working on something else.

You can be part of the problem, or part of the solution.

Phil Dunphy and I happen to believe you can be both. The trick is in being just the latter.

++career

Like a (publicly undisclosed) number of others around the globe, I left ITG on Tuesday as the company took measures "to reduce operating costs".

My rather sudden departure came as a surprise to many (it seems) and I’ve received many messages of astonishment and encouragement. I have responded to many of these messages privately to thank the senders for their kind words but I found myself repeating a lot of words. During my time at ITG I worked hard to reduce inefficiencies and waste and improve communications. It seems like an obvious step, therefore, to reduce duplication and to write publicly as much as I can about my departure, my current situation and whatever comes next.

I didn’t know that my time at ITG was going to end when it did but I was sure that a "reduction in force" was coming and that my position would be a candidate for redundancy. I was prepared for this and wasn’t surprised when I got the proverbial tap on the shoulder.

Without going into any details, I had been unhappy with a number of aspects about my last project that were outside of my control. They were outside of my superiors’ control, too, which made my situation very frustrating. I hung in there, doing the best I could under the circumstances, out of respect and admiration for those around me who were also doing their best. When I was told that my position was made redundant, it came as a huge relief. I feel for those who are left behind who will inevitably be asked to do more with less, at least in the short-term.

In my time at ITG I worked with many of the best professionals I have known. The leadership team in Asia Pacific is superb; I want them to know that I respect their decision and wish them well for the time ahead. I shall miss working with everybody in the Melbourne office but am sure the friendships we’ve formed will last well into the future.

When I called Kirsty to give her the news, she was delighted! It’s going to be good for her to have her old husband back. I am looking forward to starting the Summer (for that’s what this time of year is called in Australia) with Kirsty and with Eamonn and just being a husband and a father for a while. It’s going to be a good Christmas and we’ve a couple of trips away already planned for January.

What’s next for me career-wise? I don’t know for sure. I’m going to use this new-found spare time to tinker with some new (to me) technologies and see what’s out there for me to play with. I want to contribute to some worthwhile open-source projects like OpenMRS. I may revive this sadly-neglected blog and write about my experiences as I play. I hope that this will help me form a clearer picture of what I want out of a job so that I can dust off my résumé (or CV, if you prefer) and go out there and either find it or make it. It’s an exciting time!

Comments Are Lies!

I recently came across a blog entry on Importance of Writing Code Comments in Software Development. It’s a proposition I’ve heard many times before, so I took a read to see if there was some reasoning I may have missed. There wasn’t.

Like the author of that article, I spend far more time reading code than writing it. O tempora o mores! Comments are not what I want to see, my friends, Clean Code is what I want to see!

Robert C. “Uncle Bob” Martin (more than) once declared: Comments are lies. He is (partially) right!

Here is some code from a project at my workplace. I’ve changed some of the names to protect the guilty but otherwise this is genuine:

//  --------------------------------------------------------------------------
//  Method Name:        CProtocolField::setValue
//  Definition:         This method sets the value attribute of the CProtocolField.
//  Qualification:      none
//  Export:             public
//
//  Return:             void
//  Parameters:         double value
//
//  Preconditions:      none
//  Postconditions:     this->getString() == value
//  Exceptions:         none

    void
    CProtocolField::setValue(const string& value)
    {
        myLength = value.length();
        myValue = new char[myLength+1];
        if (myValue != 0)
        {
            memcpy(myValue, value.c_str(), myLength);
        }
        myValue[myLength] = '\0';
        myBuffer = NULL;
    }
//  --------------------------------------------------------------------------

Ignore the terrible formatting, variable names and call to memcpy(), Did you spot the lies?

The “Method Name” is quite correct but I didn’t need a comment to tell me that. I suspect that even if you’ve never seen C++ before, you’d be able to tell me what the name of the class and its method are. The “Definition”, hardly needed a resident of 221B Baker Street to reveal it to the unsuspecting public, it sets the value, hence its name. It also does some other things, but we’ll come to that later. “Qualification” is used (in case you were wondering) to explain to the unseasoned reader whether a particular method is static or const or even virtual. Given this method is used to set a member variable (or three!), it’s pretty obviously nether of the first two. According to the declaration in the header-file, it’s non-virtual but… CProtocolField is derived from IProtocolField, which declares setValue(const string&) as pure virtual, making this method virtual. A lie!

Helpfully we’re told that this set-function has a public access specifier. I’m not sure what use a private setter would be, but we’ll move right along to the blatant lie: “Parameters: double value”! Why would any programmer write that? This method clearly takes one argument and it’s a const string&!

Of course a programmer didn’t waste their time writing this lie. It was copied and pasted from the double overload 44 lines earlier in the file. (I submitted a patch to remove the duplication, of course).

The “Preconditions” also lie. Whomever assumed responsibility for allocating myBuffer (a raw char*, no less) also assumed the precondition that this buffer has not already been allocated. This same (incorrect) assumption is made in eight other places in the same source file! Removing the memory leak was the main reason for me submitting a patch (shared code ownership is a topic for another day).

The claim in “Postconditions” tells us nothing useful. What if I never call getString(), what is the state of my object? If there were accompanying unit-tests, I would have checked them. (Instead, I wrote them).

Unit-tests are of course the best documentation for any code. They are living documents that you can execute at any time.

I said that Uncle Bob was only "partially" right. The comments below (from the same code-base) tell the truth, the whole truth and nothing but the truth:

//////////////////////////////////////////////////////////////////////////////
//
// Function Name:   ExcCxlCached::~ExcCxlCached()
//
// Definition:      Destructor for the ExcCxlCached class
//
// Qualification:   virtual
//
// Export:          public
//
// Return:          none
//
// Parameters:      none
//
// Exceptions:      none
//
////////////////////////////////////////////////////////////////////////////////

ExcCxlCached::~ExcCxlCached()
{
// Nothing to do here
}

Eighteen lines of comments for a destructor (that is obviously a destructor for the ExcCxlCached class) that does nothing! No lies, just noise.

By writing this kind of cruft, you are creating noise for the poor person who has to come along and read (and understand) your intent. The signal-to-noise ratio here is criminally low.

We’re not paid by the line-of-code, people! Please stop! If you want to do more typing, please expend it on putting some vowels and meaning into your identifiers. Or writing unit tests.

For this reason I have the following mapping in my .vimrc:

nnoremap <Leader>ic :<C-U>highlight! link Comment Ignore<CR>

This makes it very easy for me to hide the lies and the noise and concentrate on the code!

Remember: Comments are a failure to express yourself clearly in your code. Clean Code: A Handbook of Agile Software Craftsmanship (Robert C. Martin) is recommended reading on the matter.

Formula 1

I’ve been a motorsport fan since I was a young boy. Formula 1 was and is a particular fascination. I didn’t go to my first Grand Prix until the 2005 Belgian Grand Prix, which was an amazing experience. A few months after that, I moved to Melbourne, a stone’s throw away from the iconic Melbourne Grand Prix Circuit at Albert Park. Since then, I have been every year to watch the drivers at motorsport’s zenith battle it out for the top spot on the podium on a Sunday evening.

I always book my tickets early to ensure I get the best seat that I can afford and have enjoyed every single race. The Australian Grand Prix being at the start of the season makes it singularly exciting as it’s the first time that the fans get to see what the teams and drivers have been working on over the (Northern Hemisphere) Winter months. We find ourselves with muddled-up grids at the end of breathtaking qualifying sessions and this guarantees an interesting race to the first corner (and beyond) on the Sunday.

I booked my ticket for this year’s Melbourne Grand Prix back in July of last year and didn’t give it another thought until I got a phone call from the Australian Grand Prix Corporation on a Friday morning in September. They told me that I’ve won a ride in the 2-seater F1 car at the 2012 Grand Prix weekend (subject to some Ts & Cs) just for buying a ticket. I nearly fell off my chair. I couldn’t believe it.

Skip forward to this weekend.

It’s dark at 6 o’clock on Saturday morning at Albert Park when I’m greeted by our host at the circuit and presented with a ground pass that says, “Minardi 2 Seater Passenger” and some ear plugs. After signing my life away (gulp), I’m taken to the garage to have a look around the cars. There are a few photos here.

Shortly after taking a few snaps, I’m led out to get changed into my fireproof outfit and am told that there are two drivers, Cam McConville and Zsolt Baumgartner. Zsolt, I am told, does not hold back with passengers and goes full-pelt from the word “Go”, whereas Cam would ease them in gently. Guess who was driving me!

In pit-lane I’m taken to the car, where Minardi boss Paul Stoddart explains to me how to get in, how I’d be strapped in and also the Dead man’s switch, should I succumb to the immense g-forces to which my body would be exposed in the minutes ahead. Paul helped me secure my helmet and gloves and I was ready to go.

Stepping into the car was a dream come true. I was absolutely thrilled to be there. My visor fogged up as the team tightened the race harness around me. There was no moving now, my body is now one with the car with just my lower arms and my head afforded any movement and my left hand was gripping the dead man’s switch for all it was worth (if I let go, then engine would cut out).

Before I knew it, the Cosworth V10 a few centimetres behind me was fired up, the jack dropped the Minardi to the track and Zsolt’s right foot took us hurtling along the pit-lane almost without any warning.

The cool morning air seemed to clear my visor but I still couldn’t read the names above the garages in pit lane as they whizzed past to my right. We were travelling at such velocity so quickly. I wasn’t forced back into my seat as I might have expected: the harness was that tight!

"Oh my word, I’m in a Formula 1 car!" I think I said aloud as we reached the end of the pit lane. It was exhilarating and felt a bit like the initial buzz when an extreme roller-coaster sets off. But then we were out on track…

Zsolt Baumgartner changed up through the gears in a heartbeat. And I thought we’d gone quickly in the pit lane, that was nothing! We were travelling at amazing speeds along Aughtie Drive and then bam!

It was a bit like receiving a slap to the back of the head, followed by a thump to the face as my helmet hit the padding at the back of the driver’s seat. We’d reached Turn 1 already and Zolt had applied the brakes, I suddenly realised. "Unbelievable"! We turned sharp right and then left through Turn 2 and then the power is back on…

This machine and its operator are truly phenomenal!

Thump! Turn Three! Now I’m relaxed and completely enjoying the experience. I’m watching the tyres as they stick to the track like the stickiest glue imaginable.

I’m grinning like a Cheshire cat as we pummel down Lakeside Drive; the palm trees on the right are a part of my mental image of the Melbourne Grand Prix from watching it on the television back in England. Now I’m speeding past them in a Formula 1 car!

The three sharp corners at the Southern end of the circuit try to hurl my head out of the car, but my neck works hard to keep it attached to my body and before I have time to think any further about it, the main straight is right there and Zolt’s heavy right foot is flat to the floor taking us back to Turn One at Ludicrous Speed.

I can’t stop smiling as we trace the racing line on Lap 2. I’ve acclimatised to the speed and can now take in some of the smaller details: the hot air balloons up above and the track marshals dotted around the outside of the circuit. If it were not for these great people there would be no motorsport, I feel a deep gratitude for them. I also spot quite how close the Minardi’s tyres get to the green-painted concrete barriers on Lakeside Drive but I feel perfectly confident that there’s no danger of them actually touching.

A few seconds later, after the absolute ride of my life, we enter pit lane. I’m buzzing as the car is pushed back to its start position, jacked up and the engine stopped.

"Amazing!", I say to anyone who’ll listen as I vacate the seat for the next lucky passenger. It took me hours to come down from that high.

Vacating the Seat F1_2Seater_Day3_CL036 by Pete Johns, on Flickr

It was only as I caught a Melbourne taxi home that night when I realised quite how astonishingly safe I had felt with Zsolt Baumgartner driving me in the Minardi F1x2 at those astounding speeds. All credit to him and the team for putting together such a package!

The rest of the four days at the Melbourne Grand Prix were great, but somehow less significant than those few minutes where I really got to experience Formula 1 first hand.

I’ll certainly be booking early for the 2013 Australian Formula 1 Grand Prix!

Movember

Hi,

It’s Movember and time to focus on men’s health. To show my commitment, I’m donating my face to the cause by growing a moustache for the entire month of November, and need your support. My Mo will spark conversations, and no doubt generate some laughs; all in the name of raising vital awareness and funds for prostate cancer male depression.

Why am I so passionate about men’s health?

  • 1 in 9 men will be diagnosed with prostate cancer in their lifetime
  • This year 20,000 new cases of the disease will be diagnosed
  • 1 in 8 men will experience depression in their lifetime

I’m asking you to support my Movember campaign by making a donation by either:

  • Donating online at: http://mobro.co/johnsyweb
  • Writing a cheque payable to ‘Movember,’ referencing my Registration ID: 1467904 and mailing it to: Movember, PO Box 60, East Melbourne, VIC, 8002

Funds raised will help make a tangible difference to the lives of others. Through the Movember Foundation and its men’s health partners, the Prostate Cancer Foundation of Australia and beyondblue &emdash; the national depression initiative, they are funding world class research, educational and support programs which would otherwise not be possible.

If you’d like to find out more about the type of work you’d be helping to fund by supporting Movember, take a look at the Programs We Fund section on the Movember website: http://au.movember.com/about

Thank you in advance for supporting my efforts to change the face of men’s health. All donations over $2 are tax deductible.

–paj

Please donate at: http://mobro.co/johnsyweb

New beef with Facebook

Yesterday morning I had an email from Facebook letting me know that a friend had "tagged" me on his profile. This sounded fair enough, we’re friends after all. It went on to say that he tagged me under "University" with the name of my alma mater.

Curious, I logged into the website and saw the name of my former university on my profile! When I signed back up for Facebook, I deliberately withheld this information and now it’s on my profile.

But he tagged me on his profile, you said!

Details of which university I attended, the years I was there, my course and grades are all available elsewhere on the Internet; it’s not a secret! But having deliberately chosen not to put this information into Mark Zuckerberg’s databases, it’s infuriating that anybody can enter this information on my behalf and without my permission.

This morning I had a play around with Facebook, adding MI6, CONTROL and St Trinian’s School to friends’ profiles. It’s remarkably easy.

Some financial institutions use the name of people’s first school and similar information as answers to security questions. It’s a huge concern that these answers can be disclosed, unwittingly, by our friends.

Although I was able to remove the information from my profile, I’ve searched through Facebook’s privacy settings, and I can see no way to prevent this information being disclosed, in the first place. I see this as a huge security risk.

If you’re a Facebook user (and the chances are very high that you are), please take a moment to review the information you disclose and also your privacy settings. Sophos’s recommendations for Facebook settings are a good guideline.

Eamonn

Wow!

I’m a Dad! This is something that is still sinking in. As my friend Chris said in a tweet this week, "Forewarned is utterly, entirely not forearmed, is it?!"

He is right.

On Thursday morning I was filed with so much more joy than I ever thought I had the capacity for. I had heard how amazing is the miracle of birth, but being there for the birth of our son was an experience that no words can describe. Really.

Since that precious moment I have been finding a new appreciation for almost everything. I now understand why new parents feel the need to share the minutiae of everything their first-born does: each little thing is just so new and so exciting. I have a whole new appreciation of what our parents have done to get us to this point in our lives and I can never thank them enough. Grandparents really do deserve congratulations on the birth of a grandchild even if they say they didn’t do anything!

Thank you to all of you who have sent messages of congratulations, love and support to K, E and me. We’re hugely grateful and as soon as we have the time and the energy we’ll be in touch. At the moment we are still catching up on sleep, on washing and enjoying time with our beautiful baby boy!

The biggest thanks of all go to K who has just done so much over the past nine months to produce a healthy baby. I am hugely proud of her, particularly for the amount of effort required to introduce E to the outside world, she really was wonderful.

I shall put some more photos up on Flickr over the coming days especially for our friends and our family overseas.

Page 4 of 13