Heat your oven to 180°C/Fan 160°C/Gas 4. Peel and finely chop the onion. Trim and finely chop the carrot and celery. Peel and finely chop the garlic.
Heat ½ tbsp oil in a large frying pan over a very low heat. Add the chopped veg. Fry for 15 mins till softened. Stir now and then.
Pop the tomatoes, still on the vine, into a small ovenproof dish. Drizzle with ½ tbsp oil and season with salt and pepper. Roast in the oven for 15 mins.
Heat ½ tbsp oil in a separate frying pan over a medium heat. When hot, add the cod, skin side down. Fry for 3 mins till the skin is golden and crisp. Take the tomatoes out of the oven. Place the cod, skin side up, on the tomatoes. Roast for 15 mins till cooked. The fish should flake easily when you press it with a fork.
Roughly chop the herbs and set aside. Chuck the spinach into a food processor. Blitz till very finely chopped and almost a paste. Alternatively, chop with a sharp knife as finely as you can.
Drain and rinse the lentils. Tip them into the carrot and celery pan. Add the balsamic vinegar and cook for 2 mins. Add the finely chopped spinach and stir gently.
Stir most of the chopped herbs through the lentils, leaving a few pinches to garnish. Taste and adjust the seasoning if you think it needs it.
Divide the lentils between two plates. Top with a piece of cod and the roasted tomatoes. Scatter over the remaining chopped herbs and serve.