Preheat your oven to 350°F (175°C). Grease and flour two 9-inch round cake pans.
In a large bowl, mix flour, sugar, cocoa powder, baking soda, baking powder, and salt.
Add buttermilk, vegetable oil, eggs, and vanilla extract. Beat on medium speed until smooth.
Gradually add hot water (or coffee) and mix until the batter is thin but well combined.
Pour the batter into the prepared pans and bake for 30-35 minutes or until a toothpick comes out clean.
Cool the cakes in the pans for 10 minutes, then transfer to a wire rack to cool completely.
For the frosting, combine evaporated milk, sugar, egg yolks, and butter in a saucepan over medium heat.
Stir constantly until the mixture thickens (about 12 minutes). Remove from heat and add vanilla extract, coconut, and pecans.
Let the frosting cool slightly, then spread it between the cake layers and on top.
Serve and enjoy.