Place the beans in a bowl of water and sort through them, removing any that look black or bad. Sometimes you will even find a little rock in there. Rinse them in cold water and place in a large saucepan or Dutch oven
Cover the beans with water. Bring to a boil. As soon as they come to a boil, drain them in a colander. Place the beans back in the pan and cover with cold water. (I start with about 3-4 inches of water over the beans). Season with salt and pepper. Bring to a boil, then reduce to a simmer. Cover them partially with a lid.
Add the ham bone, ham hocks, or large piece of whole ham at this time. Simmer the beans about 4 hours, stirring frequently and adding additional water as it cooks down. Cook down to desired thickness. The beans will thicken more when they cool.
When the beans are soft, but not mushy, stir in the chunks of ham, cover the pot and turn them off.
Serve with sides like cornbread, fried potatoes, chopped onions, and chow-chow.