In a large mixing bowl, whisk together the flour, baking soda, sugar, and salt; set aside.
In a 10 or 12 inch cast iron skillet, bring the butter, vegetable oil, cocoa powder, and water to a boil. Remove it from the heat and whisk in the dry ingredients along with the buttermilk, egg and vanilla.
Place in the oven and bake for 18-25 minutes or until the top springs back when touched.
Remove from the oven and allow to cool. Meanwhile, in a small saucepan set over medium-high heat, boil the butter, cocoa and milk. Remove from the heat and whisk in the powdered sugar, chopped pecans and vanilla. Continue whisking until smooth. Pour over the warm cake, spread into an even layer and allow the frosting to set, about 10 minutes. Serve with vanilla bean ice cream if desired.