Preheat your oven to 350°F (175°C). Grease and flour a 9x13 inch baking pan.
In a large mixing bowl, cream together the butter and sugar until light and fluffy. Add the eggs one at a time, beating well after each addition. Stir in the vanilla.
Combine the flour, baking powder, and salt; add to the creamed mixture alternately with the milk. Beat well. Pour batter into the prepared pan.
Bake for 30 to 35 minutes in the preheated oven, or until a toothpick inserted into the center of the cake comes out clean. Allow to cool.
To make the frosting: In a medium bowl, beat the butter until creamy. Gradually add the powdered sugar, cocoa powder, milk, and vanilla. Beat until smooth and fluffy. Spread over the cooled cake.