Fear of 4 Wheels – Part 5

Lesson 4 (in learning to drive at the age of 42).

Race car

This is how I felt for 2 hours …

It rained most of today, and I had every expectation of being out in the car in terrible weather.  Along with general not-fun-ness at work, I again wasn’t really looking forward to today’s lesson.  I’m even more certain now that had I cancelled last weeks lesson, I wouldn’t have gone back, such was my mood this evening.  But I didn’t cancel, and that meant I was ready at 5:40pm, which is a good job, because my instructor turned up 20 minutes early.

The rain had backed off to an annoying British drizzle, and luckily about 15 minutes into the lesson, it stopped alltogether.  That meant I never had the fun of turning the wipers on and off instead of indicating, but I’m sure there’ll be a chance at that later.  What I did have fun with, was driving.  I actually drove, for nearly two hours.  Two stalls, one sharp stop, and a little bit of uncertainty, but otherwise, two hours of driving.  I enjoyed it.  I actually enjoyed it.  I really feel that stuff has fallen into place and that now it’s purely a matter of practice and making it muscle memory.

This is how I looked for 2 hours …

I think my instructor was pleased.  She certainly seemed pleased about the lack of near-death roundabout entrances and the dearth of nose-against-windscreen moments.

I still can’t describe where we went for the middle of the lesson, but I know we got there through Beeston (around that double bend people treat like part of the street), and we came back through Chilwell.  I had the weird experience of having no clue where I was one moment, and then suddenly recognising a bit of wall at a junction, and everything shifting into place on the way back.

Pulling away was mostly smooth, stopping was about a billion times better, and gear changes were much smoother.  I think I can drive (this is probably dangerous).

The highlight of today was ‘reversing around a corner’.  Can I just say, who in their right fucking mind would ever do this?  You have to stop, potentially on a road with traffic, and then reverse into that traffic for a bit, and then reverse around a corner you can’t clearly see unless you break your neck, while also being able to check 3 mirrors and another blind spot.

Why!?

Just drive in and do a 3-point-turn for fucks sake.  I mean seriously.

I did it twice, not bad each time, I think I finally have some clutch control.  The scary thing is that as soon as I look in a mirror, I speed up because I lift the clutch so I’ll have to work on that.

Other moments I enjoyed, two roundabouts where I stopped and then pulled away without using the handbrake, just the foot brake and clutch control and doing 30mph on a road with a 30mph limit, looking in my rear view mirror and being able to see traffic as far back as the horizon.

If that was you tonight – then I make no apologies!

Also if you’re,

  1. the driver who pulled out from a left-hand side-street without stopping or looking, literally 10 feet in front of me, I hope you enjoy the change of trousers, the look on your face was awesome.
  2. the woman who tried to overtake me on a right-hand bend, you need to retake your test pet.

All-in-all, a really enjoyable two hours.  Hard work, don’t get me wrong, probably a 6 on the ‘how sweaty was my right armpit’ scale, but fun, rewarding hard work.

In between …

I am writing a blog post on my MCM Comic Con experience, but it’s taking longer than I expected, and now I’ve got an itch to write the next driving lesson post, so that’s going to turn up first.

For some reason though, I felt I needed a random blog post between the two.

So here it is.

Fear of 4 Wheels – Part 4

PhrenologyPixToday was lesson 3 in ‘learning to drive in your forties’.  I will warn you now, this post contains emotional scenes, but no flash photography.  Also there is swearing.  If you prefer to think of me as rational, sane, and emotionally stable, you may wish to skip reading this.  If you consider the thought of grown men crying, weak, or if you believe learning things about me you don’t like will affect how you deal with me on a day to day basis, you may want to skip reading this.  If you suffer from a weak stomach, then you should do stomach exercises.

Today was a shit day at work, after a few shit days.  As I was getting a lift home, I was thinking the last thing in the world I wanted to do, was get in a car for two hours and learn to drive.  Or, if lesson 2 was anything to go by, spend two hours being frustrated by not being able to drive.  When my instructor texted me to say she was running late, was I still okay for the lesson, I almost cancelled.  But I knew if I had cancelled, I would probably find it easier to cancel the next one, and the next one, and the next one and suddenly, I’m not learning to drive at all.

So I said yes, it would be fine.  As I sat waiting though, and it got later and later, I realised a 2 hour lesson was going to mean getting in very late, and then having to sort food and other stuff.  So when she arrived (only 20 minutes late in the end, but it had taken her around 1 hour 30 minutes to get to me, instead of 40) and I went out, I asked her if we could keep the lesson to 1 hour.  She said yes, seemed fine about it and off we went.

But here’s the thing – now I’m sitting in the driver’s seat over-thinking 9 billion things at once, as well as trying to drive the bloody car.  Had I complicated her plans, was she going to be losing out on money because she could have booked that second hour slot with someone else?  Was she secretly pissed off at me?  Was she wondering why she’d driven for 1 hour 30 minutes only to be told by the client that they couldn’t be bothered to drive for 2 hours?  It’s this kind of social interaction that drives me insane (or it’s because I’m insane that this kind of social interaction confuses me).

That feeling that I’d somehow let her down, pissed her off, and made her pissed off at me stuck with me for the rest of the hour.  You’re probably laughing, you’re likely thinking ‘what a dick, why does he over-think this shit’, and if you are, you should read the rest of my blog, which gives clear indication of my neurosis, and then you don’t need to ask.

The bottom line is that if you’re having a conversation with me and you think I’m handling it, then I’m actually just winging it and hoping I don’t make myself look like a complete and utter dick, I’m aiming for ‘mostly dick’.  One of the hardest things about learning to drive, is that it requires you to sit in a confined space with someone you don’t know, and both listen to them and also perform for them.

And perform I did.  After the car park trip with Greté, I did what any good engineer does in a situation where they find themselves frustrated by being unable to control something, I did some reading.  A colleague of mine at work said much the same thing yesterday and I laughed because it’s true.  I found a bunch of websites that talk about clutch control, and driving, and I read and thought about it, and worked it through, and I finally realised what all the talk was about.

So today, after doing my cockpit drill, starting the car and making my observations, I pulled away from the kerb gently, slowly and smoothly.  Half my brain was still panicking about the social interaction with my driving instructor, but the rest was focused on a feeling of exultation as I proved to myself, the most important person in this whole learning to drive thing, that I could do it.

I really might just be able to do this.  We turned left at the end of the street, without coming to a full stop because the traffic was clear.  We drove down to a roundabout, turned right, and pulled away, without stalling, and with the car under full control.

I started to believe I might just be able to do this.  After last week, this was a massive change, last week left me feeling like it was never going to happen, but here I was, just over four hours in, beginning to think it might be possible.

We drove up towards Stapleford again, making good progress.  I had a couple of fumbles, one left turn in which I started thinking I was clear, but then didn’t get moving quickly enough, and my instructor decided I hadn’t been clear, left me poking out into the road.  I stalled it twice, my instructor ‘took the pedals’ and stalled it, but we finally got onto the road and moving.  After the apparent success on the first week, my instructor had hoped to do ‘some manoeuvres’ in the second week, which we all know means ‘a 3 point turn’.  However, the shocking start last week meant instead we stuck to just driving around.

I think my new found skill this week gave my instructor some confidence and we pulled up in a quiet road and she explained a 3 point turn to me.  To anyone who has decent spatial awareness and an understanding of how car steering works, the basics are pretty obvious, but I tried to listen without looking impatient.  I knew this was it.

This was my test.  I didn’t want to be here, my instructor probably didn’t want to be here, I was distracted, she was pissed off and there were people using the road I was on that were about to become pissed off.  But I wanted this.

I wanted to see if I could drive this car purely under clutch control.  After she’d finished the instructions (which she admitted, were more complicated to describe than they were to execute), she asked if I had any questions.  Just one, I said, no use of the accelerator at all right?  Correct she said.

That’s when it happened, I prepared the car, and then I carried out a reasonable three point turn.  My first go at reversing the car, my first go at driving totally under clutch control, and my first go at not crashing into a kerb.  From the position we finished it, we reversed straight back a bit, and then did another one.  A slight stall at the start, bringing the clutch up too far, but then I reset and off we went.  I was pretty happy.  Let’s be frank, I was pretty, fucking, happy.

Suddenly in my head things fell into place.  The only reason you’re ‘giving it a little gas’ when you pull away is because you’re expecting to be doing more than 1 mph at a junction.  In Tesco car park, pulling out of the parking spaces the other night, I’d been ‘giving it a little gas’ totally unnecessarily.  I need to go back, and just pull out of those spaces just using the clutch.  Maybe when you’ve been driving a few years you’re more eager on the accelerator because you know how the car will behave, or because you’re capable of moving away from those spaces at more than 1mph.  But I’d been getting ahead of myself, I needed to learn how to drive the car without even touching the accelerator.  As long as you don’t fully engage the clutch, it won’t stall.  It was a revelation.  It was like you’d spent your life reading about art but had never seen any.  Spent your life hearing about divine food but had never eaten any.

Well okay, perhaps it wasn’t that poignant, but it was certainly good news.  I drove back home on cloud nine.  60mph on the A52 at one stage, 5th gear.  Right turns, left turns, roundabouts, all with a reduced feeling of fear about pulling away.  Don’t get me wrong, you’d be able to tell I was a learner driver, I’m still pulling away slowly, waiting too long before getting into 2nd, changing into 3rd too early, wandering around my lane a bit, stopping 8 feet before the line, you know, the usual shit.

But in my head, I believe.  I believe I can do this.

So I got home, and my instructor said, “2 hours next week?” and the flood of social anxiety returned like a crashing wave of cold death.  “Sure”, I replied, and got out of the vehicle.  I made some lame joke about having to get used to checking in the wing mirror for traffic when getting out as a driver, where-as when I was a passenger, I was never too worried about knocking over the odd pedestrian ((this was a joke, after an incident as a passenger in the late 80’s when a taxi almost took the door off a car I was getting out of in a train station, I do check for cars, cycles and people before opening the door)), and then we parted ways.

StrawberryIceI got into the house, immediately said something petty to my patient wife ((she forgave me)), and then I went upstairs and had a little cry.  I hadn’t realised how much I needed this.  How much I need to be able to drive.  How much guilt I’ve been carrying, how much of a relief it will be to pass the test.  I certainly hadn’t realised quite how emotional it would be, how wound up I would be before lessons, and how much effect the actual lesson would have on my mood.

I may have only carried out two 3-point turns, and you may be wondering why the fuck I was sobbing like a child who’s dropped an ice cream, but I was experiencing a rush of relief of epic proportions.

This might work.  This, might, actually, work.

Fear of 4 Wheels – Part 3

Last time I spoke to my driving instructor, I said I was going to spend some time in Tesco car park just starting and stopping our car, to get used to the clutch and the whole routine of pulling away in a controlled fashion.  Greté was kind enough to go with me tonight, and we just got back.

carstartI think in 50 minutes I managed to pull away in a controlled fashion once.  The other 99 attempts were roughly,

  • 70 stalls before even leaving the parking bay.
  • 20 juddering starts where I just about remember to keep enough petrol on to actually not stall.
  • 7 starts where I accelerate almost out of control and then slow down again into something approaching reasonable speed.
  • 2 reversing starts, which weren’t too bad actually, maybe I should drive everywhere backwards.

For added amusement, while doing slow laps we also had,

  • 1 x very close pass to a cycle rack on the back of a van
  • 1 x three miles per hour swerve out of the way of a parking vehicle
  • several sharp stops
  • far too many instances of stopping, and forgetting I was in gear before lifting my foot from the clutch.

All-in-all, much more like how I expected my first ever lesson to go.

Greté was great, and very patient and she only phantom-braked the once.

So I’m pretty much fine with steering, and my braking is getting better, but I’m really not getting the whole biting point and gentle application of petrol thing.  I guess it’ll come with time.

Next lesson is on Wednesday, not sure if I’ll ask Greté to give me another shot in Tesco’s again tomorrow.  I almost wish there was somewhere much more open, where I could practice pulling away without too much fear of driving into someting.  Tesco was pretty empty but there’s still plenty of stuff you could hit with an uncontrolled start.

 

Fear of 4 Wheels – Part 2

A picture of a car over a wall

This was not me …

One thing I didn’t talk about much in the first post in this series (here), was the sick feeling in my stomach from the moment I got out of bed on Wednesday the 8th May until the moment I sat in the car for the first time.  I was pretty nervous, in fact thinking about it now makes me nervous in a sort of sympathetic reaction that I’m not in control of.  After I got back from the drive, and my legs had stopped shaking those nerves had clearly gone away.

So a week later, I wasn’t sure how I’d be feeling.

As it turns out, pretty much the same.  My second lesson was booked for Wednesday 15th May, starting at 6pm to let the traffic die down a little.  Thanks to an alignment of planets, that week also included having someone come and look at a damaged window frame, having our old sofas removed and taking delivery of two new ones.  Thanks to both an alignment of planets and the Rule of Sod, all the sofa action was also planned specifically for the 15th May.  We’ve already covered how relaxed I am about planning, so let’s just say that both I and Grete could have done without everything converging on the same day.

In the end, the sofa stuff meant I wasn’t really thinking about the driving lesson until it was all delivered and sorted by around 1pm.  After that though, the nerves kicked in big time.  My instructor arrived a little early so I didn’t have to do too much pacing before getting into the car.  This time, we did the setup outside my house, and then I was off and driving straight away.

Right-turn out of our street onto a reasonably busy road – stalled, stuttered and then got moving.  Not a great start, but the instructor tried to relax me by saying everyone has issues in the first 15 minutes of a lesson.  We followed the route I normally follow to work (which was both good and bad) for a little while and then turned up towards the A52.  Up to this point, braking had been too sharp still, and I appeared to have totally forgotten how to pull away from junctions.  After crawling up a hill in first, to avoid having to stop and start behind a queue of traffic, we made it across Bardills roundabout-bout and were on our way into Stapleford again.

We passed, and were passed by, a lot of learner drivers so I guess the whole of Stapleford is awash with them.  It’s full of quiet side streets, so I assume drivers get a lot of chance to practice stuff, and boy did I need it.  It appears my first week was beginners luck – or at least that’s what I thought until my instructor told me off for over-thinking things.

LPlateI thought about that (yes, irony) and realised she was right.  Now that I’d had some practice, I was trying to think about everything at once, despite still not really having much clue how to actually drive.  She suggested I stop thinking about more than one thing at a time, and just focus.

  1. Coming up to the junction – worry about speed first.
  2. Once the speed is right – then worry about road position.
  3. Then think about which gear you’re going to need to be in.
  4. Then think about if you need to stop.

Obviously that’s a generalisation, but once I stopped worrying about speed, position and gear at the same time, I stopped screwing up quite as much.  I still sometimes put on too much gas before I was in gear, or lifted the clutch too quickly, but that’s just going to take a lot of practice.  By the end of the two hour lesson, I was driving much more smoothly, and when we left Nottingham and headed back out towards home, without instruction since I knew where I was going, it was all-together much better than it had been.  I even managed to come to a stop a couple of times without putting our noses against the windscreen.

One thing I absolutely improved on during this lesson was using the mirrors.  I’d looked at them previously, but now I was looking in them and seeing things, and I was remembering to check them.  However, I have a propensity to check the left mirror a lot.  My instructor made the same observation, and I reminded her that after being a passenger for 30 years, that was the only mirror I ever had, it was going to take a long time to give it up.

Of course, I’ve skipped over the 40 minutes of absolute terror in the middle of the lesson.

This is the route we took.

drivingmap

I’d like to say a few words about the numbered locations.

1: This roundabout is freakin’ huge.  Luckily, we were going straight on, and I was feeding left into the lane that stops being a bus lane just before it.  Also, it’s traffic light controlled, so even though at this stage I was still struggling with the whole being in control thing, it wasn’t too bad.  But you know what?  And if you drive this route, you already do know what.  The road after this roundabout, at 6:30pm, is always stacked with traffic, and two lanes merge into one (that should be a song).

My instructor advised me to keep left, and keep up with the car in front, so that people behind me didn’t take advantage of the gap.  I failed 3 times, but as I finally got the confidence needed to keep close to the car in front, there was a moment of pure joy.

As I looked in my right-wing mirror I could see a car right on the back of me about to come past, and as I closed the gap and they realised they wouldn’t be able to, and they were going to be stuck behind me for the rest of that road to the next junction, the look of pure frustration on the driver’s face was enough to keep me upbeat for the rest of the lesson.

2: My instructor said, we’re going left, which was fine.  Then she said something about ‘starting checking you can filter in when we pass the concrete’.  My brain was still trying to absorb that when I realised we were indeed running out of filter lane, and I was going to have to move into fast moving traffic on my right side.  I remember looking in the right hand wing-mirror, and seeing a car, and then thinking, “okay, so what do I do now?”.

I did filter into the traffic, I’m just not sure how.  I think there was some instructor ‘encouraged’ braking and maybe some instructor ‘encouraged’ steering, and then we were on the road and moving forward.

She did say that she likes to just drive and learn as you go, and I think it kind of suits me, but I’ll be honest, I was surprised to find out I was filtering right with only about 25 meters of filter lane left.

3: If you live here, you know this roundabout.  I know it.  I hate it as a passenger.  I’m pretty sure I hate it as a driver, except, I can’t remember it.  Trauma induced amnesia clearly.

4: We drove up here, and then went somewhere else for a bit.  Your guess is as good as mine, I’m still trying to work out where the piece of my brain that handled number 3 is hiding.

5: When we first moved to Nottingham, this roundabout used to cause consternation for Grete.  It’s often busy, it’s badly marked out, and it’s populated by angry people trying to get home.  I think I did quite well all-told to survive getting around it.

After the roundabout at number 5, I just drove home.  I’m pretty sure the instructor wanted me to, but I was going to anyway quite frankly.  I’d just blocked a guy from getting ahead of me, navigated what I think to be the three worst roundabouts in the bit of Nottingham I know, and had filtered into fast moving traffic using some kind of magical ‘please don’t drive into the idiot’ sign.

As we pulled into my street, and picked a place to pull over, I promised my instructor that I would actually stop the car this time before getting out.  She laughed, I think it was just a laugh, it might have been a slightly terrified release of tension, hard to tell.

It was time for more tea.  Lesson number two, done.

Fear of 4 Wheels – Part 1

LPlateAt the time of writing this, I’m forty-two years old.  As you know, forty-two is the answer to life, the universe and everything, so what better time to start to learn to drive?  I covered some reasons why I left it so late here.  This post though, is about the process of learning.  I’m bad at starting stuff, but once I’ve started I’m usually pretty good at finishing.  It’s taken me a long time to start to learn to drive, and I had a couple of false goes over the last few years.  I half promised myself I’d learn before I was 40, and then I said I’d learn before I was 42, both of those deadlines came and went.

For me, more than half the problem is that I over-think the situation.  Those of you who know me will find this utterly hard to believe, but I over-analyse most stuff, dig out all the possible issues, and then present them as a bunch of negatives.  It makes me quite good at my job (especially when I then go on to present solutions to those issues), but it sometimes makes it hard to actually get stuff done especially outside of work where the pressure to deliver is lower.

So I talk myself out of a lot of things, because of the potential issues.  I don’t mean the risks of actually driving, I mean, in this case, the complexity of sorting out lessons.  For a long time my provisional driving license was an issue, until Grete sorted that for me, and then it was questions about who to book lessons with, and how, and when to fit them in, and how and when to book the theory test, and how the whole thing would work, and endless iterations of those same questions.

It’s very easy never to click ‘book lessons’ when those things ramp up in your brain.  I actually got to the point of getting some quotes last year, from BSM, and almost booked, until they sent me some spam SMS messages to my mobile phone (mandatory field on the quote form), and that smallest trigger put me off booking with them, and the whole process collapsed.

Eventually though, there comes a moment where I finally commit to something in my head.  At that point, the issues, complexity, problems, risks and blockers all just vanish.  I’ve committed, and I will proceed.  Such a day arrived three or four weeks ago, when I finally just logged on to the AA website, bought 10 hours worth of lessons, and booked the date for the first one.

So, on Wednesday 8th May, at 5:30pm, I finally sat in the driver’s seat of a four-wheeled, petrol-engined car with the intention of starting the engine and driving it for 2 hours.  For those of you who’ve had driving lessons, you know how this goes.  The instructor takes you through the cockpit drill, tells you how a car works, covers the basics of mirrors and the like.  After this stage, I guess how it progresses depends on your instructor.

My driving instructor likes to get her pupils driving.  Her theory is once you’re moving, you’ll learn everything else you’ll need to know.  So she drove us to a quiet spot, sat me in the driver’s seat, had me adjust everything, and then we set off.

What followed was two hours of a mixture of fear, exhilaration, panic, confusion, euphoria, confidence sapping mistakes, confidence building successes and armpit sweat.  With my driving instructor talking in one ear, and me pretending to look in the mirrors (really, I was just looking at the mirrors), we pulled away from the curb, slowly pulled back in again and jerked to a complete halt.  Brakes.  Must be more gentle on the brakes.  The first lesson continued with that theme, with me never quite getting to grips with slowing down gently.

But I’m jumping ahead!  We pootled along a road I knew quite well in a quiet estate, and met my first road junction in the 42 years since I arrived in this world – a mini-round-a-bout.  My instructor said, ‘we’re going straight across’, which is a phrase I have been using for many years.  This however, was the first time my brain ever formed the thought ‘I wonder if she means I should just drive straight over the middle’.  Luckily my hands, taking control because my brain had apparently shut down, turned the wheel and we navigated the deserted obstacle with reasonable ease.  Before I had a chance to fully realise I had just navigated a round-a-bout, my instructor coaxed me to a juddering sudden stop, and we were sitting in front of a right hand turn.

Thankfully, it was into a weird single lane traffic calming measure in which I had right-of-way and there wasn’t any traffic anyway.  I gently rounded the 90 degree bend and off we went.  It was at this point that I worked out where we were headed.  We were about to rejoin the busy B6002, which when we had left it 15 minutes before had been host to two lanes of almost stationary traffic.  It hadn’t changed, and as we approached and began to slow, I heard my instructor say, “We’re going right.”

I had hoped, to be fair, that in my first ever driving lesson, I’d have been pretty much turning left only.  I’m sure we could have gotten anywhere we needed to be with only left hand turns, and I was about to explain this to my instructor, when I realised the articulated truck to my right had stopped, leaving me a gap in one lane of traffic.  This was it then, this was the moment I was supposed to check for a gap to the left, and then gently pull out and hope nothing crushed me like an out of place insect.

I stalled.  Then magically, after restarting the car, I managed to find another gap and pull out, and gently pull away and to the surprise of everyone, not least myself, I changed into second gear.  I was doing 15 miles an hour, on a B road, with traffic in front, behind and to my right.  I wasn’t dead.  The car wasn’t crushed.  No one was banging on the window screaming at me.  This was going to be okay!

I don’t remember much else for a little while, as we drove further into Stapleford, other than my instructor saying at least four times, and I quote, “this is a horrible junction, sorry”.  I know we negotiated some junctions, some more right turns, and some straight ons, but frankly it’s a blur!  It was all heavy traffic, 6pm, people trying to get home, me trying not to hold them up!  Eventually we made it to another quiet estate, and my instructor took me through some t-junctions, road position, and some other critical things that maybe one day I’ll remember but for now, are merely a smudge in my mind.

I do remember learning how to do hill starts (both up, and downhill), and I remember feeling confident about gear changes.

But most of all, I remember braking hard, every time.

We drove around the estate some more, and onto, across and through some busier roads, but I wasn’t really conscious of where I was (despite knowing the area quite well), until eventually we approached what looked like a major road, and my instructor advised we were turning right.  I noticed we had stopped at some lights, and in front of me were two lanes of traffic, a central reservation, and then another two lanes.  Only after I had crossed the two lanes and turned right did I realise I had pulled onto the A52, and we were headed back towards the M1.

Slightly terrified about what was to transpire, I revelled in the brief feeling of safety provided by traffic-light controlled round-a-bouts in which I was going left in a feeder lane.  Then, well, then I was in the clear, on a road with a 70mph limit, with cars accelerating away from me.

I took a deep breath.  Told myself that I was a man, and this was a motor vehicle, and that I was in control of my own destiny, not living in fear of success, and I got the car into 5th and did ~50mph for a little while.

50mph!

Eventually, we arrived at another round-a-bout (going left again, thankfully), navigated some more roads, made it to the A6005, and then, made it home.

I’ve been a passenger in motor vehicles, usually in the front passenger seat, for many, many years, so the process of learning to drive for me isn’t just about learning to drive, but it’s not about forgetting bad driving behaviour either (I have none), it’s about forgetting passenger behaviour, and that was about to become very evident.

We pulled back into my street, and pulled over to the left of the road, and stopped (hard, of course).  At this point, for the past 20 odd years of my life, I open the door and get out of the vehicle.  Safe in the knowledge that the driver will put on the hand-break, put the car in neutral, stop the engine, and only then get out of the car.  I’ve done it a lot, I really have.  Four times a day on weekdays and twice at weekends for most of my adult life.

It was the slight edge of panic in my instructor’s voice, which had been absent for all of the journey, that alerted me to the fact that although the engine was running, the car was still in gear, and the hand-break was off, that I was about to try and get out of the car.

I had removed my seat belt, and I was in the process of opening the door.  Luckily, I still had my foot on the foot-break and the clutch all the way down.

We laughed, as I applied the hand-break and turned off the engine, but it’s the laugh of people who realise they almost destroyed two vehicles.

I disembarked, got graded, and walked into the house.  At this point, two things were evident to me.

Firstly, I would not be writing a long blog post about my first driving lesson, because I could barely form any coherent thought beyond ‘must sit down’.

Secondly, having my right arm glued to my body for the entire 2 hour lesson meant my right arm-pit was utterly drenched in sweat.  My left arm, moving between the wheel, gears and hand-break had fared much better.

I had survived my first driving lesson at the age of 42.  It hadn’t been anywhere near as bad as I feared, and I had proven to myself that I could handle the basics of driving a four wheeled vehicle on the public highway without hitting anything else.

I needed a lot of tea.

Command line updates

I’ve been looking for a client to create WordPress posts from the command line. There’s a few, but nothing self contained or easy to install. A python script that doesn’t seem to work on Debian, or a VIM script that has some weird pre-requisites, etc. So I finally decided just to see what it was like using links (text only web browser), and it turns out – it’s not half bad if you’re adding a basic update.

So all that work to go full circle, and end up with console based web browser.

Running your own Dynamic DNS Service (on Debian)

I used to have a static IP address on my home ADSL connection, but then I moved to BT Infinity, and they don’t provide that ability.  For whatever reason, my Infinity connection resets a few times a week, and it always results in a new IP address.

Since I wanted to be able to connect to a service on my home IP address, I signed up to dyn.com and used their free service for a while, using a CNAME with my hosting provider (Gandi) so that I could use a single common host, in my own domain, and point it to the dynamic IP host and hence, dynamic IP address.

While this works fine, I’ve had a few e-mails from dyn.com where either the update process hasn’t been enough to prevent the ’30 day account closure’ process, or in recent times, a mail saying they’re changing that and you now need to log in on the website once every 30 days to keep your account.

I finally decided that since I run a couple of VPSs, and have good control over DNS via Gandi, I may as well run my own bind9 service and use the dynamic update feature to handle my own dynamic DNS needs.  Side note: I think Gandi do support DNS changes through their API, but I couldn’t get it working.  Also, I wanted something agnostic of my hosting provider in case I ever move DNS in future (I’m not planning to, since I like Gandi very much).

The basic elements of this are,

  1. a bind9 service running somewhere, which can host the domain and accept the updates.
  2. delegation of a subdomain to that bind9 service.  Since Gandi runs my top level domain for me, I need to create a subdomain and delegate to it, and then make dynamic updates into that subdomain.  I can still use CNAMEs in the top level domain to hide the subdomain if I wish.
  3. configuration of the bind9 service to accept secure updates.
  4. a script to do the updates.

In the interests of not re-inventing the wheel, I copied most of the activity from this post.  But I’ll summarise it here in case that ever goes away.

Installing / Configuring bind9

You’ll need somewhere to run a DNS (bind9 in my case) service.  This can’t be on the machine with the dynamic IP address for obvious reasons.  If you already have a DNS service somewhere, you can use that, but for me, I installed it on one of my Debian VPS machines.  This is of course trivial with Debian (I don’t use sudo, so you’ll need to be running as root to execute these commands),

apt-get install bind9 bind9-doc

If the machine you’ve installed bind9 onto has a firewall, don’t forget to open ports 53 (both TCP and UDP).  You now need to choose and configure your subdomain.  You’ll be creating a single zone, and allowing dynamic updates.

The default config for bind9 on Debian is in /etc/bind, and that includes zone files.  However, dynamically updated zones need a journal file, and need to be modified by bind.  I didn’t even bother trying to put the file into /etc/bind, on the assumption bind won’t have write access, so instead, for dynamic zones, I decided to create them in /var/lib/bind.  I avoided /var/cache/bind because the cache directory, in theory, is for transient files that applications can recreate.  Since bind can’t recreate the zone file entirely, it’s not appropriate to store it there.

I added this section to /etc/bind/named.conf.local,

// Dynamic zone
  zone "home.example.com" {
    type master;
    file "/var/lib/bind/home.example.com";
    update-policy {
      // allow host to update themselves with a key having their own name
      grant *.home.example.com self home.example.com.;
    };
  };

This sets up the basic entry for the master zone on this DNS server.

Create Keys

So I’ll be honest, I’m following this section mostly by rote from the article I linked.  I’m pretty sure I understand it, but just so you know.  There are a few ways of trusting dynamic updates, but since you’ll likely be making them from a host with a changing IP address, the best way is to use a shared secret.  That secret is then held on the server and used by the client to identify itself.  The configuration above allows hosts in the subdomain to update their own entry, if they have a key (shared secret) that matches the one on the server.  This stage creates those keys.

This command creates two files.  One will be the server copy of the key file, and can contain multiple keys, the other will be a single file named after the host that we’re going to be updating, and needs to be moved to the host itself, for later use.

ddns-confgen -r /dev/urandom -q -a hmac-md5 -k thehost.home.example.com -s thehost.home.example.com. | tee -a /etc/bind/home.example.com.keys > /etc/bind/key.thehost.home.example.com

The files will both have the same content, and will look something like this,

key "host.home.example.com" {
algorithm hmac-md5;
secret "somesetofrandomcharacters";
};

You should move the file key.thehost.home.example.com to the host which is going to be doing the updating.  You should also change the permissions on the home.example.com.keys file,

chown root:bind /etc/bind/home.example.com.keys
chmod u=rw,g=r,o= /etc/bind/home.example.com.keys

You should now return to /etc/bind/named.conf.local and add this section (to use the new key you have created),

// DDNS keys
include "/etc/bind/home.example.com.keys";

With all that done, you’re ready to create the empty zone.

Creating the empty Zone

The content of the zone file will vary, depending on what exactly you’re trying to achieve.  But this is the one I’m using.  This is created in /var/lib/bind/home.example.com,

$ORIGIN .
$TTL 300 ; 5 minutes
home.example.com IN SOA nameserver.example.com. root.example.com. (
    1 ; serial
    3600 ; refresh (1 hour)
    600 ; retry (10 minutes)
    604800 ; expire (1 week)
    300 ; minimum (5 minutes)
    )
NS nameserver.example.com.
$ORIGIN home.example.com.

In this case, namesever.example.com is the hostname of the server you’ve installed bind9 onto.  Unless you’re very careful, you shouldn’t add any static entries to this zone, because it’s always possible they’ll get overwritten, although of course, there’s no technical reason to prevent it.

At this stage, you can recycle the bind9 instance (/etc/init.d/bind9 reload), and resolve any issues (I had plenty, thanks to terrible typos and a bad memory).

Delegation

You can now test your nameserver to make sure it responds to queries about the home.example.com domain.  In order to properly integrate it though, you’ll need to delegate the zone to it, from the nameserver which handles example.com.  With Gandi, this was as simple as adding the necessary NS entry to the top level zone.  Obviously, I only have a single DNS server handling this dynamic zone, and that’s a risk, so you’ll need to set up some secondaries, but that’s outside the scope of this post.  Once you’ve done the delegation, you can try doing lookups from anywhere on the Internet, to ensure you can get (for example) the SOA for home.example.com.

Making Updates

You’re now able to update the target nameserver, from your source host using the nsupdate command.  By telling it where your key is (-k filename), and then passing it commands you can make changes to the zone.  I’m using exactly the same format presented in the original article I linked above.

cat <<EOF | nsupdate -k /path/to/key.thehost.home.example.com
server nameserver.example.com
zone home.example.com.
update delete thehost.home.example.com.
update add thehost.home.example.com. 60 A 192.168.0.1
update add thehost.home.example.com. 60 TXT "Updated on $(date)"
send
EOF

Obviously, you can change the TTL’s to something other than 60 if you prefer.

Automating Updates

The last stage, is automating updates, so that when your local IP address changes, you can update the relevant DNS server.  There are a myriad ways of doing this.  I’ve opted for a simple shell script which I’ll run every couple of minutes via cron, and have it check and update DNS if required.  In my instance, my public IP address is behind a NAT router, so I can’t just look at a local interface, and so I’m using dig to get my IP address from the opendns service.

This is my first stab at the script, and it’s absolutely a work in progress (it’s too noisy at the moment for example),

[sourcecode language=”bash”]#!/bin/sh

# set some variables
host=thehost
zone=home.example.com
dnsserver=nameserver.example.com
keyfile=/home/bob/conf/key.$host.$zone
#

# get current external address
ext_ip=`dig +short @resolver1.opendns.com myip.opendns.com`

# get last ip address from the DNS server
last_ip=`dig +short @$dnsserver $host.$zone`

if [ ! -z "$ext_ip" ]; then
if [ ! -z "$last_ip" ]; then
if [ "$ext_ip" != "$last_ip" ]; then
echo "IP addresses do not match (external=$ext_ip, last=$last_ip), sending an update"

cat <<EOF | nsupdate -k $keyfile
server $dnsserver
zone $zone.
update delete $host.$zone.
update add $host.$zone. 60 A $ext_ip
update add $host.$zone. 60 TXT "Updated on $(date)"
send
EOF

else
echo "success: IP addresses match (external=$ext_ip, last=$last_ip), nothing to do"
fi
else
echo "fail: couldn’t resolve last ip address from $dnsserver"
fi
else
echo "fail: couldn’t resolve current external ip address from resolver1.opendns.com"
fi[/sourcecode]

First lesson update

So I had planned to come home and write up my first driving lesson.  But quite frankly, to quote Egon, I’m terrified beyond the capacity for rational thought.

Also I’m very tired.

However, in summary, 2 hours – left turns, right turns (with lights and without lights), 4-6 round-a-bouts, 50mph on the A52, right turn onto the A52, 2 full-on stalls, a lot of terror and the driest mouth I’ve ever had.

Now I’m going to eat and gibber in the lounge.  Maybe I’ll write more detail later.  Maybe I’ll never be able to recall the full journey.

It’s time …

I’m 42.  I think, that I could have learned to drive when I was 17 in the UK, maybe 16 (it would have been 1987 or 1988).  Tomorrow is when I’m actually going to start learning to drive.  I have my first ever driving lesson booked.

So yes, I’m about 26 years late, but I guess it’s finally time.  As a kid, after the age of 4, our family never had a car, so I grew up using the bus or my bike, or walking, everywhere.  When I went to university, no one had a car, and I certainly never had the money to learn to drive.  Then, after I left and got jobs, I never felt like it was critical, and I relied on a lot of friends to drive me to work.

When myself and Grete first got together, Grete had already had quite a few lessons, we needed one of us to pass, didn’t have much money, and so we agreed she had the best chance.  She did pass, and she’s been driving us everywhere since, with skill, patience and well, even more patience.

I mooted the idea of learning a couple of years ago, and Grete got my provisional license sorted out (basically, I’m rubbish without her).  I’d had it since I was 17 (wishful thinking), but never updated the address, and then the whole complexity of that got to me.  Anyway, even with the sorted license, I still didn’t do anything about the driving.

This year though, it just seems right.  After all, I’m 42.  And 42 is the answer to life, the universe and everything.