Put the dates, baking soda and boiling water into a bowl and leave to stand for 10 minutes.
Preheat oven to 212°F/100°C, steam setting (100% humidity). Grease 6 x 2/3 cup pudding molds (or 8 x ½ cup molds for smaller puds, or use ramekins, or a muffin pan) and line the base of each with a small piece of parchment paper. Set aside while you make the puddings.
Put the butter and sugar into the bowl of a stand mixer and beat until creamy. Mix in the vanilla then the eggs, one at a time, fully incorporating the first before adding the second.
Give the date mixture a and squash any larger pieces with the back of a spoon to break them down a little (or puree in a blender if you want it completely smooth), then add this to the mixture with the flour, baking powder and salt. Mix just until everything is combined and smooth.
Divide the mixture evenly between the prepared molds. Steam for 20 minutes (no need to cover).
While the puddings are steaming, make the sauce. Put all the ingredients except the salt into a saucepan and cook over medium heat until the butter melts and the mixture comes to a boil. Reduce heat to a simmer and cook, stirring occasionally until the sauce is thick and glossy. This should take about 5 minutes. Stir in the salt (start with the lesser amount and add more to taste if you think it needs it).
When the puddings are cooked, turn them onto serving plates and pour over a generous amount of sauce. Add a spoonful of cream to the plate if you like, and serve immediately.
The puddings and sauce can be made ahead of time and fully cooked. The puddings will keep, individually wrapped in the freezer for up to 2 months, and the sauce will keep in the fridge for 4-5 days. Reheat the puddings from frozen by putting into a cold oven and setting to 212°F/100°C, steam setting (100% humidity). Heat for 12-15 minutes. Reheat the sauce on the stove until warm.