1. Heat a non-stick pan over a medium to high heat. Add the beef, stirring frequently to quickly brown the meat and seal in the juices.
It is better to do this in smaller batches to prevent overcrowding the pan and therefore allowing the meat to brown evenly.
2. Add the tomatoes, onions, garlic, ginger, cumin and coriander powder, water and salt to the browned meat. Stir the mixture thoroughly and bring to a boil.
3. Reduce the heat, cover and cook over a low heat for approximately 30 minutes or until the beef is tender but not yet fully cooked. Check occasionally to ensure the curry does not become too dry. Adjust by adding some water.
3. Stir in the potatoes and garam masala, cover and cook for a further 10 minutes or until the potatoes are tender and the meat fully cooked.
4. Garnish with coriander and serve.