Drop the potatoes into a pan of boiling salted water and cook for 5-6 minutes until almost tender. Drain and set aside.
Heat the oil in a deep frying pan over a medium heat. Add the mustard seeds and cumin seeds and cover with a lid until the popping of the mustard seeds subsides.
Uncover the pan, add the onion, ginger and dried chilli flakes and cook for 6-7 minutes until soft but not browned.
Stir in the turmeric, ground cumin and coriander and cardamon seeds and cook for a minute . Add the potatoes, water and salt and leave to simmer gently for 10 minutes until the potatoes are tender and the liquid has reduced.
Stir in the tomatoes and lemon juice and cook for 2 minutes more. Stir in almost all the coriander then cover and keep warm over a low heat.
Now poach the eggs. Bring 2 " water to a boil in a wide shallow pan. Add 1 1/2 tsps vinegar and 1/2 tsp salt per 2 litres of water. Reduce the heat so that just a few bubbles are rising from the base of the pan.
Break in the eggs and leave them to poach gently for 3 minutes. Lift out with a slotted spoon and drain briefly on kitchen paper.
Spoon the potato curry into the centre of warmed plates and top with a poached egg. Season the eggs with a little salt, scatter over the remaining coriander and serve.