Saute the bacon over medium low heat in a large, heavy-bottomed pot. Cook the bacon slowly, stirring occasionally, over relatively low heat so that it renders out most of it’s fat. After about 20 minutes, the bacon will be crisp and there will be quite a bit of fat in the pan. Drain out as much fat as possible and reserve it for another use if desired.
Saute the onion, carrot, and celery with the remaining bacon (there should still be a thin coating of fat). Season with salt and pepper. After about 10 minutes, the vegetables should be translucent.
Add the garlic, if using, and saute for about 2 minutes more. Add the beans, water, and parmesan cheese rind (if using).
Taste the broth and then season liberally with salt and pepper – since we’re using water, it will take quite a bit of salt to make it taste flavorful.
Cover and simmer for about 1 ½ hours or until the beans are tender. Time will vary depending on the beans you use.
Taste for seasoning and adjust as needed. Use the back of a fork to smash a few beans against the side of the pot to thicken it slightly. Remove the parmesan cheese rind (if using) and serve with a drizzle of olive oil and crusty bread on the side.