Preheat the oven to 350°F. Grease or line a half sheet pan (18x13 inches) with foil and set aside.
Combine flour, sugar, baking soda and salt in a large mixing bowl. Set aside.
Heat the butter, water and cocoa in a medium saucepan over medium heat. Bring to a light boil and then remove from heat and add to flour mixture. Stir until combined.
Stir in the sour cream, vanilla and eggs. Pour mixture into prepared pan.
Bake for 18-20 minutes, or until a toothpick comes clean.
While the cake is cooking, start the icing (I usually start after about 10 minutes in). Melt the butter in a medium saucepan over low heat. Stir in cocoa powder. Once the mixture has melted and comes to a light simmer, remove from heat and slowly stir in milk, vanilla and a pinch of salt. Then slowly stir in powdered sugar.
Evenly pour the icing over the cake immediately when it comes out of the oven. Immediately spread out evenly with a rubber spatula.