Monday, 24 December 2018

#livingInTheFuture: Things I couldn't do x years ago . . .

I've made a few tweets with the hashtag of #livingInTheFuture

This was inspired by some books I had when I was growing up which showed visions of what the future would be like in 20 or 30 years time. They showed everyone wearing spacesuit-like jumpsuits with jetpacks but also some prophetic visions such as 'huge TVs that can hang on your wall like paintings' or 'personal communicators that you can carry with you'.

Even things from Star Trek have come to pass - like talking to the computer or the personal comms device (again). There are problems with this as our current technology in some areas has overtaken that in The Original Series (TOS) with Kirk and Spock - why do the need a comms panel on the wall of the ship for example? No mobiles?

So, as I was paying with my smart watch at a drive through sitting in my electric-hybrid car, I thought 'I wouldn't have been able to do this a few years ago' so:

It's now 2018 - what can I do now that I couldn't have done in 2017 - tech wise? 2016? 2017?

(This is based on either roughly when these things were 'available to adopt' for regular people in the UK - or alternatively when I got one. Some of these may be biased towards certain vendors!)

Any other favourites? Comment away . ..

2018 - Unlock my hotel room with my phone without needing a key - Hello Hilton Digital Key
2017 - Drive to and from the dog-walking downs in an electric hybrid car using no petrol - Hello Mitsubishi Outlander PHEV
2016 - Use VR (easily) at home: Hello Sony PSVR
2015 - Pay for purchases with my phone or watch - Hello Apple Pay
2014 - Control the lights and heating in my house remotely using my phone - hello Homekit
2013 - Log into my phone using my thumb - hello Touch ID
2012 - Watch TV and play games in 3D - Thanks LG and Sony Playstation 3
2011 - Talk to my smartphone rather than through it - Hello Siri
2010 - Chat to the entire world 140 characters at a time - Hello Twitter
2009 - Use my mobile phone as an airline boarding pass - Cheers, British Airways
2008 - Read a book on a portable electronic device with eInk - Hello Amazon Kindle
2007 - Watch TV that I missed by downloading it from the internet - Hello iPlayer
2006 - Play games wirelessly, standing up using the whole body - Hello Nintendo Wii
2005 - Have my car navigate for me - hello mainstream SatNav/GPS
2004 - Use reliable two-way video calling over the internet with no charges - hello Skype
2003 - Be unable to cross the atlantic on a commercial flight in less than 3 hours - goodbye Concorde.
2002 - Keep most of my music on a small portable player - goodbye CDs, hello IPod
2001- Look things up on a user-generated online encyclopaedia - hello Wikipedia!

HA is NOT DR - no, really it isn't!

"Let's sort out the NFRs of this system!"
"OK, First we do HA/DR"
"Errr . .which one do you actually want to do first - HA or DR?"

Garratt's 1st Law of availability: HA is not DR
(Garratt's 2nd Law of availability: DR is not HA)

HA=High Availability

'Availability' is a measure of when the system is available. If you try and use the system (by making a request to it) then it's available if it can take your request.

'taking' the request can mean either processing the request, or accepting the request and processing it later. More on this below.

Usually, HA means that if one (or more) components of the system stop working, or are lost/destroyed or are taken out of service for maintenance, the system carries on running and therefore the availability of the system (the proportion of time it is available vs the proportion of time when it isn't) is high.

DR=Disaster Recovery

This is how you recover from a disaster which affects your system. More details on what a 'disaster' might be is discussed below.

A disaster may be the loss of many components or a large 'component' due to physical factors e.g. a flood or fire. (The usual example is 'what if a plane lands on a data center'? - this is not useful as it hardly ever happens. Floods, fires or power outages are much more likely).

A disaster may also be data corruption (deliberate or accidental), someone deploying the wrong version of an update or other non-physical cause.

These are not the same thing - HA is not DR!

In one sentence "A disaster is something that happens to your system that HA cannot recover from".

Assignment: Compare and Contrast HA and DR

To try and bring out some more examples, below are a number of differences between the two...

HA is usually active/active. DR may need to be active/passive

Everyone wants active/active. Why would you not want instant recovery? Why wait to have the recovery site 'recover from cold'.

Let's consider the following active/active situations that HA cannot recover from autonomously.

  • Replicated corruption
We have two copies of our data, one on each site. This protects us against loss of a site. If we make a change to data on site 1, the change is copied instantly to site 2.

If we corrupt the data on site 1, the corruption is copied instantly to site 2. Now both sites are corrupt - how do we recover?

Someone makes a bad software update on site 1. The change is copied to site 2. Now both sites won't start up. What now?
  • Split-Brain (Dissociation)
We have two copies of our data, one on each site. This protects us against loss of a site. If we make a change to data on site 1, the change is copied instantly to site 2. If we make a change on site 2, this is copied instantly to site 1.

Now let's say we lose the link between sites 1 and 2. We make a change to customer #123 on site 1. We now have two different copies of the data. Which is right? We then make another change to the same customer on site 2. Which is right now?

When we restore the link - which side is 'right'? We effectively have data corruption. How do we recover?

At this point, we have corrupted data or a corrupted configuration on both sites. We have nowhere to go.

If we had an offline copy or 'last known good' then we can shut down the 'live' system and move to the 'last known good' one. This may take some time to start up the 'passive' copy, but it's a lot easier than trying to fix corrupted data!

HA is usually automatic/autonomous, DR should have human intervention

The usual way of implementing HA is to have some redundant duplicates of components, for example application servers. If you need 6, have 7 or 8. Balance the load across all of them. If you lose one (or two) then the rest pick up the load. The load balancer will detect that one is 'down' and will not send requests to it.

Monitoring software can detect if a component is 'down' (e.g. if it has crashed) and can attempt to restart it. In this case, the load balancer will detect that it is 'back up' and route requests to it again.

All of this happens automatically. Even at 3am. Most of the time, the users will not even be aware.

DR is a lot more 'visible'. For things to be bad enough that a DR situation occurs, people have usually been impacted (although not always).

Often the system as a whole has been 'down' for a period, or is operating in an impacted state e.g. running slowly, not offering all functions, 'Lose one more component and we're offline' etc.

At this point someone needs to say 'Invoke the DR plan'. This can be obvious 'The police just called - Data Center 1 is flooded' or a judgement call 'If we can't fix the database in the next 30 minutes, we will invoke DR'.

The decision to invoke the DR plan is usually taken by a human. Many of the actions needed to invoke the DR plan rely on human actions as well.

HA usually has no user impact. DR may be visible to the users.

When a component fails in an HA system, requests are routed to other components and the system carries on. When components are maintained/patched/upgraded, they are done one-at-a-time so that the rest can carry on processing requests. Users are unaware of this.

In a disaster situation, it's usually visible. Requests cannot be processed (or not all requests can be processed). Responses may be incorrect. The system may be behaving unpredictably. One reason for invoking DR is that the system is not seen to be behaving correctly and needs to be 'shut down before it can cause any more damage'

HA is normally near-instantaneous. DR takes time (RTO)

HA is achieved usually be re-routing requests away from failed components to active ones. These components are 'standby hot' or 'active/active redundant'. There is no delay.

In a DR situation, requests may not be processed for some time - usually a small number of hours.

DR usually has a 'Recovery Time Objective' or 'RTO' which is how long it takes from when the system is down to when it has recovered.

HA does not usually result in data loss. DR might (RPO)

HA often switches requests between multiple redundant components. These components may have multiple copies of the application data. If one fails, others have copies. There is no data loss.

In a DR situation, there may be data loss. If data is copied asynchronously between sites, there may be a small amount of lost data (e.g. subsecond) if the primary site is lost. 

Where DR is invoked due to data corruption, the system may be rolled back to a 'last known good' data point which may be minutes or even hours ago.

In either of these cases, the system has a 'Recovery Point Objective' or 'RPO' which is the state or point to which the system is recovered.

This might be a time (usually equivalent to the state in which the system was last backed up) - for example: "System will be restored to the last backup. Backups are taken on an hourly basis". 

It might also be expressed in terms of data e.g. 'Last committed transaction' where transactions are synchronously replicated across sites.

Due to the seriousness of rolling back to the last backup and the resulting data loss, many organisations plan to fix corruption by using a 'fix forward' approach where the corrupted data is left in the system but is gradually fixed by correcting it. The corrections are kept in the system and are audited.

HA situations can happen regularly - DR never should.

If systems are built at large scale, individual components will fail. There is a 'mean time between failures' for most hardware components which predicts the average time a component will last before failing. Things like disc drives just wear out. We plan for these with redundant copies of components and we replace them when we fail. HA approaches mean that our users don't see these failures.

DR is something we hope will never happen. It's like having insurance. No-one really plans for a data centre to burn down once every 10 years, or for their systems to be hacked or infected with a virus. Like insurance though, we have DR provisioning because we never know ...

With HA, the system appears unaffected. In a DR situation, things might not be 100% 'Business as Usual'

HA usually recovers from a failure of a component. DR often recovers from the failure of a system.

If you have 10 components and you add 2 for HA, that doesn't cost so much. Building a whole other data center and a copy of all your components is expensive. So you may want to look at other approaches when in 'DR' mode.

Remember: DR should never happen. And if there is a good reason (fire/flood), it's perfectly acceptable to tell your customers 'Look, we've had a disaster, we are in recovery'.

If your house burnt down, you'd tell people you were living in a hotel and that you couldn't have them over for dinner, wouldn't you?

  • Reduced Availability
Simply put, this means that your system in DR state cannot process requests as quickly, or cannot process as many requests. It may be that your live system has 10 servers but your DR system only has 5 (remember - you don't expect it to ever be invoked).

  • Alternate Availability
This is where not all services are available as usual and you have made alternative arrangements.

For example 'We can't offer account opening on-line at the moment. Please contact your local bank branch'.

From an IT point of view, changes can be made. Following 9/11, the BBC put out a 'reduced graphics' version of their site with the emphasis on text and information and not video and graphics. This was due to an overload of their servers due to the number of people wanting information.
  • Deferred Availability

The 'Thanks for your request - we'll process it in a while and come back to you' approach.

This is where queueing mechanisms or similar are used. The system cannot handle all requests in real-time, but may be able to process some overnight when demand is low. It may be that you can't print the event tickets out immediately but you can send copies by email then next day for example.

Friday, 26 October 2018

Hot and Warm Desking: Why I have hot-desking problems and how to fix them

"Where do I sit?"
"Anywhere that's free - it's hot-desking here"
Thinks: OMG - not again . .

We're working to an agile world where people move teams and projects on a regular basis.

We have flexi-time and people work at home some of the time.

We have 'campuses' where there is no 'big office' and there may be multiple buildings in a 'metro-area' with shuttles moving between them.

We are living in the future!

1. Turn up at the office
2. Find the first desk with no-one in it (or working at it that day)
3. Sit down, unpack, plug in, start work!

What's the problem?

There are a number of problems with this approach...

Not all desks are created equal.

In an environment where hot-desking actually works, all the desks have identical facilities. If one desk has a monitor and a phone and 4 power sockets, they all do. This is key for things you need to actually do your work - if a desk is nearer to a window then that's nice but it doesn't, cosmically speaking, matter.

What does matter is if your desk doesn't have an external monitor but all the others do. Or if three of the power sockets have fused and don't work. Or if this is the desk where the chair leaks gas and you end up sitting on the floor after 30 minutes.

Solution: Make all hot-desks identical equipment-wise. Keep maintaining them so there isn't 'That desk with the dodgy monitor' or similar.

Not all desks are hot-desks - and you can't tell

Where it works, hot desks are marked as hot desks. Not by implication of 'hot desks are ones with no name tags on them' - this does not work!

What looks like a hot-desk turns out not to be: "10am: Excuse me, this is my desk." "Is it? How so?" "Well it is, it's assigned to me on the plan, which is in the filing cabinet in the basement next to the sign saying 'beware of the leopard'". Cue packing up, moving, finding no more desks . .

Solution: Label the hot desks explicitly. Ensure people don't take the labels off (it happens!)

"Warm Desks" and the culture of entitlement

"When everyone is special, no-one will be!" - Syndrome, The Incredibles.
(see also "I think I deserve an office, so I've booked this meeting room all day. Every day.")

Some people don't like hot-desking. That's fine but they then start to subvert it. They start setting up 'their' desk with all their equipment and trinkets such as family photos, favourite coffee mug, pot plant etc on it. This becomes 'the desk they always sit at' and eventually 'Derek's desk'. 

Solution: Heartlessly enforce the 'clean desk' policy overnight or first thing. ANYTHING that's not the 'standard hot desk equipment' gets removed and the 'offender' needs to go and get it back.

"Pre-Booking" or "German Towels" (see also "Warm Desks")

This is not as bad as 'Warm Desks' but this is the "OK, I'll be in tomorrow - I'll just leave my laptop here overnight to 'book' my desk for tomorrow. For extra security, I'll lock it to the desk.." approach.

Solution: Again, enforce the 'clean desk' policy. Also provide lockers so that if people want to leave equipment without taking it home, they can.

The 80-20 rule: We only provide desks for 80% of our people

This is the main drive for hot-desking: reduction of costs. Why have 'Andy's desk' if he's off at customer sites 4 days per week? He can hot desk when he comes in on a Friday.

No he can't - not if there isn't a desk available. Or he keeps getting shunted from desk to desk as the 'That's my (warm) desk!' people roll in.

There may be free desks that day, but they have names on them. They're not 'hot desks'. It might be possible to sit there, but how do you tell? Also, they're full of people's trinkets and there is the 'You sat at my desk and moved my monitor! How dare you???' culture - more common than you might think!

Solution: If people with assigned desks are not going to be in, ensure people can find that out. Make sure 'assigned' desks are actually usable by people 'borrowing' them

Solution: Have a 'If there's no desk, you can go home!' rule. It's not your fault that you don't have the equipment to do your job.

"This desk assigned to project Caribou"

This is a combination of wanting team members to sit together (good) and micro-cost centering where every desk needs to be billed to a project or team (bad).

If you're going to do this, why not do it for toilet stalls as well? Or seats in the cafeteria?

Solution: Have team 'areas' not desks. If project 'moose' has lots of people in that day and fills their spaces, then they overflow into project 'warthog' desks. Good grief, it's only a desk!

"Hotelling" or "Pre-booking properly"

In theory, this is a great idea and it can work. Before you come to the office, you go online and see if there are any free desks. If there are, you book one for the day - kind of like booking meeting room - or a hotel room, hence the name!

The problem is, just like booking meeting rooms, this has issues

"I'll book my desk for the week" - great! Except you go to visit another site on Wednesday and you decide to work from home on Friday. You don't cancel your reservation - why would you?

And why not just book your preferred desk for a month? That then becomes 'Derek's Desk'. You could even do it to a meeting room and then you have your own office!

Solution: Treat hotelling like a real hotel. If you don't turn up and you don't cancel before 6pm, you get 'charged' for your desk.

Also, you just book a room in a real hotel. The hotel decides which actual room you get. Allocate desks randomly and move people around. This avoids 'warm' desks.

OK, you don't get charged real money when you book desks at work, but you can use 'booking tokens'. Make people book their desk every day, the day before. They need to electronically 'spend' their booking 'token' to book a desk.

To get the 'token' back, they have to actually turn up and use their desk. Or cancel the reservation.  If they don't, they can't get the 'token' back for the next day and they need to take their chances with what's left.

e.g. On Monday they book Tuesday. They decide to work from home Tuesday but don't cancel. They then try to book Wednesday but they don't have a 'token' to do it and they need to run the hot-desk gauntlet on Wednesday... at which point they get their 'token' back.

If you turn up without a reservation, you can look at the system and see what's free. If there is nothing free (see 80-20 rule) you can make other arrangements. With on-line hotelling, you can check before you leave home!

Saturday, 6 October 2018

Driving in America - my personal guide for Brits driving in the USA

Drive on the right!

That seems to be the standard advice when you look up 'What do I need to know when I drive in the USA?'. After all, everything else is in English, right? How hard can it be?

This is a guide for Brits/UK people who are travelling to America and are going to be driving. If you are an American, all of this should be obvious to you. It wasn't to me! Also, if you are coming from another country e.g. Australia or RSA, things like 'Americans call it x, we call it y' etc might not apply to you.

Note: This is MY INTERPRETATION AND EXPERIENCE. This may be wrong. This is not legal advice! States have 'driver's handbooks' on the internet - you can look them up to find out what the actual rules and regulations are - not just what some guy told you on the internet!

Also Note - traffic laws are defined at the STATE level. Laws can be different from Florida to California to Texas - check first!

My Top 10 "You need to know these - it may save you trouble" hints

(These are the 'Wow - what do I do here?' or 'Avoid getting a ticket/fine' ones)

1. The 4-Way / All-Way / Stop-sign intersection

At a 3 or 4 way crossing/crossroads, you may see a sign 'STOP' sign with 'All-Way' or '3-way' on it. For this, you stop, then you go in the order you arrived at the junction. If there were people stopped at the line before you, let them go then it's your turn. After that, everyone goes in order of arrival.
For some reason, most driving guides don't tell you about this one.

2. The 4-way with no stop signs and the parallel white lines 1 meter apart.

You may come to a cross junction with parallel white lines about a meter (3 feet) apart on all the roads. This means you don't need to come to a stop, but if you need to know who goes first, the 'go in order of arrival' often applies.

3. You can turn right at a red light - but there are rules!

In most places, if you come to a complete stop first, you can turn right at a red light - as long as you are 100% sure there is nothing coming. If in doubt, just wait. In my experience, if you want to wait for the light to turn green, then people don't honk their horns at you and just wait.
From what I understand, if you turn right on a red light, if there is an accident, it's pretty much your fault.
You can turn left on red but only into a one-way street. I've never tried this.
Look out for 'no turn on red' signs - this means what it says.

4. Move over when passing a stopped emergency vehicle on the hard shoulder

If you see a police, fire or other emergency vehicle stopped on the hard shoulder, then move over one lane to the left so you have at least one clear lane with no traffic between you and them. This is a good safety thing, but it's a legal requirement in many states.

5. Don't pass a school bus IN ANY WAY if its red lights are flashing

If you see one of those yellow school buses stopped, with its red lights flashing, you must NOT pass it. This doesn't just mean no overtaking it, it means you can't drive past it even if you are both facing opposite directions. The bus flashes its red lights (and often puts out a red STOP sign) when unloading children. This is a safety thing. They are really hot on this. Don't even think it. Not even at 1mph.

6. Indicate all lane changes on highways and freeways.

I indicate to pull out in the UK, but I don't always indicate to 'pull back in' when I've overtaken something on a motorway and I'm away down the road. You need to indicate any lane change in the US as it's classed as changing lanes, not 'pulling back in'. I've actually been ticketed for this - it was a genuine 'What did I do wrong, officer?' moment.

7. Don't park next to a fire hydrant - or red lines on the kerb

Pretty much what it says - fire hydrants may not have kerb markings next to them, but you still can't park next to one.

8. Put your lights on when it's raining

How heavy does the rain need to be? The usual advice here is, if you have your wipers on, put your lights on.

9. HOV or diamonds painted in a lane means car-shares only

If you have more than one person in the car (sometimes you need 3 people but this is shown) then you can drive in these lanes. HOV means 'High Occupancy Vehicle'. This is why these lanes are often empty when the other 5 (or more - US freeways can have LOTS of lanes) are jammed with traffic moving at 2mph. If you're on your own (and 99.9999999% of Americans are driving alone, then you can't use them)

10. US Police pull up BEHIND you - and want to see your hands and your documents!

If you get pulled over, US police will do it by coming up behind you and switching lights (and sometimes a quick blast of the siren). Keep an eye on your mirror - it's not clever to be driving along ignoring them. If they're behind you, it's you they want to pull over.
When you stop, they'll pull up behind you. Keep your hands on the wheel. Although you MUST carry your documents (License, rental details, insurance etc) in the car with you, don't duck down and try and get them. The police might think you're going for a gun! Wind down the front window then keep your hands on the wheel. One tip, Americans do not understand sarcasm. Policemen especially don't...

Useful Terms and definitions:

  • Pavement: This is what Americans drive on! Pedestrians walk on the sidewalk. You may see signs saying 'drive on the pavement'. This does not mean what you first think it does!
  • Sidewalk: This is what Americans walk on - what Brits call the pavement.
  • Median: The part between the two directions on a freeway. They tend not to have barriers/armco - just big bits of grass. Even though it looks possible, don't be tempted to U-turn over it - not allowed!
  • Semi: This is a large articulated truck. You might know it as an artic. Note that Americans don't know what a 'lorry' is - they call them trucks - both the small pick-ups and the huge 50ft trailers.
  • Trunk (of a car): Brits call it the boot
  • Hood (of a car): Brits call it the bonnet
  • Auto: A car. Americans tend not to call cars cars: They tend to use 'car' for a tram or railway carriage.
  • Shifter: Gearstick for an automatic car. 'Driving Stick' means to drive a manual car - they don't have many of those. 99.999% of cars are automatics.
  • Parking meters: "quarter"=25c, "nickel"=5c, "dime"=10c. confusingly, dimes are smaller than nickels.
  • "Misdemeanour" and "Felony" - one is more serious than the other. Don't try and get either.
  • License Plate: Brits call it a number plate.
  • "Fender Bender" - a Fender is what Brits call a Bumper. A Fender Bender is a low speed collision. Some states have signs saying 'Fender Bender? Move vehicles from travel lanes'
  • "Travel Lane" - a lane on a freeway that isn't the hard shoulder
  • Freeway: What Brits call a Motorway.
  • Interstate: A type of long distance freeway that often goes across multiple states hence the name.
  • Highway: Typically just a road, although it can mean effectively a dual carriageway.
  • Gas: Short for 'Gasoline': Brits call it Petrol. Diesel is still diesel although you don't see it very much.
  • AC or A/C: Air-Conditioning, not Alternating Current. You might be advised to 'turn off AC' on  steep hills.
  • Gas Station: Petrol Station or Garage. Americans keep their cars in the garage, they don't put petrol in at a garage. They don't mend their cars in garages either. If an American needs their car fixing, then it's 'In the shop'.
  • Shops and Stores: To an American, a shop is a workshop. What Brits call a shop, Americans call a store.
  • ZIP code: What Brits call a Postcode. US petrol pumps will ask for your ZIP code. You don't have one. Therefore you can't pay at the pump.
  • Stop light: What Brits call a brake light (on the back of the car). This can also be confusing as some call a red traffic light a 'Stop light' as well. . .
  • Limey: Brit, English or UK person - from when the British navy gave limes to sailors in an attempt to prevent scurvy. I've never been sure if this is an insult or not - kind of like calling an American a 'Yank'. Why do you need to know this? A policeman may call you one . .

Driving an Automatic

If you're driven a European automatic, it's pretty much the same - although bear in mind that the gearstick ('Shifter') may be on the steering column. For the rest of you:

There is no clutch. The car changes gear for you. When you slow down and stop, it engages an 'automatic clutch' (simplified explanation) - don't worry, it won't stall. You can stop with your foot on the brake and the engine will keep running fine.


Automatics have a thing called 'surge' or 'roll'. If you are in 'D'rive and you take your foot off the brake, it will likely roll *forward*. Don't forget this, park in a car park, take your foot of the brake and curse as you roll forward into another car!

Quick 'I've just got off the plane and need to drive to the hotel' guide

Get in. There is no clutch. You don't need it. Foot on brake. Make sure shifter is in 'P'. Start engine. Keep foot on brake. Press lever/button on shifter and put into 'R' to go backwards or 'D' to go forwards. Foot off brake (car will start rolling in the direction you want - beware) and onto accelerator.

Accelerator to go faster. Brake to slow down and stop. When you stop at lights, in traffic etc, just keep your foot on the brake. Don't bother about 'Neutral' - no-one ever does.

To change from 'R' to 'D', foot on the brake, press lever/button and move the shifter.

When you get to where you're going, stop, keep foot on brake, put shifter in 'P', turn off engine.

More detailed guide and explanation:

To move the shifter, you usually need to press/pull the lever or button on the shifter. Some combinations (often R to D) don't need you to, but doing it every time isn't a problem.

To get in and out of 'P' (Park) you need to have your foot on the brake. You may need your foot on the brake to start thee engine

P=Park. Shift to this to start the engine and when you park the car and stop the engine. Leave the car in 'Park' not 'Neutral'. Often you can't get the key out without the transmission being in Park. If you stop the engine and can't get the key out, one reason is you might still be in 'D'

(Note: On some cars, 'P'=Park is a separate button off the shifter. On others if you stop at a low speed from reverse, the car will be 'helpful' and put itself in "P" when you stop)

D=Drive / Forwards. Use this to go forward. Just press the accelerator as usual. The car will change gear for you. Just pretend you have one huge gear if you like and ignore the rev-counter.

R=Reverse. Just what you think it is - like drive in the other direction. Be wary - reverse in an automatic can be faster than in a manual.

N=Neutral. I don't think I've ever used this! Unlike a manual (or 'stick shift') you don't start the car in N=Neutral, you use P=Park. Don't bother putting the car in neutral at traffic lights etc - just keep your foot on the brake. Neutral is really used for towing/pushing the car.

L and/or 4, 3, 2: These are your Low gears - used so the car can't change up further than the gear you've set it in. Used to 'engine brake' going down steep/long hills- you may see signs saying 'engage low gear'. Don't bother using these in normal driving - leave it in Drive.
(You may have 'flappy paddles' to move into 4,3,2 etc in some cars. In others you push the shifter left and right).

Freeways/Interstates and multi-lane highways

Lane Discipline - or lack of it

You can usually pass on both sides i.e. in any lane. Don't do it, but watch out for people weaving through traffic at speed - keep an eye on your mirrors.
Some states try and have a 'keep right unless overtaking' policy i.e. trying to drive on motorways a bit more like Europeans. This doesn't seem to have caught on with the US driving population.

Speed, Speeding and '5 over'

Helpful car rental staff sometimes say 'you're good for 5 over on the freeway' - which means if the limit is (say) 55 then you're unlikely to be stopped for doing 60 or less. This is not formal legal advice!

In some states, you must keep up with the traffic flow. This can be scary if all of the traffic is going 10mph over the speed limit!

In general, follow what everyone else does - which is a good guide to most situations!

In some states going slightly over the limit is a misdemeanour and a lot over is a felony. You don't want to be stopped for either.

HOV lanes / "Diamonds" painted on the road

See above


Some roads are toll roads - but you can't pay cash at all of them e.g. the Golden Gate Bridge in San Francisco. You'll need to go online and pay the toll within a certain period of time. Don't think just because you're in a rental car you can ignore tolls - Avis, Hertz etc will chase you for them.

Speaking of rental cars, some have a thing called Plate Pass or similar. This means that you can just drive through toll gates (especially in the 'Tag' or 'Express' lanes) without stopping and your car license plate is read and recorded. This is sent, along with the bill, to the car rental company who will charge your credit card, together with a convenience fee of around $3 to $4 per day. Be aware that once you've gone through one toll, they will charge you the convenience fee for every following day until you give the car back - whether you've used toll roads or not.

Be aware, if you use plate pass for one $0.50 toll on day one of your 14 day holiday and never again, you could get a bill for nearly $50!

If you want to pay cash, keep a supply of quarters and $1 bills ("Singles") handy.

Tailgating and undertaking

Americans seem to drive a lot closer behind you on freeways than Brits do - it doesn't necessarily mean they are trying to 'push past'. A lot of the time, they are very patient and will either wait for you to pull over or just undertake you. Don't panic when someone undertakes you - it's normal.

Disappearing lanes and 'Right Lane MUST exit'

You might think that freeway driving would be relaxing but if you're in the right hand lane, watch out for the 'Right Lane MUST exit' (usually in yellow background) signs. The lane that you are in can suddenly be the 'you MUST turn off at the next junction' lane. You might have been in this lane for 100 miles - but nope, now it's going!

Keep alert. You can end up leaving freeways without intending to - and it can be hard to get back on.

Canadian comedian Kelly Monteith has a line "Hey, let's get 'em going 80 in the fast lane and then put up a sign saying 'lane ends in 10 feet'" - sometimes this seems like it's not far from the truth!

Fuelling up / Putting Petrol in

How hard can this be? Very!

Diesel is Green, Petrol/Gas is black on the pump nozzles/hoses!

This is the opposite way around from Britain! Don't get them mixed up. Most of the time you won't even see diesel and all pump hoses/nozzles will be black.

Fuel grades 87/89/92 etc

There is a LOT of info about this, but in general, just choose the cheapest one/lowest number, especially if you have a rental car. For those who remember 2, 3 and 4 stars, it's not like that. Nearly all cars run on 'regular' or the cheap one.

Lift up the leaver on the pump / pushing the fuel grade button.

If you're pulling the trigger but no gas/petrol is coming out, you often need to pull up a metal lever on the pump that is under where the nozzle goes when it's hanging on the pump. Push the lever back down again when you've finished. Note that when being helpful (and they nearly always are), Americans pronounce 'Lever' as 'Leh-Ver' not 'Lee-Ver' when they're telling you want to do.

Newer pumps have only one nozzle and you press a button with the number of the grade of fuel you want before you can fill up. Pick the lowest/cheapest one!

Paying with a credit card at the pump/pre-paying for fuel.

Most American petrol pumps won't let you pump fuel unless you've paid first or authorised a credit card.

If you try and pay at the pump with a UK credit card, chances are it won't work as it will most likely ask you for a 5-digit Zip code (What we call a post code). You won't have one of those as you don't live in the states.

Not all pumps ask for a Zip code but most do. The internet will tell you to enter 00000 or just the numeric bits of your UK code with zeroes on the end e.g. 12700 for W12 7RJ. They are usually wrong. It doesn't work.

Go inside and pay the cashier in advance (note the pump number). Come out and fill up.

Some US chains (ArCo am/pm for example) don't take credit cards - check first.

Gallons and US gallons.

Americans price and dispense fuel in gallons, not litres. A US gallon is not the same as a UK/ Imperial gallon! 1 US gallon is .82 UK gallons or 3.78 litres, not 4.55 litres like a UK gallon. Give them *some* slack when your car computer says you're only doing 20mpg.

Prices/Discount for cash/Sales Tax

Most gas stations seem to have a different price for gas, usually a few cents per gallon. The price you see on the sign might not match what you pay - they don't always put both prices on the big sign either.

You don't need to add sales tax to fuel, it's already priced in. Unlike shopping in a US store where you find what you pay is 7 to 8% more than the price on the shelf - unless you're in Oregon or a similar no-sales-tax state.

Fuel Economy

Even though US gallons are smaller, US cars can be really uneconomical compared to what you're used to, especially if you drive a small car, a diesel or both! Coming from a car that easily does 55 to 60mpg, seeing '22mpg' on the fuel computer was alarming.

Don't worry - they really are this inefficient - it's why fuel is so cheap!

Attendant service in Oregon and New Jersey** (check these states)

If you're on Oregon or New Jersey then you don't pump your own fuel. In fact you're legally not allowed to - an attendant must do it for you. Unlike every other person who does anything for you in
the US, people don't usually tip them although you can if you want.

Traffic Lights & Pedestrian Crossings

Don't run over pedestrians when the light goes green

This is not just general advice (See "Drive on the pavement") - there is one trick that the US shares with continental Europe and can really freak out Brits.

You wait at a red light to turn right (for whatever reason). The light goes green. As a Brit, you gun the engine and take off. WTF? There's a pedestrian in the middle of your road!

Yes, this is somehow by design: When your light goes green, so does their pedestrian crossing light for the road across yours. So you get a green to go right and they get a green to cross the road that you're turning into - at the same time. This is by design. I've no idea why but watch out for pedestrians when your light goes green.


Americans call the orange light 'Yellow' or 'Orange' - they use 'Amber' to refer to the jewellery/resin.

There is no Yellow/Amber light between Red for stop and green for 'Go' - it goes straight to green! The first time you'll think 'Did I miss Amber? Was I not concentrating?' nope, it doesn't happen.

Amber does come between green and red when it changes and you have to stop.


America is great for parking - it's not like Britain where using your car is a crime...

Parking Meters

This used to be a 'keep your car full of quarters and dimes' but many parking meters now take credit cards - and they don't need a ZIP code either. Just find a free one, put money in / use your card and park up

Reversing in

In general, Americans don't - and they have really useful herringbone/slanted spaces to help you out. Some car parks actually have 'don't reverse park' - this is because people aren't very good at it and it's to stop bumps and scratches.

Fire hydrants / Red paint on Kerbs

Don't park next to one, even if there is no sign - you might get towed away. Don't park next to a red painted Kerb either.

'Validated' Parking

Although most American shopping parking is free (as in no cost) some shopping malls (shopping centers) do charge you - and it can be expensive, especially in cities.

Validation means that when you buy something or use a restaurant, you can ask them to 'validate' your parking - they will process the ticket so that you don't have to pay (as a 'Thank you' for using their establishment). There is often a time limit on this (e.g. max 3 hours) so check the notices


(or "I couldn't find anywhere else for it to go")

Red Indicators

American cars often have red indicators where we would have orange. Some cars have one light for the night lights, the indicator and the brake light (Americans call it a 'stop light'). It just gets brighter or flashes. Sometimes I fail to notice a red flashing light as an indicator - make sure you don't. Some cars (especially foreign makes) have orange indicators.

Racing off at the front

Contrary to movies and big 'muscle cars', Americans don't seem to do this. In the UK quite often two cars next to each other on the front row of traffic lights will see who can drive off first and fastest - especially for men.
Americans just don't seem to do this - if you rev up and take off, you'll be on your own - or maybe with a policeman. This can be useful if you find yourself in the wrong lane and at the front - it's often possible to out-accelerate everyone even in a piece-of-junk rental car if you need to move over lanes.

Drinking and driving - and beware of alcohol cans and bottles in the car

You wouldn't be so stupid as to drink and drive - but your passengers might. Don't! or at least check the state rules. Often, you can't have opened containers/bottles/cans of alcohol in the car - even if no-one is drinking them. In some states, you can't even have closed containers - any alcohol must be locked in the boot/trunk. Really! Check the state law.

Thursday, 30 August 2018

Writing Technical Documentation like Van Halen!

I write a lot of technical documentation - I've actually written three IBM Redbooks (not all on my own I must add).

Most of my documentation is for customers. Sometimes they ask for it. Sometimes it's 'Just what we do' and I can feel the agile manifesto running away in disgust. Sometimes it's so that I've got a record for future reference.

Most importantly is when it sets out what we are going to do and how we are going to do it. So we can all agree and challenge any approaches etc we don't like.

Question is - does anyone read it? If so, to what level of detail?

Some of the documentation is quite 'powerful' with big implications on some words. Architectural decisions are a great example of this.

"We will (not) encrypt the data in the database as the risk of it leaking is (not) significant"  - adding the words in italics is the difference between 'Your data was secure when we got hacked' and 'We're on the front page of the news!'.

You can run page-turner sessions where you walk through the decisions. You can ask people to read and approve (say) 5 per week. But how do you prove they've actually read it?

(And I care that they did read it - I'm not trying to pull the wool over anyone's eyes here and hope they don't notice something I've just 'slipped in')

Enter the 'Brown M&M clause' approach.

Van Halen are a rock band who used to have a rider of 'M&Ms - WARNING: NO BROWN ONES!' in their contract for performing a concert at a venue.

The rumour was that if they turned up and there were no M&Ms - or there were brown ones present, they could just cancel the concert for contract violation.

The truth was that if there were brown M&Ms - what else had the venue not read? Was the voltage and ampage correct? Could the stage bear the weight? Could they even get their trucks of equipment into the venue? Some of this stuff is important.

So if there were brown M&Ms, they assumed the contract wasn't read - and then went through and checked everything themselves as it's the only way to know. It's true - see here:

So I use the same technique. Examples are:

Data retention: In the event of the disk becoming over 90% full, data pruning will be performed of the historical order records. <Brown M&M>Customer historical records will be deleted based on reverse alphabetical order of their first names, ignoring order dates. In the event a customer has no first name, it will be assumed to be 'Simon'</Brown M&M>

Due Diligence: For every new account to be opened the following due diligence checks will be performed in the folllwing sequence by the BPMN process flow: (1). KYC, (2) KYB, <Brown M&M> (3) KFC</Brown M&M> 

(For those without a banking background, these are anti-fraud legal checks: KYC=Know Your Customer, KYB=Know Your Business. KFC is, of course, Kentucky Fried Chicken)

Both of these have passed at least one review, sometimes more!

OK, it's slightly silly and it brightens up a dull day, but does it matter? Yes it does. We all laugh at warnings that say 'Coffee may be hot' or 'Peanut butter may contain nuts**' but most people don't read most documentation.

Who reads the service agreement on public WiFi for example? There is the case of the agreement whose brown M&M is that you sign over your eldest child! Really!

If it's important, keep it short. Keep it clear. Explain it. Check people have understood it - maybe by asking them what their favourite M&M colour is!

**Peanuts aren't nuts - they are legumes...this is a subject for another day...

Why I want someone else to own my career

"You own your own career"
"You should own your own career"
"You can own your own career"

These three sentences are subtly different in words but hugely in the impact for you as an employee of a company.

Every noticed how successful sports people have two managers? (e.g. footballers).

Their first manager is the one they work for. They do what they are told by this manager. This manager hires, fires decides pay rises etc. You probably have one of these if you are a company employee. This manager works for the football club, cricket team, formula one team or whatever.

Think Jose Mourinho (Man Utd), Toto Wolff (Mercedes F1) or Christian Horner (Red Bull F1) if you like.

The second one is their manager that works for the sports person. This person finds them work, negotiates their contracts and pay rises, manages their image rights, gets them product endorsements e.g. shoes, clothes etc. Sometimes this person is referred to as their agent - for example in acting. They may have more than one of these.

The key thing here is that the sports person concentrates on the sport. They score goals. They win races. They train to score more goals or to drive faster. They concentrate on what their company is paying them for. They work on delivering business value.

They might be the best in the world at what they do - or are trying to be. Conversely, they might be terrible at managing their career. This doesn't matter - they have someone else who is very, very good at it to do it for them.

"Ah" I hear you cry: "You should have a career mentor!".

Nope - that's not the same thing at all. Does my career mentor apply for jobs for me? Do they write my CV? Do the join me in performance appraisals? Do they negotiate salary rises and promotions? No - they give advice as to how I can do that myself.

I admit I'm terrible at that sort of thing - and although I'd like to be better at it (because being better at it might mean I'd be further up the career ladder), I have absolutely no interest in becoming the kind of person who is better at it.

I want to be better at architecting, designing and implementing solutions for my customers. Faster at delivery with higher quality and better responsiveness. Better at mentoring and coaching my team. Better at driving business value. Better at making my customers happier.

So, I'm going to concentrate on that - and I'm also going to go and find someone to manage my career for me. If it's good enough for Lewis Hamilton . . .

Thursday, 23 August 2018

Garratt's first law of . . .

Garratt's 1st law of Agile states:

"Agile is a good thing. It's endorsed by major companies and analyst firms. Lots of people are using it."
"Agile projects get funding - usually for the above reasons"
"My project needs funding"
"Therefore my project is Agile"

See also Blockchain, Containers, Cloud, SOA, BPM, Cognitive...

Is your project using the right technologies and methods for the right reasons?

See also Garatt's 1st corollary of Agile:

"Having agile skills is good for my career and pays well"
"I need Agile on my CV (resumé)"
"Therefore we will use Agile on this project"

See also Blockchain, Containers, Cloud, SOA, BPM, Cognitive...

From an alternate perspective, Garratt's 2nd corollary of Agile:

"Many people and companies want to use Agile and therefore have budget for it."
"I need to sell my products and services"
"Therefore my products and services are Agile!"

See also Blockchain, Containers, Cloud, SOA, BPM, Cognitive...