David,
Couple of points,
1) as already stated, your current programmer has the common terminals already connected to live, you'll need to jumper these yourself on the nest
2) The numbering betwixt nest and your programmer is slightly different. Programmer terminal 1 is nest terminal 4, programmer 2 is nest 1, programmer 3 is nest 6 and programmer 4 is nest 3. You need to connect nest 2 & 5 to live.
3) The nest is hugely annoying, each terminal has room for 1 wire maximum, most of yours will need to fit two and the live terminal will have three in it. You'll struggle here, if I were you, I'd use a single socket box or similar to do the terminations into choc bloc type connectors, and then mount the nest receiver on top of that, you'll NEVER get all the wires you want into the nest unit.
4) if you have a room stat (I presume you do as it looks from the wiring that you have the honeywell Y plan with a 3port mid position motorised valve) you'll want to bridge it out, or else it'll be in series with the nest heating supply and will confuse matters somewhat. Some (most) roomstats have three wires (one is a neutral for the hysteresis heater) and so you'll need to locate which two are the switch contacts and connect them together.
5) you can actually power the nest using the existing roomstat cabling, but you need to (obviously!!) disconnect the mains supply to it, you then use the T1 and T2 terminals on the nest receiver to send power to the nest. Otherwise you need to plug into a socket with the supplied micro usb lead (which can look unattractive if you wall mount it)
Good luck. The nest is a great bit of kit, but the wiring arrangements are poorly thought out in my opinion, screw terminals like on your old school programmer are much nicer to work with.
Hope this helps
Dan