Prepare the potatoes by boiling them in salted water for about 10-15 minutes until they are fork-tender. Drain and set aside.
Sauté the potatoes by heating butter in a skillet over medium heat. Add the boiled potatoes and cook for 5-7 minutes until they turn golden and crispy.
Add the protein (optional) by stirring in the cooked ham or bacon, cooking for another 2-3 minutes.
Whisk the eggs in a bowl with milk, salt, and pepper.
Pour the egg mixture over the potatoes in the skillet, stirring gently to scramble the eggs and cook them evenly. This should take about 5 minutes.
Add the cheese by sprinkling it over the top, covering the skillet for a minute to let it melt.
Garnish with green onions or chives and serve warm.