Sort and wash the beans. In a large saucepan over medium heat, add the beans and enough water to be 5cm above beans. Bring to the boil for 2 minutes and remove from heat. Cover, allow to soak for 1 hour and drain.
In a large casserole over medium high heat, saute the ribs in oil until browned. Remove ribs from casserole and set aside. Add the onion and garlic and saute for 5 minutes, or until tender. Add the beans, ribs, stock, water, chilli powder, oregano, cumin, salt, ground black pepper and fresh coriander. Cover and simmer 1 1/2 hours, or until meat is tender.
Remove the ribs, allow to cool and remove meat from the bones. Return meat to soup. Chill the stock until the fat rises to the surface and remove the fat. Bring back to the boil and reduce heat to low. Cover and simmer for 30 minutes.