Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time
February 17, 2021 21:55
February 17, 2021 21:55
February 17, 2021 22:11
March 16, 2018 13:14
May 6, 2022 10:35

logotype b

Cracking The Bread Code

DEPRECATED. Please see the sourdough framework for a complete rewrite.

Learn how to master the art of baking the programmer way. If you love programming, you will also enjoy breaking some bread. A/B test, iterate and ultimately become a self-taught baker. This repository is dedicated to becoming your bread manifesto with useful tricks and hacks. Furthermore, the goal is to illustrate how easy making bread is and that you can get started today without expensive tools.

This repository is still work in progress and will be updated continuously. Feel free open up issues when facing problems. Pull-requests with custom recipes are welcome too! Happy baking.

A sourdough bread about to be inhaled 🤣

Yeast based bread

Yeast is the easiest way to get started baking bread. You can use either dry yeast or fresh yeast. Yeast ferments your dough by converting parts of the dough into gas. This gas inflates your dough.

Sourdough based bread

Sourdough bread is an all natural bread without any added yeast. The dough gives the bread an amazing, you guessed it, sour taste. Any yeast bread can also be made with sourdough instead of yeast.

All of those recipes assume that you have made your own sourdough starter. The process takes approximately 7 days to complete:

Once you have your sourdough starter you can proceed with the next recipes.

Common Problems / FAQ

See the guide Common problems / FAQ for strategies to deal with frequent pitfalls that arise when baking.


This section contains experiments where N breads are baked with only one parameter change each. This helps to visualize what impact a change of a single parameter has on the final product. Feel free to submit your own experiments as a PR. The more experiments there the merrier.

Ideas for custom experiments? Please make a PR and share them.



Have you ever relished the taste of a fresh and warm bread with a crispy crust? Do you know the sound of the crispy crust when you take a bite? Have you ever experienced the delicious and homey scent of a bread coming right out of the oven?

When baking bread, you experience a whole variety of emotions and sensations. Furthermore, you step into a world where simplicity can become very complex. However, reaching perfection is amazing! The feeling of having crafted a perfect combination of all natural ingredients is unique and so special. I say “a perfect combination”, not “the perfect combination” because that is the secret. There is no such thing as the perfect bread. There are so many different possibilities, combinations, ingredients, parameters — every bread is unique!

Being a programmer myself, I lacked scientific resources on the internet. In my daytime job, we use A/B testing for almost everything. Why not apply the same proven methodologies to baking?

All the recipes I provide have been A/B tested by myself with different variations. I encourage you to do the same. Try to recreate the same bread with only one parameter changing at the time. That way you can iterate to find your personal preferred bread combination. Make notes and log all the different types bread you made. Slowly, bread by bread you will become better.

You will fail, in fact, you will fail often. With every fail, ask yourself what you could have done better. That's how I have learned and still learn with every bread I bake. That's what I call The Bread Code. I hope this repository motivates people around the world to try and become better bakers.