In a large bowl, add the white beans and enough water to cover the beans completely. Add the baking soda, and soak overnight. Drain and rinse the beans thoroughly to eliminate any traces of baking soda.
In a large cast iron pot, heat the vegetable oil on high heat and sauté chopped onion, minced garlic, cinnamon stick and bay leaf; sauté until they have softened and have a translucent colour.
Add the lamb/beef cubes and fry until fully browned, seasoning with salt and pepper.
Add the beans, tomato paste, coriander powder, 7-spice, turmeric powder, and cardamom, and mix well in the same pot. Let this cook for a minute, then add the chopped tomatoes and enough water to cover the meat by an inch or so.
Bring the liquid to a boil. Cover the pot, reduce to medium heat and allow to cook for at least 90 minutes or until the meat has softened.
Heat the olive oil in a skillet to make the topping, then add the crushed garlic, finely chopped coriander, and a pinch of salt. Cook over medium-high heat, constantly stirring, until the garlic has started to grow and the herbs have wilted. Add this garlic coriander mixture to the stew and stir to combine it evenly throughout.