Recipe quick takes: Joanne Chang’s Peanut Butter Honey Cookies

Hey, it’s another report in my series on Joanne Chang’s cookie recipes — with any luck, I’ll be done by the end of the month. Cookies work well for me this summer because I’ve been doing a lot of bike commuting, and it’s not practical to carry bulky foods like layer cakes or fruit pies in my backpack, whereas I can fit eight or ten cookies easily and share with my co-workers in the usual way. (I rarely bake anything I can’t share these days because I need to not eat this stuff — the whole point here is to make something that I’d like to try and then trick other people into eating the surplus for me!) For the Fourth of July weekend I made Peanut Butter Honey Cookies, another recipe from Joanne Chang’s Baking with Less Sugar (Chronicle Books, 2015; p. 108). I messed this up in a couple of different ways, so I can’t exactly claim that my results are representative, but I also found an error (albeit a minor one) in the recipe as published. Perhaps as a result, I wasn’t especially pleased with the outcome, and the comments from my tasters were not especially favorable. Here’s how it went:

Mise en place
Starting as usual with the mise en place means explaining the error in the recipe I mentioned above. Like most cookies, this recipe starts with butter, and the ingredients list says “140 g/¾ cup unsalted butter”, which is clearly wrong. Since Chang’s recipes are generally based on bakery formulas, I assume that the weights are more reliable anyway, and so I went for the 140 g figure (that’s 5 oz or 10 tbl — 2 tbl short of ¾ cup). Other wet ingredients are 260 g unsalted, unsweetened peanut butter; 170 g honey (I used the local, raw, wildflower honey shown in the picture); one whole large egg and one egg yolk; and a tablespoon of vanilla extract. (I note that the recipes in this book in particular tend to call for much higher quantities of vanilla extract than those in Chang’s previous cookbooks, but I’m not sure what to make of that.) The dry ingredients are 105 g all-purpose flour, 50 g old-fashioned rolled oats, ½ tsp baking soda, 1¼ tsp kosher salt, and 100 g chopped raw peanuts. I wasn’t able to find raw peanuts in the store (in fact, I don’t ever remember seeing raw peanuts, so I looked for some lightly roasted peanuts to use instead, and I chopped them in the food processor, which unfortunately leads to a very uneven mixture of peanut pieces, some whole and some tiny fragments.

Butter and honey mixed
The first step of the process involves beating the honey and sugar together until thoroughly mixed and creamy. It’s best to start with butter that is quite soft, much softer than one would usually prefer for the traditional creaming method with crystalline sugar.

All wet ingredients, in the middle of mixing
After whisking the egg, egg yolk, and vanilla together, they are added to the creamed butter-honey mixture and beaten for several minutes, stopping occasionally to scrape the sides and bottom of the bowl, until homogenous. This takes a while, again rather longer than with the traditional creaming method, and it’s best to start with ingredients at warm room temperature. Once the mixture is fully combined, the peanut butter is quickly beaten in.

Wet ingredients fully mixed
Separately, the dry ingredients are stirred together to combine (and as with last week’s recipe, it’s easier to whisk the salt and soda into the flour separately before adding the chunky ingredients), and then the dry team is folded into the wet until fully incorporated.

Finished dough being weighed on scale
The recipe makes about 850 g of batter. I transferred it to my small Pyrex bowl and covered tightly with plastic wrap to spend a day in the refrigerator, as Chang recommends for all of her cookie recipes. Taking note of the total weight and the advertised yield of the recipe, I calculated that each cookie should be 50–55 g in weight of raw dough. However, the latest government warnings about birds defecating over wheat fields did not prevent me from eating some of the raw dough, and I only had about 750 g of dough left when I portioned out the cookies the following day.

Four small portions of dough on a cookie sheet
I experimented with a couple of different dishers and decided to use my #30. In retrospect, I should have used a #24 disher instead; while my first few dough balls with the #30 were close to my 50-gram target, overall I ended up averaging about 41 grams, and that had an impact on the resulting cookies. (But as a bonus that meant that I could claim each cookie was only ⅘ of a serving!)

Twelve fully baked cookies
The cookies are baked in a 350°F (175°C) oven for about 16 minutes. The recipe calls for squashing the dough balls flat with the palm of your hand, and then cross-hatching them with the tines of a fork in the traditional way before baking, but I totally missed this step in the recipe for the first 12 cookies I baked — I ended up using a spatula to flatten the cookies halfway through the baking process when I realized that I had forgotten this step. I think these turned out relatively OK, albeit a bit thicker and cakier than I would prefer; the ridges you see are the result of the slots in the spatula that I used for the flattening.

Sixteen cookies, four prepared per directions
You can see the four cookies where I actually got the preparation right on the left: they are flatter and darker than the first batch of twelve, and actually a bit overbaked. (I gave them the same baking time as the first sheet.) Overall, I think I prefer the full-sugar cookies, rolled in granulated sugar and fork-squashed like I remember from my younger days, and the comments from my tasters generally reflected this preference as well. The cookies were plenty tender, but even with the added chopped peanuts lacked a certain crunch that most tasters expected.


Nutrition Facts
Serving size: 1 cookie (50–55​g unbaked)
Servings per recipe: about 16
Amount per serving
Calories 271 Calories from fat 167
% Daily Value
Total Fat 19​g 29%
 Saturated Fat 6​g 30%
Trans Fat 0​g
Cholesterol 42​mg 14%
Sodium 131​mg 5%
Total Carbohydrate 20​g 7%
 Dietary fiber 2​g 8%
 Sugars 10​g
Proteins 7​g 15%
Vitamin A 8%
Vitamin C 0%
Calcium 2%
Iron 6%
Posted in Food | Tagged , , , | 1 Comment

Some notes on our new generation of ZFS-based file servers

Consistently among the most popular posts on this blog are a series I wrote very early on about our architecture (at work) for big file servers based on commodity hardware, FreeBSD, and ZFS (part 1, part 2). We are in the process of replacing our older generation of servers with newer technology, taking advantage of the increase in disk capacity to move from 96-drive servers that take half a rack to 4U, 24-drive servers. This does have some consequences for capacity and performance (although the increased memory in these servers should hopefully mitigate the performance concerns). I’m presently engaged in copying the data off one of the old servers (using zfs send | zfs recv) to new servers so that we can unrack the old server and make room for two more new servers. On of the biggest datasets just finished its initial copy today, and I wrote a few things for my colleagues about this process in our office Jabber conference. The rest of this post is a lightly edited version of that.

$ df -i /export/vision/[redacted]
Filesystem                 1K-blocks        Used      Avail Capacity   iused       ifree %iused  Mounted on
export/vision/[redacted] 28926547412 23434396266 5492151146    81% 527217855 10984302292    5%   /export/vision/[redacted]

This filesystem might finally be fully moved on Monday, after four weeks of effort.
[It finished today after three previous attempts that all bailed out when the dataset exceeded quota on the new server; the following explains why. Another sync will be required on Monday to catch up with any updates the users may have made.]

527 million files, for an average size of 55 KiB per file. Moving this from a filesystem with 512-byte blocks and 3072-byte RAID stripe to a filesystem with 4096-byte blocks and 20480-byte RAID stripe expands the data by about 5 TiB.

FWIW, the capacity of the new servers in RAID-Z2 (3×7) is 98 TiB, whereas RAID-1 (11×2) is 77 TiB…. Wondering if I should configure one of the new servers as 2×11 RAID-Z2 just to see how that works out (higher fragmentation for these vision filesystems, and slower, but theoretically higher capacity). For those who are a bit confused by this: RAID-Z is not like RAID-5, and doesn’t have a fixed stripe size; to avoid the “write hole” (requiring read-modify-write cycles to fill out a partial stripe), RAID-Z writes short stripes with full parity if there’s not enough data to make a full stripe. In the worst case, RAID-Z2 will write two parity blocks for a single data block if that’s all there is to be written. The old servers have 88 active drives, arranged in 11 stripes of 8 drives each with RAID-Z2, but the drives have 512-byte sectors so a “full stripe” is 6×512 = 3072 bytes plus parity; the new servers as currently conceived have 21 active drives in 3 stripes of 7, again with two parity, but 4k sectors mean that a full stripe is 5×4096 = 20480 bytes. [The new servers have 24 drive bays, leaving 23 available for data after ZIL, but we built them with 22 drives including a hot spare.] So if average write size (after compression) is 8k or less, you’re better off with mirroring rather than RAID-Z2.

A bit more about our ZFS dataset migration process. These filesystems are all NFS exported read-write to the client systems. Most of the data movement takes place without user involvement, taking advantage of our existing daily, monthly, and hourly snapshots to make efficient, self-consistent copies of each filesystem. Once this process is complete, we coordinate downtime with the users. At the beginning of the downtime window, we set each dataset to be migrated readonly=on and wait for the next hourly snapshot. (Doing it this way ensures that old manual snapshots are not accidentally left hanging around consuming disk space.) We then replicate that snapshot to the new server and clear the readonly property on the destination datasets with zfs inherit. Updated automount maps pointing to the new server are pushed to our Puppet masters, and if the users actually followed instructions, all of the client machines will get updated within half an hour. (Sometimes the users don’t follow instructions and the old server has to be force-unmounted to allow the automounter to mount the new location.) Finally, if we are backing up the filesystems, the backup server is updated to reflect the migration. (There’s no need to take a new full because ZFS replication preserves inode numbers and times.)

Posted in Computing, FreeBSD, ZFS | Tagged , ,

Recipe quick takes: Joanne Chang’s White Chocolate–Cherry–Almond Cookies

It’s nearly a week late, but since I’m in the middle of the next recipe already, I need to clear this one out of the queue. White Chocolate–Cherry–Almond cookies are one of Joanne Chang’s newer recipes, from her Baking with Less Sugar (Chronicle Books, 2015; p. 47). I’ve had varied results from this cookbook, and these cookies were rather disappointing: they turned out quite cakey, and more than one taster asked me if they were muffin tops. They weren’t bad, just not particularly good, and the satisfaction:calorie ratio was not high enough to justify a repeat visit. But since I took all these pictures, I’m going to do the walkthrough anyway.

Mise en place
We start, of course, with the mise en place. There are quite a few ingredients, including three different sources of almond flavor. The wet team starts with 225 g of unsalted butter (softened, of course) and a mere 75 g of sugar. Unlike what this photo shows, there are three egg yolks and only two whole eggs (and yes, those are blue “heirloom breed” eggs, just because I felt like buying them that day when I realized I didn’t have enough). The wet works continue with an enormous 2 tbl (30 ml) of vanilla extract and 2 tsp of almond extract. The dry team consists of 120 g of slivered almonds, 70 g almond meal (a bit chunky in the photo because I took it out of the freezer), 230 g all-purpose flour, 1 tsp each of baking soda and kosher salt, 335 g of white chocolate chunks (Callebaut was all I got get easily), and 200 g of unsweetened dried cherries. I was supposed to “coarsely chop” about half of the dried cherries, but totally forgot to do this.

Cookie dough
The cookie dough comes together by the standard creaming method. Chang recommends five minutes for the initial creaming step, and two to three minutes to beat in the rest of the wet works. All of the dry ingredients are mixed together in a separate bowl before stirring into butter-egg mixture, and the ultimate result looks like this. (Chang’s directions just say to mix together all of the dry ingredients by name, but you really want to whisk the powdered dry ingredients together first, before tossing to combine with the nuts, cherries, and chocolate, otherwise you’re liable to get an incompletely mixed mess.)

Dough balls arrayed on a baking sheet
After resting in the refrigerator overnight, the dough is ready to portion. The recipe makes about 1300 g of dough, and has a stated yield of 16–20 cookies, so I decided to aim for 65 g portions, which I was able to approximate using a #20 (1.6 fl.oz. or a scant 50 ml) disher.

Squashed dough balls
Before baking the dough balls, they should be squashed flat with the palm of one’s hand — it’s probably a good idea to moisten your hand before doing this. The cookies are baked in a 350°F (175°C) oven for about 16 minutes.

Second sheet of baked cookies, with some "runners"
The cookies cool on the baking sheet for about 10 minutes before being shifted to a wire cooling rack. In this second tray of cookies, you can see that some ended up with an excess of white-chocolate chunks and spread a bit more than is desirable. Here’s a close-up of an individual cookie.

Close-up of baked cookie


Nutrition Facts
Serving size: 1 cookie (65​g unbaked)
Servings per recipe: about 20
Amount per serving
Calories 382 Calories from fat 194
% Daily Value
Total Fat 22​g 34%
 Saturated Fat 11​g 53%
Trans Fat 0​g
Cholesterol 76​mg 25%
Sodium 127​mg 5%
Total Carbohydrate 27​g 9%
 Dietary fiber 3​g 11%
 Sugars 19​g
Proteins 6​g 13%
Vitamin A 18%
Vitamin C 0%
Calcium 12%
Iron 11%
Posted in Food | Tagged , ,

Recipe quick takes: Joanne Chang’s Coconut Macaroons

A few weeks ago, I did Joanne Chang’s macarons — or, as she called them in pre-macaron-craze days, “Almond Macaroons with Bittersweet Chocolate Ganache”. This week, I’m back with her macaroons — proper macaroons, or “Coconut Macaroons” as she calls them in her 2010 cookbook Flour (Chronicle Books; p. 122). Although my schedule for baking these was stretched out by travel and work events, everyone who tried one when I finally did bring them into the office thought they were very good examples of their type.

Making macaroons starts with some sort of dairy base; the most common recipes use sweetened condensed milk, but Chang’s recipe uses pastry cream instead — which unfortunately means that these are not gluten-free. Chang helpfully gives a cut-down pastry cream recipe, so we’ll start there:

Mise en place for pastry cream
The pastry cream is made from 120 g milk (I used low-fat because I don’t drink whole milk, and you can’t buy milk in such small quantities from my preferred dairies), two egg yolks, ½ tsp of vanilla extract, and a mixture of 50 g sugar, 20 g cake flour, and a pinch of kosher salt. The milk is scalded in a saucepan, while the flour-sugar mixture is whisked together with the egg yolks; the resulting mixture is then tempered with the hot milk before returning the whole mass to the stove to cook until it thickens to the texture of, well, pastry cream.

Pastry cream after cooking
The cooked pastry cream looks like this. Off heat, the vanilla is whisked in, and the pastry cream is then covered with plastic wrap (to prevent a skin from forming) and allowed to cool completely. (In some applications, the pastry cream would be sieved while still hot, to remove any bits of overcooked egg yolk, but macaroons have a rough texture where that would not be noticeable, and Chang does not call for the extra work.)

Mise en place for macaroons
Now for the main event: the macaroons proper. I took the “Doe’s Chocolate Chip Macaroons” option, given in a sidebar, of adding 165 g of semisweet chocolate chips (I used Guittard 46% semisweet chocolate baking chips). The other ingredients are the same regardless: the prepared and cooled pastry cream; six egg whites (the two left over from the pastry cream plus four more I took out of the freezer); 200 g of sugar; two 14 oz (400 g) packages of Baker’s “Angel Flake” sweetened shredded coconut; and another pinch of kosher salt (not shown). It is possible that there are other brands of sweetened shredded coconut, but I wasn’t able to find any. All of these ingredients are simply mixed together to make the macaroon dough.

Macaroon "dough" after 5 days in refrigerator
I, um, ate some of the dough before it was baked. (Why is it that raw eggs, which are generally disgusting, suddenly become edible when mixed with sufficient quantities of sugar?) But due to my travel schedule, I could not bake the macaroons immediately in any case, so I covered the bowl with plastic wrap and put the dough in the refrigerator until I got back — Chang says this dough will last for five days before baking.

Macaroons ready to bake
I portioned the macaroons using a #16 (2 oz or ¼ cup; 60 ml) disher onto a parchment-lined baking sheet. I only got 18 macaroons, but the recipe says it should make 24 — either I managed to eat 6 macaroons worth of dough (shudder) or I was a bit too generous with the disher. For the nutritional analysis shown below, I assumed that you will adjust the size to get closer to the specified yield. (If I do this again, I should remember to weigh the dough so I can double-check my portioning!)

Baked macaroons
The macaroons are baked in a 350°F (175°C) oven until golden brown, about 33 minutes in my oven. I could have left these in a bit longer, but I was more concerned about the tops overbrowning than about the sides not being browned enough. Here’s a close-up of an individual unit:
Close-up of individual macaroon


Nutrition Facts
Serving size: 1 macaroon
Servings per recipe: about 24
Amount per serving
Calories 249 Calories from fat 123
% Daily Value
Total Fat 14​g 21%
 Saturated Fat 11​g 56%
Trans Fat 0​g
Cholesterol 16​mg 5%
Sodium 136​mg 6%
Total Carbohydrate 29​g 10%
 Dietary fiber 3​g 11%
 Sugars 26​g
Proteins 6​g 11%
Vitamin A 1%
Vitamin C 0%
Calcium 1%
Iron 3%
Posted in Food | Tagged , , | 1 Comment

Recipe quick takes: Joanne Chang’s “Homemade Oreos”

Another week, another quick review of a Joanne Chang cookie recipe. I have to put “Homemade Oreos” — or perhaps “Homemade ‘Oreos'” — in quotation marks, because these sandwich cookies really don’t have anything to do with Oreo brand sandwich cookies except in a very abstract way (and how hasn’t she gotten sued by Mondelez International, anyway?). For one thing, they’re huge. For another, they’re made from food. And people who hate Oreo brand sandwich cookies actually like them! Like last week’s effort, this recipe comes from Chang’s first cookbook, Flour (Chronicle Books, 2010; p. 134); the procedure and parts list are both a bit more complicated than the almond macaro(o)ns, but still pretty easy. These are icebox cookies (as the sainted Maida Heatter would say), so expect to take parts of two days to bake.

Mise en place for cakes
We start with the cakes (biscuits, however you want to say it). The “wet team” consists of two sticks (225 g) of unsalted butter, which will shortly be melted so there’s no need for it to soften; 150 g of granulated sugar; one large egg; 1 tsp vanilla extract; and, unusually, 200 g of semisweet chocolate chips — I used Guittard — which will also be melted (separately from the butter). The “dry team” is 210 g all-purpose flour, 90 g Dutch-process cocoa, 1 tsp kosher salt, and ½ tsp baking soda.

Melted chocolate-butter mixture
As mentioned, both the butter and the chocolate chips are melted (separately) and allowed to cool somewhat. The sugar is then combined with the butter (this allows it to dissolve in the water phase of the butter — don’t try to substitute a different fat!), and then the melted chocolate chips are stirred in. Finally, the remaining wet ingredients (egg and vanilla) are whisked in; by this point the mixture should be cool enough not to scramble the egg.

Dry ingredients mixed
All the dry ingredients are just sifted together (or whisked, or stirred, however you like so long as they’re well combined) in a separate bowl.

Dough cooling in mixing bowl
After adding the dry team to the wet, it takes a while to mix them together thoroughly, as this is a fairly stiff dough. Once it is mixed, the dough needs to cool to warm room temperature so that it can be formed into a “log” — but if you’re like me, you’ll have trouble stopping yourself from just pinching off pieces of the warm batter and eating it as is; I estimate I ate 3–4 cookies’ worth (6–8 unassembled cakes) along the way.

"Log" of dough
Once cooled, the dough is formed into a rough “log” on a sheet of parchment, and then rolled into a more even cylindrical shape. The recipe says it should be 2½ inches (65 mm) in diameter, but I only managed about 2″ (50 mm). I think they came out OK anyway, with fully assembled serving sizes more than sufficient for my audience.

At this point, the still-soft cylinder of dough goes into the refrigerator (still wrapped in parchment) to solidify for two hours. Chang recommends rerolling the cylinder every 15 minutes so it doesn’t develop a flat spot where it sits on the shelf. Once fully solid, it can be baked or wrapped in plastic wrap and refrigerated for up to a week. Since many cookies benefit from an overnight rest in the fridge, I resolved to pick up the process the next day.

Circles of unbaked dough on cookie sheet
Fast-forward to Sunday afternoon. I’ve preheated the oven to 325°F (160°C) and lined a couple of baking sheets with parchment sheets. The cylinder of dough is removed from the refrigerator and sliced into approximately ¼-inch (6 mm) rounds — I gave up on using the ruler after the first few, so mine were a bit less even than one would like. (The obvious tool here is either a commercial guillotine cutter, or some sort of scribe that could make lots of scratches in parallel, ¼″ apart. I assume in the Oreo factory they use a more liquid batter and a depositor.) For slicing the rounds, I used a chef’s knife, working quickly and rotating the “log” from time to time so that the cutting pressure would not result in a flat spot. (Which as you can see didn’t entirely work!) Maybe it would have been better to cut the cylinder in half and slice two at a time.

Baked cakes cooling on sheet
In my oven it took 21 minutes to bake the cakes until just firm; as you can see, they don’t spread much. On the two baking sheets I got a total of 26 cakes (as opposed to the 32 I should have had per the recipe, had I not eaten so much of the dough and had I done a better job of slicing evenly.)

Mise en place for filling
The filling for these sandwich cookies is the standard so-called “American buttercream”, which isn’t a buttercream at all, but is made from butter (1 stick, 115 g), confectioner’s sugar (230 g), vanilla (1 tsp), and milk (1 tbl). This is all made by the usual procedure, which I won’t go into here. Chang adds a pinch of salt to the filling as well; I dissolved the salt in the milk before adding it to the faux-buttercream to ensure that it would be evenly distributed.

13 fully assembled "Oreos"
About a tablespoon of the frosting is used to fill each sandwich cookie. (Or use your best judgment!) Since I was short on the cakes, I had some frosting left over (but not for long). As you can see, these cookies are several times larger than an Oreo brand sandwich cookie, but they do at least share the traditional color scheme.

One "Oreo"
I brought a bunch of these into work on Monday and they were devoured. Everyone who tried them loved them — even Sue Felshin, who rarely likes things with the sort of sweet sugary frosting that these cookies use as a filling, enjoyed hers (although she commented that the biscuits were a bit salty, so perhaps you might cut that teaspoon of kosher salt in half). Of course, the down side of these being so huge is that they have a lot more calories (and sugar, and fat) than the genuine Oreo brand sandwich cookie.


For comparison with the figures below, regular Oreos have about 53 kcal per unit, with 2.3 g fat and 4.7 g sugar; “Double Stuf” Oreos are 70 kcal per unit, 3.5 g fat and 6.5 g sugar. Most specialty Oreo flavors follow the “Double Stuf” formula. (The thoroughly disgusting “Mega Stuf” Oreos are 90 kcal each, 4.5 g fat and 9.0 g sugar.)

Nutrition Facts
Serving size: 1 sandwich cookie
Servings per recipe: about 16
Amount per serving
Calories 369 Calories from fat 185
% Daily Value
Total Fat 21​g 33%
 Saturated Fat 13​g 63%
Trans Fat 0​g
Cholesterol 57​mg 19%
Sodium 112​mg 5%
Total Carbohydrate 45​g 15%
 Dietary fiber 3​g 12%
 Sugars 30​g
Proteins 5​g 9%
Vitamin A 12%
Vitamin C 0%
Calcium 2%
Iron 9%
Posted in Food | Tagged , , , | 1 Comment

Recipe quick takes: Joanne Chang’s Almond Macaroons with Bittersweet Chocolate Ganache

This is just about the simplest baking recipe I’ve ever done here, to the extent that even an in-depth review isn’t going to be longer than a “quick take”. But before that, a little digression on naming.

In recent years — most notably in the past two or three years — a French bakery item has made it to these shores under the name macaron. These sandwich cookies are typically made from almond paste and egg white, about 30–40 mm in diameter, and are filled with jam, frosting, or chocolate. It is apparently a Big Thing to have them develop “feet” in baking. In American English usage, macaroon has generally meant a mounded, single-piece cookie made from coconut, sugar, and egg white, rather than almond, typically about as tall as it is wide, sometimes dipped in chocolate or with chocolate chips added. Many Americans would be astonished to be offered something called a “macaroon” that was not made with shredded coconut. But historically, they are the same thing; “macaroon” is a corruption of “macaron”, borrowed into English from Middle French circa 1610. The French word is in turn derived from regional Italian maccarone — that is, macaroni. The treats I’m about to describe, from Joanne Chang’s Flour (Chronicle Books, 2010; p. 130), are sandwich cookies, with the cakes made from almond paste and egg white, just like the fashionable macaron, but they are larger, formed by the drop method rather than with a piping bag, and coarser in texture. Flour was published just before macarons became trendy, and the recipe title calls these cookies “macaroons”; Chang’s follow-up book, Flour, too, contains a macaron recipe, so titled. But when I handed these cookies out at the office, I called them macarons, because to me, the defining characteristic is not the trendy colors or the size, but the fact that they’re sandwich cookies made from almond paste — I would reserve the name “macaroon” for the sort of cookies made from coocnut and often seen in these parts as a flourless dessert for Passover.


Mise en place
The mise for these is incredibly simple. The heavy cream (half a pint ≈ 240 ml) and the chocolate (Valrhona Caraïbe, 225 g, chopped) are used to make the ganache filling. The remaining ingredients go into the almond paste: 520 g blanched whole almonds (I used store-bought this time rather than blanching them myself); 540 g sugar; 6 large egg whites (I had a bunch of leftover egg whites in the freezer from previous baking projects, so no fresh yolks were wasted); 2 tsp almond extract to punch up the almond flavor; and ½ tsp kosher salt rounds out the list.

Raw macaron batter on a baking sheet
This recipe takes place almost entirely in the food processor, and comes together in just a few minutes. The blanched almonds are first ground in the food processor to a fine powder (but not to a paste). A cup of the ground almonds is reserved, and then the remaining almonds are ground together with the sugar for 15 seconds before adding the egg whites and processing for another 30 seconds to combine. The mixture is transferred to a bowl, where the reserved ground almonds, salt, and almond extract are folded in, and then the batter is dropped by tablespoons onto parchment-lined baking sheets to make 40 cakes. (Mine were a little uneven in size and I ended up with 41 cakes — I just ate the extra!)

Just-baked macarons
After baking in a 350°F (175°C) oven for 23 minutes, they are ready to come out and cool on a rack, still on the baking sheet, for another half an hour. When done they should be just slightly browned around the edges. While the cakes are cooling, the ganache is made in the usual way by pouring scalded cream over the chocolate, letting it melt, and then whisking until smooth. I found that I had to refrigerate the ganache to get it set up enough to fill the cookies.

Freshly filled macarons
Once the cakes are completely cool, they are paired up in roughly matching sizes and shapes, and a sufficient quantity of the cooled ganache is applied to fill them. Chang says to use about a tablespoon of ganache, but also says that there may be some left over; I say to use enough to cover the entire bottom of the cake, and don’t worry too much about the exact measurement here. After filling, they can be stored at room temperature in an air-tight container for two or three days.

Filled macaron cross-section
I cut one in half to show the texture of the crumb. All of my tasters loved these, including a couple of people on gluten-free diets who can’t normally try my baking, except for one person who didn’t like them, and thought that the chocolate flavor of the filling wasn’t prominent enough.


Nutrition Facts
Serving size: 1 sandwich cookie
Servings per recipe: 20
Amount per serving
Calories 373 Calories from fat 202
% Daily Value
Total Fat 23​g 35%
 Saturated Fat 7​g 33%
Trans Fat 0​g
Cholesterol 16​mg 5%
Sodium 33​mg 1%
Potassium 180​mg 5%
Total Carbohydrate 38​g 13%
 Dietary fiber 4​g 15%
 Sugars 32g
Proteins 8​g 16%
Vitamin A 3%
Vitamin C 0%
Calcium 7%
Iron 7%
Posted in Food | Tagged , , , , , , | 3 Comments

Other people’s recipes: two banana bread recipes from Joanne Chang

A number of the recipes in Joanne Chang’s cookbook Baking with Less Sugar (Chronicle Books, 2015) are revised versions of bakery favorites originally published in Flour (2010). “Flour’s Famous Banana Bread” is a justly popular recipe from Chang’s Flour Bakery and Cafe which originally appeared in Flour (p. 86); the 2015 edition is “Better than Flour Famous Banana Bread” (p. 40). For Memorial Day, I decided to bake both recipes, and I brought them in to work the following day to taste side-by-side. Tasters found the two recipes difficult to distinguish, with those expressing a preference evenly split between the original and Less Sugar versions. The procedure for making both is almost exactly the same; they differ primarily in ingredient proportions and cooking time. Here’s how it went:

Seven bananas
We start out, of course, with bananas. I find it fairly difficult to buy truly ripe bananas in the supermarket, so I generally buy green ones a week early and let them ripen on the kitchen counter until I’m ready for them. If any show signs of going off prematurely, I stick them in the freezer — frozen bananas are no longer useful for eating but just as good as fresh for any application requiring mashed banana.

Two different 75g portions of walnuts
Both recipes require 75 g of walnuts, but differ in procedure. The original recipe calls for walnuts which are toasted and then chopped; the Less Sugar recipe calls for chopped walnuts which are subsequently toasted. That’s easy enough to manage with two quarter-sheet pans, in a 325°F (160°C) oven for about nine minutes, shaking the pans about halfway through.

Two buttered and floured 9″×5″ loaf pans
Both recipes make a single 9″×5″ (23 cm × 13 cm) loaf, which (after baking) makes nine generous or twelve moderate portions. I broke with my usual practice and used the traditional butter-and-flour lubrication technique for these rather than baking spray, just because.

Mise en place for original recipe Mise en place for "Less Sugar" recipe

On the left, the mise en place for the original recipe. On the right, the mise for the Less Sugar version. Here’s how they stack up in tabular form:

Ingredient Original recipe Less Sugar recipe
chopped, toasted walnuts 75 g 75 g
all-purpose flour 210 g 175 g
baking soda 1 tsp ½ tsp
ground cinnamon ¼ tsp 1 tsp
kosher salt ½ tsp ½ tsp
large eggs 2 3
granulated sugar 230 g 75 g
canola oil 100 g 70 g
ripe bananas 340 g (as mashed) 3 large
crème fraîche 30 g 90 g
vanilla extract 1 tsp 1 tbl

Eggs and sugar at ribbon stage
The process starts by what I’ve come to think of as the “mayonnaise method” — a variant of the “muffin method” used for many quickbreads in which the eggs and sugar are first beaten to ribbon stage, about eight minutes using a handheld mixer. This photo shows the original recipe proportions after about five minutes of beating.

Eggs-sugar mixture with oil and wet ingredients mixed
Once the eggs have made a sufficiently sturdy foam to handle it, the construction proceeds by slowly drizzling in the vegetable oil (hence the “mayonnaise method”) so that it emulsifies with the eggs. Then the remaining wet ingredients — bananas, vanilla, and crème fraîche — are mixed together and then stirred into the egg-sugar-oil mixture, working quickly so as not to deflate the egg foam, and finally the remaining dry ingredients are combined and folded in by hand. The Less Sugar version departs from this slightly by par-cooking two of bananas in the microwave after mashing them; the result is combined with the third mashed banana, raw, and the crème fraîche and vanilla as before — mixing the par-cooked banana with the other ingredients cools it down sufficiently to add to the egg foam without fear of curdling.

Finished original-recipe batter in loaf pan "Less Sugar" batter in loaf pan

Once again, the original recipe is shown on the left and the Less Sugar version on the right — note how much higher the revised batter comes up in the pan. This won’t turn out to be a problem because the Less Sugar version also has less leavening, depending more on the egg foam for its volume and texture.

Fully baked original-recipe loaf Fully baked "Less Sugar" loaf

The original recipe calls for 60–75 minutes of baking time, which leads to a more caramelized appearance than the Less Sugar version at only 50–60 minutes. Both are baked at 325°F (160°C), although I did not attempt to bake them simultaneously. When done (the finished bread should spring back when pressed in the center), the bread must cool in the pan for about 30 minutes. The recipe here says “at least 30 minutes”, but I wouldn’t advise leaving it much longer than that, because the steam released by the cooling bread can condense and make the bottom of your loaf soft or even soggy if left in the pan.

Both loaves side by side on cooling rack
Finally, here the two loaves are, side by side. Once cool, I wrapped them tightly in plastic wrap for the trip to the office on Tuesday.

As I mentioned in the intro, tasters were split on which one they preferred. Those who liked the original version better noted its texture, the slightly caramelized flavor, and moistness; those who preferred the revamped recipe commented on its lightness and banana flavor.


Nutrition Facts
Serving size: 1/12 loaf
Servings per recipe: 12
Amount per serving
Original recipe Less Sugar recipe
Calories 296 from fat 123 249 from fat 123
% DV % DV
Total Fat 14g 22% 14g 22%
 Saturated Fat 2g 9% 3g 13%
Trans Fat 0g 0g
Cholesterol 33mg 11% 53mg 18%
Sodium 162mg 7% 118mg 5%
Potassium 114mg 3% 141mg 4%
Total Carbohydrate 39g 13% 26g 9%
 Dietary fiber 2g 7% 2g 7%
 Sugars 22g 11g
Proteins 5g 9% 5g 9%
Vitamin A 2% 5%
Vitamin C 4% 5%
Calcium 1% 2%
Iron 3% 4%
Posted in Food | Tagged , , ,

Other people’s recipes: Joanne Chang’s Vanilla–Pecan Coffee Cake

It’s been a while, I know, but I haven’t much felt like writing lately, and I haven’t baked anything particularly spectacular. But it’s a three-day weekend, and I got a 40-mile ride today, so I’ve got plenty of time to write up this recipe, which I did last weekend. The recipe is from Baking with Less Sugar by Joanne Chang (Chronicle Books, 2015; p. 56), and it’s a variant of the “New Old-Fashioned Coffee Cake” from her first cookbook, Flour (which I profiled a year ago). To make the “Less Sugar” version, Chang substitutes honey for the sugar normally used to make streusel, reduces the sugar in the main cake batter, and also adds more crème fraîche. Instead of three eggs and one yolk, this version has two eggs and three yolks. But I’m getting ahead of myself!

Mise en place for streusel
We start with a pecan streusel, just as with the original recipe. In addition to the 75 g of pecans, the recipe uses 65 g of honey, 1 tsp of cinnamon, ½ tsp of ginger, ¼ tsp of ground clove, ½ tsp of kosher salt, 45 g of cake flour, and 30 g of unsalted butter.

Mixed streusel
The streusel ingredients are whizzed together in the food processor, making a sticky mess.

Mise en place for main cake batter
In addition to the other changes I noted, this version of the cake batter has triple the vanilla (2 tbl rather than 2 tsp) of the original, and adds a tablespoon of freshly grated orange peel (one large navel orange’s worth), which definitely comes through in the finished product. The other wet ingredients are 240 g crème fraîche, 225 g unsalted butter, 2 large eggs, and 3 egg yolks. The dry team consists of 300 g cake flour, 2 tsp baking powder, ½ tsp baking soda, 1 tsp kosher salt, and 140 g granulated sugar.

After reverse creaming
The cake batter is made by the “reverse creaming” method, wherein the dry ingredients are beaten with soft chunks of butter, which gives an exceedingly tender and delicate crumb, as the butterfat keeps the flour particles from getting wet and developing gluten during the mixing process. At this point, the batter looks more like a pie dough, and indeed you could make a pâte sucrée this way.

Mixed wet ingredients
All of the remaining wet ingredients (everything but the butter) are simply whisked together before adding, in two lifts, to the flour-sugar-butter mixture.

Main cake batter
Although it starts out a bit gloppy, proper mixing (Chang gives very specific instructions for timing) gives a light, whipped texture. (This is where the “reverse creaming” is essential: agitating a traditional butter-cake batter this much would develop gluten and lead to a tough cake.)

Streusel and batter mixed
Just as in the original recipe, Chang has you take some cake batter (about a cup, in this recipe — the original uses more) and fold it into the streusel. The theory is that this is supposed to keep the (unleavened and thus denser) streusel from sinking through the cake during baking and landing on the bottom.

Uncooked cake batter in prepared angel-food pan
The remaining cake batter is spread evenly in a lubricated angel-food pan (Chang is specific about using a pan with a removable bottom, rather than the usual tube pan or a Bundt pan), and then the batter-streusel mixture is spread on top. The cake is baked in a 350°F (175°C) oven for 40–50 minutes — the longer time was definitely needed when I baked this cake. Unlike in the original recipe, I did not find that the streusel migrated into the rest of the cake; instead it remained as a thick, dark layer on the top of the cake.

Finished cake on stand
Chang calls for the cake to cool completely in the pan, before removing from the pan (a thin-bladed knife or spatula helps separate the bottom of the angel-food pan from the cake. (Note well: even though it’s baked in an angel-food pan, you don’t invert the cake while cooling!)

Sorry, no single-serving photos on this one. It was a very good cake, with an amazingly tender crumb, although a few people felt that the mixed streusel-cake topping bit was somewhat odd (and I for one would have preferred a more normal streusel topping, which I bet would turn out fabulous with this exact same recipe — just bake in a regular tube pan, with the streusel on the bottom, and invert only once to serve).


As with most cakes I bake, I portioned this into 16 slices (quarter first, then quarter the quarters). Depending on your audience, you may find that it makes 20 to 24 smaller slices.

Nutrition Facts
Serving size: 1/16 cake
Servings per recipe: 16
Amount per serving
Calories 353 Calories from fat 202
% Daily Value
Total Fat 23​g 35%
 Saturated Fat 12​g 62%
Trans Fat 0​g
Cholesterol 105​mg 35%
Sodium 211​mg 9%
Total Carbohydrate 30​g 10%
 Dietary fiber 1​g 5%
 Sugars 12​g
Proteins 4​g 8%
Vitamin A 16%
Vitamin C 2%
Calcium 6%
Iron 3%
Posted in Food | Tagged , , ,

An update on the HTTPS client certificate issue

Attention conservation notice: If you’re here for the food, you can skip this post — maybe another recipe post coming towards the end of the month.

I wrote a while back about moves in the browser world to deprecate client certificate authentication. Things have moved on a bit, and at work today I did a presentation and community discussion about the issue and what we’re going to do about it. (Summary: in the near term, we’ll be adopting OpenID Connect to centralize the actual authentication piece of this, which will allow us to swap in other mechanisms — or delegate the actual authentication to someone else — as alternatives become available.) My slides are available although (because of the room it was held in) neither the talk itself nor the discussion afterward were recorded.

Aside | Posted on by | Tagged , , ,

Recipe quick takes: A disappointing whole-grain Honey Cake from King Arthur Flour

Caution: I did this eight days ago. I didn’t bake anything this (three-day) weekend, so there was less pressure to get it written up than usual (I try to avoid queuing multiple recipes) because I was planning on doing a 65-mile bike ride today (which didn’t happen for reasons I won’t explain here). In any event, that means that I’m less than usually familiar with the process of baking this cake, and in any event, it wasn’t particularly good anyway. I’ll be out of town next weekend, so there will be a substantial gap before the next recipe post.

The cake in question is called simply “Honey Cake”, and it appears in King Arthur Flour’s Whole Grain Baking (Countryman Press, 2006; p. 421) — a cookbook from which I have otherwise had excellent results. The parts list is pretty simple:

Mise en place
Clockwise from bottom left: four eggs; two ounces (55 g) of sour cream; 5 oz (140 g) of whole-wheat flour and 3⅛ oz (90 g) of all-purpose flour (in the same bowl); 1½ sticks (170 g) of unsalted butter; 12 oz (340 g) of honey; 3 oz (85 g) of sliced almonds; and finally, ½ tsp each of salt and baking soda (in the same bowl).

Butter-honey(-egg?) mixture
The recipe proceeds by beating together the wet ingredients — you can’t really call it creaming here, because the honey doesn’t have big crystals to punch holes in butterfat the way actual sugar does. The dry ingredients (such as they are) are mixed in the usual way and then stirred in, and the sour cream and ¼ cup of the almonds are stirred in to finish the batter.

Prepared pan with sliced almonds
Most of the almonds go into the bottom of the prepared nine-inch (225 mm) cake pan; the batter is poured on top of the almonds, which will form the top of the cake when it’s inverted after baking. This cake is baked in a fairly low oven, 325°F (160°C), for about 50 minutes.

Cooled cake inverted onto cake stand
After cooling on a wire rack for 15 minutes or so, the cake can be inverted onto a serving platter (or a cake stand as I did) and allowed to cool the rest of the way. You can see that some of the batter made its way underneath the almond layer on the bottom, so good pan preparation is essential.

Cake on stand with powdered sugar topping
After letting the cake cool completely, you can (if you want) sift powdered sugar on top before serving. To serve, I sliced the cake into 16 wedges in the usual way, but I didn’t do that at home, so I have no pictures.

I found the cake to be entirely too dry and lacking in any noticeable flavor; even the almonds were subdued, crunchy but not flavorful. I can think of any number of possible improvements: a more strongly flavored honey (raw, rather than hot-filtered) would be one obvious change, but the recipe didn’t suggest any particular type of honey, and I was loath to try a more flavorful (but super-expensive) varietal. (The honey I used was McLure’s orange blossom honey, which for some reason is now cheaper than the clover honey of my youth.) One could also imagine adding fruit, spices, flavorings, or citrus peel, all of which would have given it some sort of interest that was lacking. First and foremost, I think an unsaturated fat, rather than butter, would have given a much moister mouth feel — but then you’re back at something more like Rosetta Costantino’s Ciambella all’Arancia, which was very well received.


Nutrition Facts
Serving size: 1/16 cake
Servings per recipe: 16
Amount per serving
Calories 251 Calories from fat 123
% Daily Value
Total Fat 14​g 21%
 Saturated Fat 7​g 34%
Trans Fat 0​g
Cholesterol 73​mg 24%
Sodium 129​mg 5%
Total Carbohydrate 30​g 10%
 Dietary fiber 2​g 8%
 Sugars 17​g
Proteins 5​g 9%
Vitamin A 9%
Vitamin C 0%
Calcium 2%
Iron 4%
Posted in Food | Tagged , , , ,