Bring a large pot of salted water to a boil and get a big bowl of ice water ready beside it.
Cook the spinach (blanch) in the boiling salted water and stir frequently to keep it submerged in the water. Cook for about 3-5 minutes or until the spinach is completely soft and pulls apart easily.
Immediately refresh the spinach in the ice bath and stir until completely cooled.
Strain the cooled spinach from the ice water and squeeze out any excess water.
Starting on low speed, blend the spinach with the oil, ice cubes, salt and pepper. Once the blender is properly pulling everything together, increase to high speed and blend for about 1 minute. If the blender won't spin, add more olive oil until it does.
Add about 3-4 tbsp of the spinach puree to 3 eggs (about 1 tbsp per egg). Mix in a bowl and whisk together but don't season yet.
Heat the ham in a little butter or oil in a small pan and fry until warm.
Get a cast iron or non-stick pan to medium-low heat. Add the green egg mixture and reduce the heat to low. Stir frequently with a spatula until the eggs are cooked. Season with salt and pepper at the end.
Serve immediately with the ham and enjoy!