1. Cook the cauliflower in salted boiling water for 5 minutes, then drain, reserving about 150ml cooking water.
2. Cook the potatoes in salted boiling water for 10 minutes, then drain.
3. Heat the olive oil and butter in a large frying pan or saucepan over a low heat and sauté the garlic, onion and chilli until softened. Stir in all the spices, season, and cook for a few minutes. Add the cauliflower, potatoes and reserved cooking water, then simmer over a low heat for 10 minutes. Add the chickpeas and spinach. Cook, stirring, until the spinach wilts. Transfer to a serving bowl and serve with a dollop of yoghurt and a good squeeze of lime juice.