Grate or shred the potatoes on a box grater or food processor, and place them immediately into the cold water to prevent oxidation. Drain and rinse well until the water runs clear.
Remove as much liquid from the potatoes as possible using your hands, a kitchen towel or a potato ricer (you might need to do this in batches). Then transfer to a clean kitchen towel to dry them up a bit more.
Transfer the grated potatoes to a large mixing bowl and add the rest of the ingredients (except the oil). Stir with your hands until well combined.
Heat the oil in a large skillet or frying pan and spread the potatoes over the skillet in an even layer, then press them down with a spatula. Let the potatoes cook over medium-high heat, undisturbed, for about 2 minutes.
Stir and press them down again, and cook for 2 more minutes. Repeat this step in 2-minute intervals, flipping in sections, until golden brown and crispy (about 4-8 more minutes).
Transfer to a plate (lined with a couple of layers of paper towels to absorb excess oil), and serve immediately or keep leftovers in an airtight container for 4-5 days.
Notes
Nutritional information has been calculated by using 3 tablespoon of extra virgin olive oil.