Preheat oven to 425 degrees F. Butter and flour baking sheet. In a saucepan combine water, butter, cut into pieces and a pinch of salt and bring to a boil over high heat; butter should melt just as water boils. Reduce heat to medium and add flour all at once, beating with a wooden spoon until dough pulls away from sides of pan and forms a ball. Transfer dough to bowl of an electric mixer, begin beating on high speed and add 3 eggs, one at a time, beating well after each addition. Batter should be elastic and just stiff enough to hold soft peaks. If batter is still stiff, break fourth egg into a small bowl, whisk well and add just enough of the egg to the batter to thin to proper consistency. Transfer warm dough to a pastry bag fitted with a 1/2-inch tip. Pipe 18 1 1/2-inch puffs at least 2 inches apart on prepared baking sheet. Brush with egg wash, gently smoothing tops of puffs. Bake in upper third of oven for 10 minutes. Reduce heat to 400 degrees F and bake for 15 to 20 minutes more, or until puffed and golden. Remove sheet, turn off oven and piece sides of each puff several times with the tip of a sharp knife. Return sheet to turned-off oven and let puffs stand 30 minutes, with oven door ajar, to dry. Transfer to racks to cool completely.
Soften ice cream to scooping consistency. Line a baking sheet with waxed paper. Use a small ice cream scoop to scoop out 18 1 1/2-inch ice cream balls. Freeze until solid.
In a double boiler or in a bowl set over a saucepan of barely simmering water, melt chocolates with cream and coffee, stirring occasionally, until smooth and warmed through. Add cognac or rum, to taste. Keep warm over warm water until ready to serve.
To serve, slice puffs in half, fill bottom of each with an ice-cream ball and replace top. Arrange 3 on each plate and serve immediately. Pass a warm sauceboat of hot fudge sauce for each person to pour over their own dessert.
Recipe courtesy of David Rosengarten