In a large mixing bowl, combine the flour and granulated sugar.
In a heavy saucepan, combine butter, shortening, coffee or water, and cocoa. Stir and heat to boiling. Pour boiling mixture over the flour and sugar. Add the buttermilk, eggs, baking soda, and vanilla. Mix well, using a wooden spoon or on high speed with an electric mixer.
Pour into a well-buttered jelly roll pan and bake for 20 minutes, or until brownies test done in the center.
While brownies bake, prepare the frosting. In a saucepan, combine the butter, cocoa, and milk. Heat to boiling, stirring. Mix in the powdered sugar and vanilla until frosting is smooth.
Pour the warm frosting over the brownies as soon as you take them out of the oven. Let them cool until the icing hardens enough to slice (it's easiest with a pizza cutter).