Peel the potatoes.
Slice the onion and potatoes into thin slices.
Melt butter in a large skillet.
Add onions and potatoes and stir for 6-7 minutes.
Pour heavy cream over the potatoes and onions.
Sprinkle on salt and pepper at this point.
Bring everything to a low boil.
Place a lid on top and cook for another 6-7 minutes.
Preheat the oven to 350°.
While the potatoes are cooking, cut the ham into 1 inch pieces.
Once the timer goes off, take off the lid. Spread the ham over the potatoes. Gently push down into the mixture.
Sprinkle the shredded cheese over the top and bake in a 350° oven for 20 minutes until cheese is bubbling and golden brown.