Rinse the beans and pull out any bad/shriveled ones. Place in a large dutch oven with ham bone and water.
Bring to a boil. Reduce heat and simmer, covered, for 3 to 3 & 1/2 hours, stirring occasionally.
Remove the ham bone and any large chunks that fall off. Don’t worry about small ones. Allow to cool. Pull meat off bone & break into bite-size pieces. During the same time the ham is cooling, fat will form on the top of the bean/broth mixture. As it “hardens” skim it off.
Add the shredded ham back into the pot. Add celery, carrots, potatoes, and spices. Bring to a boil. Reduce heat and allow to simmer for 20 to 30 minutes or until vegetables are tender.