Add dried beans to a large bowl and cover with water to 3 inches above the beans. Cover the beans and soak them overnight in the refrigerator. Drain, rinse when ready to use, and set aside.
Add 1 tablespoon of oil to a large soup pot or Dutch oven. Saute the onions and celery for a couple of minutes, or until they begin to soften. Add the ham bone, leftover chopped ham, garlic, drained beans, thyme, cumin, oregano, and red pepper flakes. Cover with 9 to 10 cups of water and bring to a boil.
Once the soup comes to a boil; reduce the heat, cover, and simmer for 60 to 90 minutes, or until the beans are soft. Stir occasionally but keep the soup covered.
Remove the ham bone and discard, pulling any remaining ham from it and stirring it into the soup. Add water as necessary to thin the soup. Season to taste with salt and pepper.
Notes
Substituting Canned Navy Beans
If you want to skip soaking the beans, you can swap 3 to 4 cans of white beans, drained and rinsed.