- To prepare the dry beans for this recipe, cover them with at least 6 cups of cold water and allow them to soak at room temperature overnight or for at least 8 hours.
- When the beans are soaked, drain the water from the beans and transfer them to a large, heavy bottomed pot. Add in the vegetable or chicken broth, water, 1 tablespoon of olive oil, the head of garlic, whole sprig of sage, peppercorns, and the rind of a wedge of Parmesan, if using. Bring to a simmer over medium-high heat then reduce the heat to medium-low to maintain the simmer and cook uncovered for 1 ½ hours, stirring occasionally.
- At this point, stir in the ½ teaspoon of kosher salt and continue to simmer until the beans are tender, adding some water if the liquid is no longer covering the beans. This should take about another 30 minutes. Remove the beans from the heat and allow them to cool in the liquid for 1 hour.
- Using a slotted spoon, transfer the beans into a bowl, discard the garlic, sage, Parmesan rind, and peppercorns, and reserve about 1 ½ cups of the cooking liquid.
- Meanwhile, preheat the oven to 400ºF and heat 1 tablespoon of olive oil in a large oven-safe skillet over medium heat and cook the garlic for about 1 minute. Pour in the tomatoes and, using a wooden spoon or a pair of scissors, break up the tomatoes into bite-sized chunks. Add in ½ cup of the bean cooking liquid along with the beans and simmer for 10 to 15 minutes. Season with salt and pepper and stir in the spinach along with 1 tablespoon of the chopped sage and 2 tablespoons of the chopped parsley. If the mixture is a little thick, add in some more of the bean cooking liquid and set aside while you make the topping.
- For the topping, combine the remaining herbs with the remaining 2 tablespoons of olive oil in a small mixing bowl and toss in the bread cubes and bacon, if using. Season with a pinch of salt and pepper and scatter the topping over the bean and tomato mixture followed by a scattering of the Parmesan cheese. Place the pan into the preheated oven and bake for 8 to 12 minutes or until the topping is golden brown.
- Allow to cool slightly and serve with extra bread on the side for dunking.
*You can use whatever bread you have on-hand! Sourdough, rye, whole wheat, or even fluffy sandwich bread.