In a large bowl, mix the maize meal, cake flour, sugar, baking powder, and salt.
In another bowl, whisk the egg, milk, and oil/butter.
Pour the wet ingredients into the dry ingredients and mix until you have a thick, spoonable batter. It should be soft but not runny.
Lightly grease a heatproof bowl, loaf tin, or pudding basin.
Pour the batter into the container and cover tightly with foil or a lid.
Place the container in a large pot with enough boiling water to come halfway up the sides (don’t let water get inside).
Cover the pot with a lid and steam on medium heat for 1 to 1½ hours. Check water level occasionally and top up with boiling water if needed.
Test with a skewer or knife. It should come out mostly clean.
Let it rest for 5–10 minutes, then turn out and slice.