1) To make the cake: Preheat the oven to 325°F. Lightly grease an 8 1/2" x 4 1/2" loaf pan.
2) In a medium-sized mixing bowl, beat together the butter, sugar, salt, vanilla, baking powder, espresso powder, and cocoa to make a sandy, somewhat clumpy mixture. Don't worry; the eggs will smooth things out.
3) Add the eggs one at a time, beating well after each addition. Scrape down the sides and bottom of the bowl midway through this process.
4) Add half the flour to the bowl, beating at low speed to combine.
5) Add all of the milk, beating at low speed to combine.
6) Add the remaining flour, beating gently just until the batter is smooth.
7) Pour the batter into the prepared pan.
8) Bake the cake for about 70 minutes, or until a toothpick inserted into the center comes out clean. The top may look a tiny bit damp; that's OK. If you have an instant-read thermometer, the center will register 210°F to 215°F, while just under the top will register about 198°F to 200°F.
9) Remove the cake from the oven, loosen the edges, wait 10 minutes, and turn it out of the pan onto a rack to cool.
10) Store completely cooled cake well wrapped, at room temperature, until ready to fill and frost.
11) To make the filling: Stir together the ricotta, sugar, vanilla, and chocolate chips. Cover and refrigerate until ready to use.
12) To make the frosting: sift the cocoa, confectioners' sugar, and espresso powder into a bowl.
13) Bring the cream to a simmer on the stove or in the microwave, and whisk into the cocoa mixture. At first the mixture will look grainy; continue whisking for a minute. You'll see the lumps disappear as the sugar dissolves and the cocoa hydrates. Set aside to cool to room temperature.
14) Place the butter, salt, and sifted confectioners' sugar in a large mixing bowl.
15) Beat until the mixture is smooth and fluffy. Beat in the vanilla.
16) With the mixer running on low speed, add the cocoa mixture a spoonful at a time until it's all incorporated. Scrape the bowl, then beat at medium speed for 1 minute.
17) To assemble the cake: Split the cake in thirds lengthwise, to make 3 layers. Brush the cut side of each layer with simple syrup or vanilla syrup; this will help keep the cake moist.
18) Place the bottom layer on a serving plate. Spread with half the ricotta filling. Top with the second layer, and spread with the remaining filling. Place the third layer on top.
19) Ice the cake — top and sides — with the frosting.
20) Serve immediately; or refrigerate, well-wrapped, until ready to serve, preferably not longer than 24 hours. Cut in crosswise slices to serve.
Yield: 8 to 12 servings.