To skin the fish, lay it skin-side down on a board and ease a sharp knife in under the flesh at one end. Pulling the skin away from the flesh to keep it taut, run the knife in under the flesh as close to the skin as possible. Discard the skin and chop the fish into bite-sized pieces. Transfer to a large mixing bowl. Bring some water to the boil and pour over the tomatoes in a bowl so that they are fully immersed. After a few minutes, remove one to test by piercing the top of the skin with a knife: if it peels away easily it is ready. Score each side of the tomato into quarters and peel away the skin. Halve the tomato, scoop out the seeds and dice the flesh. Repeat with the remaining tomatoes and add to the fish. Zest one of the limes (you may want to give it a quick scrub in hot water first to remove any wax). Squeeze the juice of both limes and add to the fish along with half the zest. Finely dice the red onion, finely chop the chilli and add both. Season lightly, cover and transfer to the fridge to marinate for 2–3 hours. The longer you leave it, the more ‘cooked’ the fish, but the beauty is that it won’t dry out like over-cooked fish does. Set aside a small handful of coriander leaves for a garnish, roughly chop the remainder and stir into the ceviche. Serve with tortilla chips or rice and salads as part of a summer spread, or transfer into individual ramekins and turn out onto a serving plate as an elegant starter, garnished with the reserved coriander leaves and lime zest.