Adjust oven rack to middle position. Preheat oven to 350F/180F. Line 2 cupcake pans with 16 cupcake liners.
In the bowl of a stand mixer fitted with the whisk attachment (or in a large bowl, if using a handheld mixer), whisk the butter on high speed until smooth.
Add the brown sugar and mix together until slightly lightened in color, about 3 minutes.
Scrape down the bowl, then add the eggs, one at a time, mixing well after each addition.
Add in the vanilla and continue mixing until lightened more in color and texture and looks fluffy, 3 to 5 minutes. Scrape down the bowl.
Add the cocoa powder, baking soda, salt and mix until well blended. Scrape down the bowl.
With the mixer on lowest speed, add one-third of the flour, followed by half of the sour cream, then mix to blend. Then add the second third of the flour, followed by the rest of the sour cream, mix again. End with the remaining flour and mix just until combined. Scrape the bowl as needed.
With the mixer running on medium low speed, drizzle in the hot water (or coffee) and mix until very smooth, about 1 minute. Batter will be very thin and soupy.
Portion the batter evenly among the cupcake liners (I like to use a 3 tablespoon measure ice cream scoop) until 2/3 full.
Bake until the tops spring back to the touch and a toothpick inserted into the center of the cupcake comes clean or with a few cooked crumbs attached, 16 to 17 minutes. Start checking after 15 minutes. The cupcakes might deflate slightly after they come out of the oven, but should NOT look sunken.
If the do sink, that means they were underbaked. They should have slightly domed tops.
Let cool in the pan for about 5 minutes or until cool enough to handle, then transfer to a wire rack to cool completely before filling and frosting.
While the cupcakes are baking and cooling, make the frosting (instructions below)