Firstly, mill the flour.
Then, in a medium sauce pan, put the sugar, cocoa powder, fresh milled flour, milk, and salt.
Without the heat on, add the egg, and mix until combined and smooth.
Once everything is combined, turn the heat to medium, and stir continually. Bring the mixture to a boil. Continue stirring constantly while the mixture cooks, and thickens. This should take about 3-6 minutes. (The pudding will continue to thicken as it cools as well.)
Once the pudding has thickened, turn off the heat, and stir in the butter and vanilla extract. If you prefer your pudding warm, this can be served warm here, or to serve cold, continue on with the recipe.
Pour the pudding into a heat safe bowl, and press plastic wrap down over the surface to prevent a skin from forming on the top while the pudding cools.
Allow to cool at room temperature for 1 hour, then place in the fridge to finish cooling. (2-3 hours.)
Lastly top with fresh fruit, whipped cream, or enjoy the decadent chocolate pudding all on it's own!