Preheat oven to 350°F. Grease or spray a 9×13-inch baking dish.
In a medium bowl, whisk together flour, baking powder, baking soda, and salt.
2 1/4 cups all-purpose flour, 2 teaspoons baking powder, 1/2 teaspoon baking soda, 1/2 teaspoon salt
In a large bowl, beat butter, brown sugar, and granulated sugar until light and fluffy, about 3 minutes.
3/4 cup unsalted butter, 1 cup light brown sugar, 1/2 cup sugar
Add eggs one at a time, then mix in vanilla and butter extract.
3 eggs, large, 2 teaspoons vanilla extract, 1/2 teaspoon butter extract
Alternate adding the dry ingredients with buttermilk and cream soda, beginning and ending with dry. Mix just until smooth.
3/4 cup buttermilk, 1/2 cup cream soda
Pour batter into the prepared baking dish, and place in oven. Bake for 30-35 minutes, or until a toothpick comes out clean. Cool 10 minutes.
Using the handle of a wooden spoon, poke holes evenly across the warm cake. I make a grid pattern so I am sure every inch gets some of the pudding mixture.