Dash some white wine vinegar into a pan of water and slowly bring to the boil.
Melt the butter in a wide heavy bottomed pan then add the onion and potatoes and cook until the onion is crisp.
Add the bacon and cook until golden, then crumble in the black pudding, moving regularly until it darkens.
Crack the eggs into the water pan on a steady low rolling boil. Poach for 3 minutes. Meanwhile toast and butter the sourdough.
Stir the fresh spinach into the hash and season to taste. Divide the mixture between four bowls and top with two eggs each. Serve with the toasted sourdough and some brown sauce.