Preheat the oven to 350°F (175°C) and grease a 9×13-inch baking pan.
- In a large bowl, whisk together the flour, sugar, baking powder, and salt.
- In a saucepan, melt the butter over medium heat, then add the water and bring to a boil. Pour into the dry ingredients and stir well.
- Add sour cream, eggs, vanilla extract, almond extract, and baking soda. Mix until smooth.
- Pour the batter into the prepared pan and bake for 30-35 minutes, or until a toothpick inserted into the center comes out clean.
- For the frosting, melt butter and milk together over medium heat. Stir in powdered sugar, vanilla extract, and almond extract, mixing until smooth.
- Once the cake is baked, cool for 10 minutes and then pour the frosting over the warm cake, spreading evenly.
- Allow the cake to cool completely before serving.