In a large stockpot over high heat, add the beans and cover with 4 cups of water. Over medium high heat, bring the bean mixture to a boil. Then, reduce the heat to low and simmer, covered, for 1 hour until beans are well cooked. Drain and set aside.
In another large stock pot, over high heat, add the remaining 8 cups of water. Add the ham bone. Bring the water to a boil. Reduce to medium-low to simmer for 2 hours.
Place a fine mesh sieve or colander over a stockpot or large bowl and drain the ham bone stock into the stockpot, using the sieve to catch the bone and any pieces of ham.
Place clean stockpot over medium heat and add the butter or oil.
Add the chopped vegetables and saute for 2 minutes.
Add the cubed ham, thyme, bay leaves, beans, salt and pepper. Stir well.
Add the reserved ham bone stock and increase heat to medium-high. Bring soup to a boil, then reduce and simmer on medium to medium-low for 20 minutes, or until vegetables have reached your desired level of tenderness.
Notes
I'm not a registered dietician, I do my best to provide the most accurate nutritional values. Any nutritional data I provide is an approximation. Actual dietary information can vary based on ingredients and portion sizes