Gather the ingredients.
Toast the coriander seeds and black peppercorns in an oil-free pan until fragrant.
Place the coriander seeds, peppercorns, galangal, garlic, chilies, shallots, turmeric, cumin, and nutmeg in the blender or food processor. Process to make a thick paste. If using a blender, you may need to add a couple of tablespoonfuls of water to help the motor to run.
Place the beef in a shallow bowl. Pour in the spice paste. Mix thoroughly to ensure that each piece is completely coated with the spice paste. Cover the bowl and put in the fridge for at least an hour.
Toast the grated (or desiccated) coconut in an oil-free pan until lightly browned. Set aside.
Heat the cooking oil in a wok or pot with a thick bottom. Saute the onion, lamongrass, cinnamon sticks and kaffir lime leaf. Add the beef with the marinade and cook over high heat, stirring occasionally, until the mixture looks dry.
Pour in the coconut milk, tamarind paste, palm sugar and about two tablespoons of fish sauce. Stir. Bring to a gentle boil, lower the heat, cover and slow cook the beef for two to three hours or until very tender and the sauce is thickened and considerably reduced.