mirror of
https://github.com/hendricius/the-sourdough-framework
synced 2025-11-09 12:41:12 -06:00
Merge branch 'main' into 225-ebook-situation
This commit is contained in:
@@ -1,9 +1,7 @@
|
||||
name: Create and publish a Docker image
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- main
|
||||
workflow_call:
|
||||
|
||||
env:
|
||||
REGISTRY: ghcr.io
|
||||
@@ -26,20 +24,33 @@ jobs:
|
||||
registry: ${{ env.REGISTRY }}
|
||||
username: ${{ github.actor }}
|
||||
password: ${{ secrets.GITHUB_TOKEN }}
|
||||
- name: Figure out branch name
|
||||
shell: bash
|
||||
run: echo "branch=${GITHUB_HEAD_REF:-${GITHUB_REF#refs/heads/}}" >> $GITHUB_OUTPUT
|
||||
id: extract_branch
|
||||
- name: Determine docker image tag
|
||||
shell: bash
|
||||
id: determine_tag
|
||||
run: |
|
||||
if [[ "${{ github.ref }}" == "refs/heads/main" ]]; then
|
||||
echo "tag=latest" >> $GITHUB_OUTPUT
|
||||
else
|
||||
echo "tag=${{ steps.extract_branch.outputs.branch }}" >> $GITHUB_OUTPUT
|
||||
fi
|
||||
|
||||
- name: Extract metadata (tags, labels) for Docker
|
||||
id: meta
|
||||
uses: docker/metadata-action@9ec57ed1fcdbf14dcef7dfbe97b2010124a938b7
|
||||
uses: docker/metadata-action@v5
|
||||
with:
|
||||
images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}
|
||||
tags: |
|
||||
type=raw,value=latest,enable=${{ github.ref == format('refs/heads/{0}', 'main') }}
|
||||
|
||||
# Buildx for caching
|
||||
- uses: docker/setup-buildx-action@v3
|
||||
- name: Build and push Docker image
|
||||
uses: docker/build-push-action@f2a1d5e99d037542a71f64918e516c093c6f3fc4
|
||||
uses: docker/build-push-action@v5
|
||||
with:
|
||||
context: .
|
||||
push: true
|
||||
tags: ${{ steps.meta.outputs.tags }}
|
||||
tags: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:${{ steps.determine_tag.outputs.tag }}
|
||||
labels: ${{ steps.meta.outputs.labels }}
|
||||
|
||||
cache-from: type=gha
|
||||
cache-to: type=gha,mode=max
|
||||
100
.github/workflows/release-book-website.yml
vendored
Normal file
100
.github/workflows/release-book-website.yml
vendored
Normal file
@@ -0,0 +1,100 @@
|
||||
name: Release the book and website
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- main
|
||||
env:
|
||||
IMAGE: ghcr.io/${{ github.repository }}:latest
|
||||
|
||||
jobs:
|
||||
build-and-push-image:
|
||||
uses: ./.github/workflows/docker-build-push.yml
|
||||
|
||||
release-book-website:
|
||||
needs: build-and-push-image
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Set up git repository
|
||||
uses: actions/checkout@v3
|
||||
- name: Print dependency versions
|
||||
uses: addnab/docker-run-action@v3
|
||||
with:
|
||||
image: ${{ env.IMAGE }}
|
||||
options: -v ${{ github.workspace }}:/app
|
||||
run: |
|
||||
cd /app/book
|
||||
make show_tools_version
|
||||
- name: Print build variables
|
||||
uses: addnab/docker-run-action@v3
|
||||
with:
|
||||
image: ${{ env.IMAGE }}
|
||||
options: -v ${{ github.workspace }}:/app
|
||||
run: |
|
||||
cd /app/book
|
||||
make printvars
|
||||
- name: Bake the book
|
||||
uses: addnab/docker-run-action@v3
|
||||
with:
|
||||
image: ${{ env.IMAGE }}
|
||||
options: -v ${{ github.workspace }}:/app
|
||||
run: |
|
||||
cd /app/book
|
||||
make -j bake
|
||||
- name: Release baked book to S3
|
||||
uses: shallwefootball/s3-upload-action@master
|
||||
with:
|
||||
aws_key_id: ${{ secrets.AWS_KEY_ID }}
|
||||
aws_secret_access_key: ${{ secrets.AWS_SECRET_ACCESS_KEY}}
|
||||
aws_bucket: ${{ secrets.AWS_BUCKET_BOOK }}
|
||||
source_dir: book/release
|
||||
destination_dir: release
|
||||
- name: Bake the website
|
||||
uses: addnab/docker-run-action@v3
|
||||
with:
|
||||
image: ${{ env.IMAGE }}
|
||||
options: -v ${{ github.workspace }}:/app
|
||||
run: |
|
||||
cd /app/book
|
||||
make website
|
||||
- name: Release baked website to S3
|
||||
uses: shallwefootball/s3-upload-action@master
|
||||
with:
|
||||
aws_key_id: ${{ secrets.AWS_KEY_ID }}
|
||||
aws_secret_access_key: ${{ secrets.AWS_SECRET_ACCESS_KEY}}
|
||||
aws_bucket: ${{ secrets.AWS_BUCKET_WEBSITE }}
|
||||
source_dir: website/static_website_html
|
||||
destination_dir: static_html_root
|
||||
- name: Upload book Artifacts
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: books
|
||||
path: |
|
||||
book/book_serif/book.log
|
||||
book/book_serif/book.pdf
|
||||
book/book-epub/book.epub
|
||||
- name: Upload website Artifacts
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: website
|
||||
path: website/static_website_html
|
||||
invalidate-book-website-cache:
|
||||
needs: release-book-website
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Invalidate Cloudfront book cache
|
||||
uses: chetan/invalidate-cloudfront-action@v2
|
||||
env:
|
||||
DISTRIBUTION: ${{ secrets.CLOUDFRONT_DISTRIBUTION_BOOK }}
|
||||
PATHS: "/*"
|
||||
AWS_REGION: "us-east-1"
|
||||
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_KEY_ID }}
|
||||
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
|
||||
- name: Invalidate Cloudfront website cache
|
||||
uses: chetan/invalidate-cloudfront-action@v2
|
||||
env:
|
||||
DISTRIBUTION: ${{ secrets.CLOUDFRONT_DISTRIBUTION_WEBSITE }}
|
||||
PATHS: "/*"
|
||||
AWS_REGION: "us-east-1"
|
||||
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_KEY_ID }}
|
||||
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
|
||||
51
.github/workflows/release-book.yml
vendored
51
.github/workflows/release-book.yml
vendored
@@ -1,51 +0,0 @@
|
||||
name: Release the book
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- main
|
||||
jobs:
|
||||
build_and_release:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Set up git repository
|
||||
uses: actions/checkout@v3
|
||||
- name: Print dependency versions
|
||||
uses: addnab/docker-run-action@v3
|
||||
with:
|
||||
image: ghcr.io/hendricius/the-sourdough-framework:latest
|
||||
options: -v ${{ github.workspace }}:/app
|
||||
run: |
|
||||
cd /app/book
|
||||
make show_tools_version
|
||||
- name: Print build variables
|
||||
uses: addnab/docker-run-action@v3
|
||||
with:
|
||||
image: ghcr.io/hendricius/the-sourdough-framework:latest
|
||||
options: -v ${{ github.workspace }}:/app
|
||||
run: |
|
||||
cd /app/book
|
||||
make printvars
|
||||
- name: Bake the book
|
||||
uses: addnab/docker-run-action@v3
|
||||
with:
|
||||
image: ghcr.io/hendricius/the-sourdough-framework:latest
|
||||
options: -v ${{ github.workspace }}:/app
|
||||
run: |
|
||||
cd /app/book
|
||||
make -j bake
|
||||
- name: Release baked book to S3
|
||||
uses: shallwefootball/s3-upload-action@master
|
||||
with:
|
||||
aws_key_id: ${{ secrets.AWS_KEY_ID }}
|
||||
aws_secret_access_key: ${{ secrets.AWS_SECRET_ACCESS_KEY}}
|
||||
aws_bucket: ${{ secrets.AWS_BUCKET_BOOK }}
|
||||
source_dir: book/release
|
||||
destination_dir: release
|
||||
- name: Invalidate Cloudfront book cache
|
||||
uses: chetan/invalidate-cloudfront-action@v2
|
||||
env:
|
||||
DISTRIBUTION: ${{ secrets.CLOUDFRONT_DISTRIBUTION_BOOK }}
|
||||
PATHS: "/*"
|
||||
AWS_REGION: "us-east-1"
|
||||
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_KEY_ID }}
|
||||
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
|
||||
51
.github/workflows/release-website.yml
vendored
51
.github/workflows/release-website.yml
vendored
@@ -1,51 +0,0 @@
|
||||
name: Release the website
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- main
|
||||
jobs:
|
||||
build_and_release:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Set up git repository
|
||||
uses: actions/checkout@v3
|
||||
- name: Print dependency versions
|
||||
uses: addnab/docker-run-action@v3
|
||||
with:
|
||||
image: ghcr.io/hendricius/the-sourdough-framework:latest
|
||||
options: -v ${{ github.workspace }}:/app
|
||||
run: |
|
||||
cd /app/book
|
||||
make show_tools_version
|
||||
- name: Print build variables
|
||||
uses: addnab/docker-run-action@v3
|
||||
with:
|
||||
image: ghcr.io/hendricius/the-sourdough-framework:latest
|
||||
options: -v ${{ github.workspace }}:/app
|
||||
run: |
|
||||
cd /app/book
|
||||
make printvars
|
||||
- name: Bake the book
|
||||
uses: addnab/docker-run-action@v3
|
||||
with:
|
||||
image: ghcr.io/hendricius/the-sourdough-framework:latest
|
||||
options: -v ${{ github.workspace }}:/app
|
||||
run: |
|
||||
cd /app/book
|
||||
make website
|
||||
- name: Release baked website to S3
|
||||
uses: shallwefootball/s3-upload-action@master
|
||||
with:
|
||||
aws_key_id: ${{ secrets.AWS_KEY_ID }}
|
||||
aws_secret_access_key: ${{ secrets.AWS_SECRET_ACCESS_KEY}}
|
||||
aws_bucket: ${{ secrets.AWS_BUCKET_WEBSITE }}
|
||||
source_dir: website/static_website_html
|
||||
destination_dir: static_html_root
|
||||
- name: Invalidate Cloudfront website cache
|
||||
uses: chetan/invalidate-cloudfront-action@v2
|
||||
env:
|
||||
DISTRIBUTION: ${{ secrets.CLOUDFRONT_DISTRIBUTION_WEBSITE }}
|
||||
PATHS: "/*"
|
||||
AWS_REGION: "us-east-1"
|
||||
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_KEY_ID }}
|
||||
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
|
||||
@@ -1,13 +1,17 @@
|
||||
name: Validate LaTeX Document
|
||||
name: Test building book and website
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- '**' # All branches
|
||||
- '!main' # But main as will do it anyway and more in release_book
|
||||
pull_request:
|
||||
|
||||
env:
|
||||
IMAGE: ghcr.io/${{ github.repository }}:${{ github.event.pull_request.head.ref }}
|
||||
|
||||
jobs:
|
||||
test_building_book:
|
||||
build-and-push-image:
|
||||
uses: ./.github/workflows/docker-build-push.yml
|
||||
|
||||
test-building-book-website:
|
||||
needs: build-and-push-image
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Set up git repository
|
||||
@@ -15,7 +19,7 @@ jobs:
|
||||
- name: Print dependency versions
|
||||
uses: addnab/docker-run-action@v3
|
||||
with:
|
||||
image: ghcr.io/hendricius/the-sourdough-framework:latest
|
||||
image: ${{ env.IMAGE }}
|
||||
options: -v ${{ github.workspace }}:/app
|
||||
run: |
|
||||
cd /app/book
|
||||
@@ -23,7 +27,7 @@ jobs:
|
||||
- name: Print build variables
|
||||
uses: addnab/docker-run-action@v3
|
||||
with:
|
||||
image: ghcr.io/hendricius/the-sourdough-framework:latest
|
||||
image: ${{ env.IMAGE }}
|
||||
options: -v ${{ github.workspace }}:/app
|
||||
run: |
|
||||
cd /app/book
|
||||
@@ -31,7 +35,7 @@ jobs:
|
||||
- name: Test baking the release versions
|
||||
uses: addnab/docker-run-action@v3
|
||||
with:
|
||||
image: ghcr.io/hendricius/the-sourdough-framework:latest
|
||||
image: ${{ env.IMAGE }}
|
||||
options: -v ${{ github.workspace }}:/app
|
||||
run: |
|
||||
cd /app/book
|
||||
@@ -39,7 +43,7 @@ jobs:
|
||||
- name: Test building website
|
||||
uses: addnab/docker-run-action@v3
|
||||
with:
|
||||
image: ghcr.io/hendricius/the-sourdough-framework:latest
|
||||
image: ${{ env.IMAGE }}
|
||||
options: -v ${{ github.workspace }}:/app
|
||||
run: |
|
||||
cd /app/book
|
||||
@@ -266,7 +266,7 @@ top of other tools can be quite a hefty investment. For
|
||||
this reason, I advocate the inverted tray method visualized
|
||||
in the next section. In case you do not own an oven consider trying
|
||||
the simple flatbread recipe which is baked in a pan. Please
|
||||
refer to Section~\ref{section:flat-bread-recipe} for more details.
|
||||
refer to Section~\ref{subsec:flat-bread-recipe} for more details.
|
||||
|
||||
|
||||
\subsection{Inverted tray method}
|
||||
|
||||
@@ -1,11 +1,23 @@
|
||||
\chapter{Bread types}%
|
||||
\label{ch:bread-types}
|
||||
\begin{quoting}
|
||||
In this chapter you will learn about different bread types and their
|
||||
advantages and disadvantages. At the end of this chapter you can find a very
|
||||
simple flatbread recipe. This is probably the most accessible, least effort
|
||||
type of bread you can make. If you are a busy person and/or don't have an
|
||||
oven, this might be exactly the type of bread you should consider.
|
||||
advantages and disadvantages. You can also find very simple recipes for
|
||||
flatbread and pan loaf. The former is probably the most accessible, least
|
||||
effort type of bread you can make, while the latter is a little more involved.
|
||||
Free standing bread has its own chapter, due to its increased complexity.
|
||||
\end{quoting}
|
||||
|
||||
\section{Introduction}%
|
||||
\label{sec:intro}
|
||||
|
||||
In this section we classify bread by its baking techniques. The appearance and
|
||||
taste will of course be different, but you can get excellent bread with each
|
||||
of them. Some breads will require investment and technique, as depicted in
|
||||
Table~\ref{tab:bread-types-comparison}. Flatbread is probably the most
|
||||
accessible, least effort type of bread you can make. If you are a busy person
|
||||
and/or don’t have an oven, this might be exactly the type of bread you should
|
||||
consider.
|
||||
\begin{table}[!htb]
|
||||
\begin{center}
|
||||
\input{tables/table-overview-bread-types.tex}
|
||||
@@ -15,7 +27,8 @@ oven, this might be exactly the type of bread you should consider.
|
||||
\end{center}
|
||||
\end{table}
|
||||
|
||||
\section{Flatbread}
|
||||
\section{Flatbread}%
|
||||
\label{sec:flatbread}
|
||||
|
||||
Flatbread is probably the simplest sourdough bread to make.
|
||||
To make a flatbread no oven is required; all you need is a stove.
|
||||
@@ -24,7 +37,7 @@ To make a flatbread no oven is required; all you need is a stove.
|
||||
\includegraphics[width=\textwidth]{flat-breads-selection}
|
||||
\caption[Flatbread selection with different flours]{An assorted selection of
|
||||
different flatbreads made with sourdough. From left to right:
|
||||
Wheat tortilla, rye, spelt and corn.}%
|
||||
Wheat~tortilla, rye, spelt and corn.}%
|
||||
\end{figure}
|
||||
|
||||
This type of bread is super simple to make as you can skip
|
||||
@@ -33,19 +46,258 @@ can be made with all kinds of flours. You can even use
|
||||
flour without gluten, such as corn or rice flour, to make the
|
||||
dough. To make the flatbread a little more fluffy, you
|
||||
can use a little bit of wheat flour. The developing gluten
|
||||
will trap the gasses. During baking, these gasses will
|
||||
will trap the gases. During baking, these gases will
|
||||
inflate the dough.
|
||||
|
||||
Another trick to improve the texture of the flatbread is to
|
||||
make a very wet dough. A lot of the water will evaporate
|
||||
during the baking process and thus make the bread fluffier.
|
||||
|
||||
If your water content is very high, it will produce a
|
||||
pancake-like consistency.
|
||||
pancake-like consistency, as you can see in
|
||||
Table~\ref{tab:flat-bread-ingredients}
|
||||
|
||||
Refer to Section~\ref{section:flat-bread-recipe}~``\nameref{section:flat-bread-recipe}''
|
||||
to see a full recipe including the process of making such a flatbread.
|
||||
\begin{table}[!htb]
|
||||
\begin{center}
|
||||
\input{tables/table-flat-bread-pancake-recipe.tex}
|
||||
\caption[Flatbread recipe]{Flatbread or pancake recipe for 1 person.
|
||||
Multiply the ingredients to increase portion size. Refer to the
|
||||
Section~\ref{section:bakers-math}
|
||||
``\nameref{section:bakers-math}'' to learn how to understand and
|
||||
use the percentages properly.}%
|
||||
\label{tab:flat-bread-ingredients}
|
||||
\end{center}
|
||||
\end{table}
|
||||
|
||||
For a full recipe including the process of making such a flatbread, refer to
|
||||
Subsection~\ref{subsec:flat-bread-recipe}
|
||||
|
||||
\subsection{Flatbread framework}%
|
||||
\label{subsec:flat-bread-framework}
|
||||
|
||||
As explained above, if you are just getting started, making a flatbread is the
|
||||
easiest way to start making great bread at home. With just a
|
||||
few steps, you can stop buying bread forever. This works with
|
||||
any flour, including gluten-free options.
|
||||
|
||||
\begin{flowchart}[!htb]
|
||||
\begin{center}
|
||||
\input{figures/fig-process-flat-bread.tex}
|
||||
\caption[The process to make a sourdough flatbread]{The process of making a flatbread is very
|
||||
simple, requiring very little effort. This type of bread is especially
|
||||
handy for busy bakers.}%
|
||||
\label{fig:flat-bread-process}
|
||||
\end{center}
|
||||
\end{flowchart}
|
||||
|
||||
This is my go-to recipe that I~use to make bread whenever
|
||||
I~have little time or when I~am abroad. You can choose
|
||||
between two options:
|
||||
%
|
||||
\begin{enumerate}
|
||||
\item A flatbread similar to a roti or naan bread
|
||||
\item Sourdough pancakes.
|
||||
\end{enumerate}
|
||||
|
||||
To get started prepare your sourdough starter. If it has not been used for a very
|
||||
long time, consider giving it another feed. To do so, simply take \qty{1}{\gram} of your
|
||||
existing sourdough starter and feed it with \qty{5}{\gram} of flour and \qty{5}{\gram} of water.
|
||||
If you do this in the morning, your sourdough starter will be ready in the evening. The
|
||||
warmer it is, the sooner it will be ready, consider
|
||||
using warm water if it is very cold where you live.
|
||||
|
||||
\begin{figure}[htb!]
|
||||
\begin{center}
|
||||
\includegraphics[width=1.0\textwidth]{flat-bread-wheat}
|
||||
\caption[Wheat flatbread]{A flatbread made with purely wheat flour. The
|
||||
dough is drier at around \qty{60}{\percent} hydration. The drier dough
|
||||
is a little harder to mix. As wheat contains more gluten, the dough
|
||||
puffs up during the baking process.}
|
||||
\end{center}
|
||||
\end{figure}
|
||||
|
||||
This way you should have around \qty{11}{\gram} of sourdough ready in the evening. You will have
|
||||
the perfect quantity to make a dough for one person. In case you want to make more
|
||||
bread, simply multiply the quantities shown in
|
||||
Table~\ref{tab:flat-bread-ingredients}.
|
||||
|
||||
Then in the evening simply mix the ingredients as shown in the table. Your dough
|
||||
is going to be ready in the morning. It's typically ready after 6--12~hours. If
|
||||
you use more sourdough starter it will be ready faster, conversely it will take
|
||||
longer if you use less. Try to aim for a fermentation time of 8--12~hours as
|
||||
by using your dough too soon, the flavor might not be as good. By using your
|
||||
dough later it might become a little more sour. The best option is to
|
||||
experiment and see what you personally like the most.
|
||||
|
||||
After mixing the ingredients together cover the container, this prevents the
|
||||
dough from drying out and makes
|
||||
sure no fruit flies get access. A transparent container will be helpful
|
||||
when getting started. You can observe the dough more easily and see when
|
||||
it is ready.
|
||||
|
||||
\begin{figure}[htb]
|
||||
\begin{center}
|
||||
\includegraphics[width=1.0\textwidth]{ethiopian-woman-checking-bread}
|
||||
\caption[Ethiopian \emph{injera}]{An Ethiopian woman baking an \emph{injera}
|
||||
made using teff flour. The image has been provided by Charliefleurene
|
||||
via Wikipedia.}
|
||||
\end{center}
|
||||
\end{figure}
|
||||
|
||||
If you used the flatbread option with less water, look at the size increase
|
||||
of your dough. It should have increased at least \qty{50}{\percent} in size.
|
||||
Also look out for bubbles on the sides of your container.
|
||||
|
||||
When using the pancake recipe, look out for bubbles on the surface of your dough.
|
||||
In both cases use your nose to check the scent of your dough. Depending
|
||||
on your sourdough starter's microbiome your dough will have
|
||||
dairy, fruity, alcoholic notes or vinegary, acetic notes. Relying
|
||||
on the smell of your dough is the best way to judge whether your
|
||||
dough is ready or not. Timings are not reliable as they
|
||||
depend on your starter and the temperature. If your dough
|
||||
is ready too soon, you can now move it directly to the fridge and bake
|
||||
it at a later, more convenient time. The low temperature will halt the fermentation
|
||||
process\footnote{There are some exceptions. In some rare cases your starter
|
||||
might also work at lower temperatures. You might have cultivated microbes that work best at
|
||||
low temperatures. Nevertheless, fermentation
|
||||
is always slower the colder it gets. A fridge really helps to preserve the state
|
||||
of your dough.}
|
||||
and your dough will last for several days. The longer you wait, the more sour the
|
||||
bread is going to be. The fridge is a great option in case you want to
|
||||
take the dough with you when visiting friends. People are going
|
||||
to love you for the freshly baked flatbreads or pancakes. If you dare,
|
||||
you can also taste a little bit of your raw uncooked dough. It is likely
|
||||
going to taste relatively sour. I~do this frequently to better evaluate the
|
||||
state of my doughs.
|
||||
|
||||
\begin{figure}[!htb]
|
||||
\begin{center}
|
||||
\includegraphics[width=1.0\textwidth]{injera-pancake-texture.jpg}
|
||||
\caption[Teff sourdough pancake]{A sourdough pancake made with teff flour.
|
||||
The pockets come from evaporated water and \ch{CO2} created by the
|
||||
microbes. The image has been provided by Łukasz Nowak via Wikipedia.}
|
||||
\end{center}
|
||||
\end{figure}
|
||||
|
||||
If you are feeling lazy or don't have time, you could also use older sourdough starter
|
||||
to make the dough directly without any prior starter feedings. Your sourdough starter
|
||||
is going to regrow inside your dough. Remember that the
|
||||
final bread might be a bit more on the sour side as the balance of yeast to
|
||||
bacteria could be off. In the Table~\ref{tab:flat-bread-ingredients}
|
||||
I~recommended using around \qtyrange{5}{20}{\percent}
|
||||
of sourdough starter based on the flour to make the dough. If you were to follow
|
||||
this approach, just use around \qty{1}{\percent} and make the dough directly.
|
||||
The dough is probably going to be ready 24~hours later, depending on the temperature.
|
||||
|
||||
If you want to make sweet pancakes, add some sugar and optional eggs to your dough
|
||||
now. A good quantity of eggs is around one~egg per \qty{100}{\gram} of flour.
|
||||
Stir your dough a little bit and it will be ready to be used. You'll
|
||||
have delicious sweet savory pancakes, the perfect combination. By
|
||||
adding the sugar now, you make sure that the microbes don't have
|
||||
enough time to fully ferment it. If you had added the sugar
|
||||
earlier, no sweet flavor would be left 12~hours later.
|
||||
|
||||
To bake your dough heat your stove to medium temperature. Add a little bit of
|
||||
oil to the pan. This helps with heat distribution and ensures even cooking.
|
||||
With a spatula or a spoon place your dough in the pan. If your dough
|
||||
was sitting in the fridge, bake it directly. There is no need to wait for your
|
||||
dough to come to room temperature. If you have a lid,
|
||||
place it on your pan. The lid helps to cook your dough from the top.
|
||||
The evaporating water will circulate and heat up the dough's surface. When
|
||||
making a flatbread, make the dough around \qty{1}{\cm} thick. When using the
|
||||
pancake option, opt for around \qtyrange{0.1}{0.5}{\cm} depending on what you
|
||||
like.
|
||||
|
||||
\begin{figure}[htb]
|
||||
\begin{center}
|
||||
\includegraphics[width=1.0\textwidth]{einkorn-crumb.jpg}
|
||||
\caption[Einkorn crum]{The crumb of a flatbread made with einkorn as flour.
|
||||
Einkorn is very low in gluten and thus does not trap as much \ch{CO2} as
|
||||
a wheat based dough. To make the dough fluffier use more water or
|
||||
consider adding more wheat to the mix of your dough.}
|
||||
\end{center}
|
||||
\end{figure}
|
||||
|
||||
After 2--4~minutes flip over the pancake or flatbread. Bake it for the same
|
||||
time from the other side. Depending on what you like, you can wait a little
|
||||
longer to allow the bread to become a bit charred. The longer you
|
||||
bake your bread, the more of the acidity is going to evaporate. If your
|
||||
dough is a bit more on the sour side, you can use this trick to balance
|
||||
out the acidity. This really depends on which flavor you are looking for.
|
||||
|
||||
When making a flatbread I~recommend wrapping the baked flatbreads in a kitchen
|
||||
towel. This way more of the evaporating humidity stays inside of your bread,
|
||||
making sure your flatbreads stay nice and fluffy for a longer period after the
|
||||
bake. A similar strategy is used when making corn tortillas.
|
||||
|
||||
You can safely store the baked flatbreads or pancakes in your fridge
|
||||
for weeks. When storing make sure to store them in an airtight plastic bag so that
|
||||
they do not dry out.
|
||||
|
||||
Keep a little bit of your unbaked dough. You can use it to make the next
|
||||
batch of bread or pancakes for the next day. If you want to bake a few days later, add
|
||||
a little bit of water and flour and store this mixture in your fridge
|
||||
for as long as you like\footnote{The starter will stay good for months. If you expect to
|
||||
leave it longer, consider drying a little bit of your sourdough starter.}.
|
||||
|
||||
\subsection{Simple flatbread recipe}%
|
||||
\label{subsec:flat-bread-recipe}
|
||||
|
||||
By following the steps outlined in this section,
|
||||
you'll be introduced to a versatile bread that's perfect for a myriad of
|
||||
culinary applications. Whether you're scooping up a savory dip,
|
||||
wrapping a flavorful filling, or simply enjoying a piece with a drizzle
|
||||
of olive oil, these flatbreads are sure to impress.
|
||||
|
||||
\subsubsection*{Ingredients}
|
||||
|
||||
\begin{tabular}{r@{}rl@{}}
|
||||
\qty{400}{\gram} &~(\qty{100}{\percent}) & Flour (wheat, rye, corn, whatever you have at hand)\\
|
||||
\qty{320}{\gram} & (\qty{80}{\percent}) & Water, preferably at room temperature\\
|
||||
\qty{80}{\gram} & (\qty{20}{\percent}) & Active sourdough starter\\
|
||||
\qty{8}{\gram} & (\qty{2}{\percent}) & Salt\\
|
||||
\end{tabular}
|
||||
|
||||
\subsubsection*{Instructions}
|
||||
\begin{description}
|
||||
\item[Prepare the dough] In a large mixing bowl, combine the flour and water.
|
||||
Mix until you have a shaggy dough with no dry spots.
|
||||
|
||||
Add the sourdough starter and salt to the mixture. Incorporate them thoroughly
|
||||
until you achieve a smooth and homogenized dough.
|
||||
|
||||
\item[Fermentation:] Cover the bowl with a lid or plastic wrap. Allow the dough
|
||||
to rest and ferment until it has increased by at least \qty{50}{\percent}
|
||||
in size. Depending on the temperature and activity of your starter, this
|
||||
can take anywhere from 4 to 24~hours.
|
||||
|
||||
\item[Cooking preparation:] Once the dough has risen, heat a pan over medium heat.
|
||||
Lightly oil the pan, ensuring to wipe away any excess oil with a paper towel.
|
||||
|
||||
\item[Shaping and cooking:] With a ladle or your hands, scoop out a portion of
|
||||
the dough and place it onto the hot pan, spreading it gently like a pancake.
|
||||
|
||||
Cover the pan with a lid. This traps the steam and ensures even cooking
|
||||
from the top, allowing for easier flipping later.
|
||||
|
||||
After about 5~minutes, or when the bottom of the flatbread has a
|
||||
golden-brown crust, carefully flip it using a spatula.
|
||||
|
||||
\emph{Adjusting cook time.} If the flatbread appears too dark,
|
||||
remember to reduce the cooking time slightly for the next one.
|
||||
Conversely, if it's too pale, allow it to cook a bit longer before flipping.
|
||||
|
||||
Cook the flipped side for an additional 5~minutes or until it's also golden
|
||||
brown.
|
||||
|
||||
\item[Storing:] Once cooked, remove the flatbread from the pan and place it on a
|
||||
kitchen towel. Wrapping the breads in the towel will help retain their
|
||||
softness and prevent them from becoming overly crisp.
|
||||
Repeat the cooking process for the remaining dough.
|
||||
|
||||
\item[Serving suggestion:] Enjoy your sourdough flatbreads warm,
|
||||
paired with your favorite dips, spreads, or as a side to any meal.
|
||||
|
||||
\end{description}
|
||||
\section{Loaf pan bread}
|
||||
|
||||
Loaf pan bread is made using the help of a special loaf pan
|
||||
@@ -133,15 +385,13 @@ and tools are required.
|
||||
\end{center}
|
||||
\end{figure}
|
||||
|
||||
Normally you mix your dough. When using wheat you make sure
|
||||
that you mix enough to develop a gluten network.
|
||||
You allow the dough to reach
|
||||
a certain size increase during the fermentation. Afterwards you divide and pre-shape
|
||||
the dough into the desired visual shape that you like.
|
||||
Each shape requires a different technique. Sometimes achieving
|
||||
exactly the right shape can be challenging. Making a baguette,
|
||||
for instance, requires you to perform more steps. Mastering this
|
||||
technique takes several attempts.
|
||||
Normally you mix your dough, when using wheat you make sure that you mix
|
||||
enough to develop a gluten network. You allow the dough to reach a certain
|
||||
size increase during the fermentation, afterwards you divide and pre-shape the
|
||||
dough into the desired visual shape that you like. Each shape requires a
|
||||
different technique. Sometimes achieving exactly the right shape can be
|
||||
challenging, making a baguette for instance, requires you to perform more
|
||||
steps. Mastering this technique takes several attempts.
|
||||
|
||||
Once the dough is shaped, it is proofed again for a certain
|
||||
period of time. Once the dough is ready, a sharp tool such
|
||||
@@ -154,245 +404,4 @@ But after baking you will be rewarded with a beautiful bread
|
||||
with great taste and consistency.
|
||||
|
||||
There is a fully dedicated recipe and tutorial
|
||||
for this type of bread in the~''\nameref{chapter:wheat-sourdough}''~chapter.
|
||||
|
||||
\section{Flatbread framework}%
|
||||
\label{section:flat-bread-framework}
|
||||
|
||||
If you are just getting started, making a flatbread is the
|
||||
easiest way to start making great bread at home. With just a
|
||||
few steps, you can stop buying bread forever. This works with
|
||||
any flour, including gluten-free options.
|
||||
|
||||
\begin{flowchart}[!htb]
|
||||
\begin{center}
|
||||
\input{figures/fig-process-flat-bread.tex}
|
||||
\caption[The process to make a sourdough flatbread]{The process of making a flatbread is very
|
||||
simple, requiring very little effort. This type of bread is especially
|
||||
handy for busy bakers.}%
|
||||
\label{fig:flat-bread-process}
|
||||
\end{center}
|
||||
\end{flowchart}
|
||||
|
||||
This is my go-to recipe that I~use to make bread whenever
|
||||
I~have little time or when I~am abroad. You can choose
|
||||
between two options:
|
||||
%
|
||||
\begin{enumerate}
|
||||
\item A flatbread similar to a roti or naan bread
|
||||
\item sourdough pancakes.
|
||||
\end{enumerate}
|
||||
|
||||
\begin{table}[!htb]
|
||||
\begin{center}
|
||||
\input{tables/table-flat-bread-pancake-recipe.tex}
|
||||
\caption[Flatbread recipe]{Flatbread or pancake recipe for 1 person.
|
||||
Multiply the ingredients to increase portion size. Refer to the
|
||||
Section~\ref{section:bakers-math}
|
||||
``\nameref{section:bakers-math}'' to learn how to understand and
|
||||
use the percentages properly.}%
|
||||
\label{tab:flat-bread-ingredients}
|
||||
\end{center}
|
||||
\end{table}
|
||||
|
||||
To get started prepare your sourdough starter. If it has not been used for a very
|
||||
long time, consider giving it another feed. To do so simply take \qty{1}{\gram} of your
|
||||
existing sourdough starter and feed it with \qty{5}{\gram} of flour and \qty{5}{\gram} of water.
|
||||
If you do this in the morning, your sourdough starter will be ready in the evening. The
|
||||
warmer it is, the sooner it will be ready. If it is very cold where you live, consider
|
||||
using warm water.
|
||||
|
||||
\begin{figure}[htb!]
|
||||
\begin{center}
|
||||
\includegraphics[width=1.0\textwidth]{flat-bread-wheat}
|
||||
\caption[Wheat flatbread]{A flatbread made with purely wheat flour. The
|
||||
dough is drier at around \qty{60}{\percent} hydration. The drier dough
|
||||
is a little harder to mix. As wheat contains more gluten, the dough
|
||||
puffs up during the baking process.}
|
||||
\end{center}
|
||||
\end{figure}
|
||||
|
||||
This way you should have around \qty{11}{\gram} of sourdough ready in the evening. You will have
|
||||
the perfect quantity to make a dough for one person. In case you want to make more
|
||||
bread, simply multiply the quantities shown in
|
||||
Table~\ref{tab:flat-bread-ingredients}.
|
||||
|
||||
Then in the evening simply mix the ingredients as shown in the table. Your dough
|
||||
is going to be ready in the morning. It's typically ready after 6--12~hours. If
|
||||
you use more sourdough starter, it will be ready faster. If you use less it will take
|
||||
longer. Try to aim for a fermentation time of 8--12~hours. If you use
|
||||
your dough too soon, the flavor might not be as good. If you use it later
|
||||
your dough might be a little more sour. The best option is to experiment
|
||||
and see what you personally like the most.
|
||||
|
||||
After mixing the ingredients together, cover the container in which
|
||||
you made the dough. This prevents the dough from drying out and makes
|
||||
sure no fruit flies get access. A transparent container will be helpful
|
||||
when getting started. You can observe the dough more easily and see when
|
||||
it is ready.
|
||||
|
||||
\begin{figure}[htb!]
|
||||
\begin{center}
|
||||
\includegraphics[width=1.0\textwidth]{ethiopian-woman-checking-bread}
|
||||
\caption[Ethiopian \emph{injera}]{An Ethiopian woman baking an \emph{injera}
|
||||
made using teff flour. The image has been provided by Charliefleurene
|
||||
via Wikipedia.}
|
||||
\end{center}
|
||||
\end{figure}
|
||||
|
||||
If you used the flatbread option with less water, look at the size increase
|
||||
of your dough. The dough should have increased at least \qty{50}{\percent} in size.
|
||||
Also look out for bubbles on the sides of your container.
|
||||
When using the pancake recipe, look out for bubbles on the surface of your dough.
|
||||
In both cases use your nose to check the scent of your dough. Depending
|
||||
on your sourdough starter's microbiome your dough will have
|
||||
dairy, fruity, alcoholic notes or vinegary, acetic notes. Relying
|
||||
on the smell of your dough is the best way to judge whether your
|
||||
dough is ready or not. Timings are not reliable as they
|
||||
depend on your starter and the temperature. If your dough
|
||||
is ready too soon, you can now move it directly to the fridge and bake
|
||||
it at a later, more convenient time. The low temperature will halt the fermentation
|
||||
process\footnote{There are some exceptions. In some rare cases your starter
|
||||
might also work at lower temperatures. You might have cultivated microbes that work best at
|
||||
low temperatures. Nevertheless, fermentation
|
||||
is always slower the colder it gets. A fridge really helps to preserve the state
|
||||
of your dough.}.
|
||||
and your dough will last for several days. The longer you wait, the more sour the
|
||||
bread is going to be. The fridge is a great option in case you want to
|
||||
take the dough with you when visiting friends. People are going
|
||||
to love you for the freshly baked flatbreads or pancakes. If you dare,
|
||||
you can also taste a little bit of your raw uncooked dough. It is likely
|
||||
going to taste relatively sour. I~do this frequently to better evaluate the
|
||||
state of my doughs.
|
||||
|
||||
|
||||
\begin{figure}[htb!]
|
||||
\begin{center}
|
||||
\includegraphics[width=1.0\textwidth]{injera-pancake-texture.jpg}
|
||||
\caption[Teff sourdough pancake]{A sourdough pancake made with teff flour.
|
||||
The pockets come from evaporated water and \ch{CO2} created by the
|
||||
microbes. The image has been provided by Lukasz Nowak via Wikipedia.}
|
||||
\end{center}
|
||||
\end{figure}
|
||||
|
||||
If you are feeling lazy or don't have time, you could also use older sourdough starter
|
||||
to make the dough directly without any prior starter feedings. Your sourdough starter
|
||||
is going to regrow inside your dough. The
|
||||
final bread might be a bit more on the sour side as the balance of yeast to
|
||||
bacteria could be off. In the Table~\ref{tab:flat-bread-ingredients}
|
||||
I~recommended using around \qtyrange{5}{20}{\percent}
|
||||
of sourdough starter based on the flour to make the dough. If you were to follow
|
||||
this approach, just use around \qty{1}{\percent} and make the dough directly.
|
||||
The dough is probably going to be ready 24~hours later, depending on the temperature.
|
||||
|
||||
If you want to make sweet pancakes, add some sugar and optional eggs to your dough
|
||||
now. A good quantity of eggs is around 1 egg per \qty{100}{\gram} of flour.
|
||||
Stir your dough a little bit and it will be ready to be used. You'll
|
||||
have delicious sweet savory pancakes, the perfect combination. By
|
||||
adding the sugar now, you make sure that the microbes don't have
|
||||
enough time to fully ferment it. If you had added the sugar
|
||||
earlier, no sweet flavor would be left 12~hours later.
|
||||
|
||||
To bake your dough heat your stove to medium temperature. Add a little bit of
|
||||
oil to the pan. This helps with heat distribution and ensures even cooking.
|
||||
With a spatula or a spoon place your dough in the pan. If your dough
|
||||
was sitting in the fridge, bake it directly. There is no need to wait for your
|
||||
dough to come to room temperature. If you have a lid,
|
||||
place it on your pan. The lid helps to cook your dough from the top.
|
||||
The evaporating water will circulate and heat up the dough's surface. When
|
||||
making a flatbread, make the dough around \qty{1}{\cm} thick. When using the
|
||||
pancake option, opt for around \qtyrange{0.1}{0.5}{\cm} depending on what you
|
||||
like.
|
||||
|
||||
\begin{figure}[htb!]
|
||||
\begin{center}
|
||||
\includegraphics[width=1.0\textwidth]{einkorn-crumb.jpg}
|
||||
\caption[Einkorn crum]{The crumb of a flatbread made with einkorn as flour.
|
||||
Einkorn is very low in gluten and thus does not trap as much \ch{CO2} as
|
||||
a wheat based dough. To make the dough fluffier use more water or
|
||||
consider adding more wheat to the mix of your dough.}
|
||||
\end{center}
|
||||
\end{figure}
|
||||
|
||||
After 2--4~minutes flip over the pancake or flatbread. Bake it for the same
|
||||
time from the other side. Depending on what you like, you can wait a little
|
||||
longer to allow the bread to become a bit charred. The longer you
|
||||
bake your bread, the more of the acidity is going to evaporate. If your
|
||||
dough is a bit more on the sour side, you can use this trick to balance
|
||||
out the acidity. This really depends on which flavor you are looking for.
|
||||
|
||||
When making a flatbread I~recommend wrapping the baked flatbreads
|
||||
in a kitchen towel. This way more of the evaporating humidity
|
||||
stays inside of your bread. This makes sure your flatbreads stay
|
||||
nice and fluffy for a longer period after the bake. A similar strategy is
|
||||
used when making corn tortillas.
|
||||
|
||||
You can safely store the baked flatbreads or pancakes in your fridge
|
||||
for weeks. When storing make sure to store them in an airtight plastic bag so that
|
||||
they do not dry out.
|
||||
|
||||
Keep a little bit of your unbaked dough. You can use it to make the next
|
||||
batch of bread or pancakes for the next day. If you want to bake a few days later, add
|
||||
a little bit of water and flour and store this mixture in your fridge
|
||||
for as long as you like\footnote{The starter will stay good for months. If you expect to
|
||||
leave it longer, consider drying a little bit of your sourdough starter.}.
|
||||
|
||||
\section{Simple flatbread recipe}%
|
||||
\label{section:flat-bread-recipe}
|
||||
|
||||
By following the steps outlined in this section,
|
||||
you'll be introduced to a versatile bread that's perfect for a myriad of
|
||||
culinary applications. Whether you're scooping up a savory dip,
|
||||
wrapping a flavorful filling, or simply enjoying a piece with a drizzle
|
||||
of olive oil, these flatbreads are sure to impress.
|
||||
|
||||
\subsection*{Ingredients}
|
||||
|
||||
\begin{tabular}{r@{}rl@{}}
|
||||
\qty{400}{\gram} &~(\qty{100}{\percent}) & Flour (wheat, rye, corn, whatever you have at hand)\\
|
||||
\qty{320}{\gram} & (\qty{80}{\percent}) & Water, preferably at room temperature\\
|
||||
\qty{80}{\gram} & (\qty{20}{\percent}) & Active sourdough starter\\
|
||||
\qty{8}{\gram} & (\qty{2}{\percent}) & Salt\\
|
||||
\end{tabular}
|
||||
|
||||
\subsection*{Instructions}
|
||||
\begin{description}
|
||||
\item[Prepare the Dough] In a large mixing bowl, combine the flour and water.
|
||||
Mix until you have a shaggy dough with no dry spots.
|
||||
|
||||
Add the sourdough starter and salt to the mixture. Incorporate them thoroughly
|
||||
until you achieve a smooth and homogenized dough.
|
||||
|
||||
\item[Fermentation] Cover the bowl with a lid or plastic wrap. Allow the dough
|
||||
to rest and ferment until it has increased by at least \qty{50}{\percent}
|
||||
in size. Depending on the temperature and activity of your starter, this
|
||||
can take anywhere from 4 to 24~hours.
|
||||
|
||||
\item[Cooking Preparation] Once the dough has risen, heat a pan over medium heat.
|
||||
Lightly oil the pan, ensuring to wipe away any excess oil with a paper towel.
|
||||
|
||||
\item[Shaping and Cooking] With a ladle or your hands, scoop out a portion of
|
||||
the dough and place it onto the hot pan, spreading it gently like a pancake.
|
||||
|
||||
Cover the pan with a lid. This traps the steam and ensures even cooking
|
||||
from the top, allowing for easier flipping later.
|
||||
|
||||
After about 5~minutes, or when the bottom of the flatbread has a
|
||||
golden-brown crust, carefully flip it using a spatula.
|
||||
|
||||
\item[Adjusting Cook Time] If the flatbread appears too dark,
|
||||
remember to reduce the cooking time slightly for the next one.
|
||||
Conversely, if it's too pale, allow it to cook a bit longer before flipping.
|
||||
|
||||
Cook the flipped side for an additional 5~minutes or until it's also golden
|
||||
brown.
|
||||
|
||||
\item[Storing] Once cooked, remove the flatbread from the pan and place it on a
|
||||
kitchen towel. Wrapping the breads in the towel will help retain their
|
||||
softness and prevent them from becoming overly crisp.
|
||||
Repeat the cooking process for the remaining dough.
|
||||
|
||||
\item[Serving Suggestion] Enjoy your sourdough flatbreads warm,
|
||||
paired with your favorite dips, spreads, or as a side to any meal.
|
||||
|
||||
\end{description}
|
||||
for this type of bread in the~''\nameref{chapter:wheat-sourdough}''~Chapter.
|
||||
|
||||
69
book/figures/fig-sourdough-history-timeline.tex
Normal file
69
book/figures/fig-sourdough-history-timeline.tex
Normal file
@@ -0,0 +1,69 @@
|
||||
\begin{tikzpicture}
|
||||
\pgfmathsetlengthmacro{\timelinewidth}{(\textwidth-0.5cm)}
|
||||
|
||||
% Define the width of each segment
|
||||
\pgfmathsetlengthmacro{\segmentwidth}{\timelinewidth/12}
|
||||
|
||||
% Draw horizontal lines
|
||||
\draw[line width=1pt, color=hlorange] (0,0) -- (\timelinewidth/2,0);
|
||||
\draw[line width=1pt] (\timelinewidth/2,0) -- (\timelinewidth/2 +1.5*\segmentwidth/3,0);
|
||||
\draw[line width=1pt] (\timelinewidth/2 + 2*\segmentwidth/3,0) --(\timelinewidth, 0);
|
||||
\draw[line width=1pt] (\timelinewidth/2+1.5*\segmentwidth/3-5,-0.2) -- (\timelinewidth/2+1.5*\segmentwidth/3+5, 0.2);
|
||||
\draw[line width=1pt] (\timelinewidth/2+2*\segmentwidth/3-5,-0.2) -- (\timelinewidth/2+2*\segmentwidth/3+5, 0.2);
|
||||
|
||||
% Lines for periods
|
||||
\draw[stealth-stealth, line width=1pt] (0,-3.7)
|
||||
-- node[midway, timeline_timespan] {Historic breadmaking} ({\segmentwidth * 7.8},-3.7);
|
||||
\draw[stealth-stealth, line width=1pt] ({\segmentwidth * 7.8},-3.7)
|
||||
-- node[midway, timeline_timespan] {Modern bread} ({\segmentwidth * 12},-3.7);
|
||||
|
||||
% Regularly placed events, not in chronological order
|
||||
% since should be placed on top of others on the timeline
|
||||
|
||||
% BC
|
||||
\draw[line width=1pt] ({\segmentwidth*3},1.0) -- ({\segmentwidth*3},0.3)
|
||||
node[at start, left, timeline_event] {6000~BC: First beer in Egypt};
|
||||
\draw[line width=1pt] ({\segmentwidth*5.95},1.5) -- ({\segmentwidth*5.95},0.3)
|
||||
node[at start, left, timeline_event] {70~BC:~First water mill};
|
||||
|
||||
% Sourdough in Jordan
|
||||
\draw[line width=1pt] (0,-0.3) -- (0,-1.5);
|
||||
\draw[line width=1pt] (0,-1.5) -- (0.25,-1.5);
|
||||
\node[timeline_event, below, anchor=west] at (0.25,-1.5)
|
||||
{\begin{tabular}{@{}l@{}l@{}}
|
||||
\num{12000}~BC:&~Sourdough in Jordan\\
|
||||
&~Cultivation of Einkorn\\
|
||||
\end{tabular}};
|
||||
|
||||
% AD
|
||||
\draw[line width=1pt] ({\segmentwidth*10.50},1.0) -- ({\segmentwidth*10.50},0.3)
|
||||
node[at start, above, timeline_event] {\hspace{1.0cm}1950:~Modern Wheat};
|
||||
\draw[line width=1pt] ({\segmentwidth*9.60},1.5) -- ({\segmentwidth*9.60},0.3)
|
||||
node[at start, above, timeline_event] {1868:~Commercial yeast};
|
||||
\draw[line width=1pt] ({\segmentwidth*7.8},2) -- ({\segmentwidth*7.8},0.3)
|
||||
node[at start, above, timeline_event] {1680:~Discovery of microorganisms};
|
||||
|
||||
\draw[line width=1pt] ({\segmentwidth*8.80},-1.25) -- ({\segmentwidth*8.80},-0.3)
|
||||
node[at start, left, timeline_event] {1785:~Steam mill};
|
||||
\draw[line width=1pt] ({\segmentwidth*9.57},-1.75) -- ({\segmentwidth*9.57},-0.3)
|
||||
node[at start, left, timeline_event] {1857:~Isolated Yeast};
|
||||
\draw[line width=1pt] ({\segmentwidth*9.80},-2.25) -- ({\segmentwidth*9.80},-0.3)
|
||||
node[at start, left, timeline_event] {1885:~Electrical mixer};
|
||||
\draw[line width=1pt] ({\segmentwidth*11.20},-2.75) -- ({\segmentwidth*11.20},-0.3)
|
||||
node[at start, left, timeline_event] {2020:~COVID-19 Pandemic};
|
||||
|
||||
% Indicators for period
|
||||
% Draw millenary and century separators
|
||||
\foreach \i/\century in {0/-12000, 1/-10000, 2/-8000, 3/-6000, 4/-4000, 5/-2000}{
|
||||
% Separators
|
||||
\draw[line width=1pt, color=hlorange] (\i*\segmentwidth,0.1) -- (\i*\segmentwidth,-0.1);
|
||||
% Events for timeline
|
||||
\node[timeline_event, below, text=hlorange] at ({(\i)*\segmentwidth},-0.1) {\num{\century}};
|
||||
}
|
||||
\foreach \i/\century in {6/0, 7/1600, 8/1700, 9/1800, 10/1900, 11/2000, 12/2100}{
|
||||
% Separators
|
||||
\draw[line width=1pt] (\i*\segmentwidth,0.1) -- (\i*\segmentwidth,-0.1);
|
||||
% Events for timeline
|
||||
\node[timeline_event, below] at ({(\i)*\segmentwidth},-0.1) {\num{\century}};
|
||||
}
|
||||
\end{tikzpicture}
|
||||
@@ -33,6 +33,7 @@ organisms inhabit extreme environments, from boiling vents to icy waters.
|
||||
divided into months, and extending to the present day,
|
||||
marked at midnight. This visualization shows the pivotal steps
|
||||
of life and sourdough on earth.}%
|
||||
\label{fig:planet-timeline}
|
||||
\end{center}
|
||||
\end{figure}
|
||||
|
||||
@@ -50,23 +51,33 @@ land.
|
||||
|
||||
By December~3, yeasts emerged on land. This laid groundwork for bread-making.
|
||||
Jump 140~million years to December~14, and dinosaurs arose. Just a couple
|
||||
of days after their appearance on December~17 the super continent pangea
|
||||
of days after their appearance on December~17 the super continent Pangea
|
||||
started to rift apart, reshaping the continents into their current form.
|
||||
The dinosaurs reigned until December~29 when they faced extinction.
|
||||
Another 25~million years later, or our timeline's 2~days after the dinosaur
|
||||
extinction, humans appeared.
|
||||
|
||||
A few hours later after the arrival of humans, a more subtle culinary
|
||||
revolution was unfolding. By \num{12000}~BC, just 5 seconds before our metaphorical
|
||||
revolution was unfolding. By \num{12000}~BC, just 5 seconds before our metaphorical
|
||||
midnight, the first sourdough breads were being baked in ancient Jordan. A blink of
|
||||
an eye later, or 4~seconds in our time compression, Pasteur's groundbreaking work
|
||||
with yeasts set the stage for modern bread-making. From the moment this book
|
||||
began to take shape to your current reading, only milliseconds have ticked by~\cite{Yong_2017}.
|
||||
began to take shape to your current reading, only milliseconds have ticked
|
||||
by~\cite{Yong+2017}.
|
||||
|
||||
Now delving deeper into the realm of sourdough, it can likely be traced to aforementioned
|
||||
Ancient Jordan~\cite{jordan+bread}. Looking at the earth's timeline sourdough
|
||||
bread can be considered a very recent invention.
|
||||
|
||||
\begin{figure}[!htb]
|
||||
\begin{center}
|
||||
\input{figures/fig-sourdough-history-timeline.tex}
|
||||
\caption[Sourdough history timeline]{Timeline of significant discoveries and
|
||||
events leading to modern sourdough bread.}%
|
||||
\label{fig:sourdough-timeline}
|
||||
\end{center}
|
||||
\end{figure}
|
||||
|
||||
The exact origins of fermented
|
||||
bread are, however, unknown. One of the most ancient preserved
|
||||
sourdough breads has been excavated in Switzerland~\cite{switzerland+bread}.
|
||||
@@ -103,18 +114,18 @@ was extended due to the increased acidity.
|
||||
Quickly, similar processes were discovered when brewing beer
|
||||
or making wine. A small tiny batch of the previous production
|
||||
would be used for the next production. In this way, humans created
|
||||
modern bread yeasts, wine yeasts, and beer yeasts. Only in 1680,
|
||||
the scientist Anton van~Leeuwenhoek first studied yeast microorganisms
|
||||
under a microscope. Over time with each batch, the yeasts and bacteria
|
||||
modern bread yeasts, wine yeasts, and beer yeasts~\cite{egypt+beer}.
|
||||
|
||||
Over time with each batch, the yeasts and bacteria
|
||||
would become better at consuming whatever they were thrown at.
|
||||
By feeding your sourdough starter, you are selectively breeding
|
||||
microorganisms that are good at eating your flour. With
|
||||
each iteration, your sourdough knows how to better ferment the flour
|
||||
at hand. This is also the reason why more mature sourdough starters sometimes
|
||||
tend to leaven doughs faster~\cite{review+of+sourdough+starters}. It is crazy if you
|
||||
think about it. People have been using this process despite not
|
||||
knowing what was actually going on for thousands of years! The
|
||||
sourdough in itself is a symbiotic relationship. But the sourdough
|
||||
at hand. This is also the reason\footnote{It is crazy if you think about it.
|
||||
People have been using this process despite not knowing what was going on for
|
||||
thousands of years!} why more mature sourdough starters sometimes tend to
|
||||
leaven doughs faster~\cite{review+of+sourdough+starters}. The sourdough in
|
||||
itself is a symbiotic relationship, but the sourdough
|
||||
also adapted to humans and formed a symbiotic relationship with us.
|
||||
For food and water, we are rewarded with delicious bread. In exchange,
|
||||
we shelter and protect the sourdough. Spores from the starter
|
||||
@@ -122,39 +133,122 @@ are spread through aerial contamination or insects like fruit flies.
|
||||
This allows the sourdough starter to spread its spores even
|
||||
further all around the world.
|
||||
|
||||
Brewers would start to experiment with utilizing the muddy leftovers
|
||||
of the beer fermentation to start making doughs. They would notice
|
||||
Evidence suggests early grain grinding in northern Australia around
|
||||
\num{60000}~BC, notably at the Madjedbebe rock shelter in Arnhem
|
||||
Land~\cite{aboriginal+grinding+stones}. However, a more significant
|
||||
advancement occurred later, as documented by the ancient Greek geographer
|
||||
Strabo in \num{71}~BC\@. Strabo's writings described the first water-powered
|
||||
stone mill, known as a \emph{gristmill}. These mills advanced flour production
|
||||
from a few kilograms up to several metric tons per day~\cite{history+mills}.
|
||||
|
||||
These early mills featured horizontal paddle wheels, eventually termed
|
||||
\emph{Norse wheels} due to their prevalence in Scandinavia. The paddle wheels
|
||||
connected to a shaft, which, in turn, linked to the central runner stone for
|
||||
grinding. Water flow propelled the paddle wheels, transferring the grinding
|
||||
force to the stationary \emph{bed}, typically a stone of similar size and
|
||||
shape. This design was straightforward, avoiding the need for gears. However,
|
||||
it had a limitation: the stone's rotation speed relied on water volume and
|
||||
flow rate, making it most suitable for regions with fast-flowing streams,
|
||||
often found in mountainous areas~\cite{mills+scandinavia}.
|
||||
|
||||
In the year \num{1680}, a remarkable scientist by the name of
|
||||
Antonie~van~Leeuwenhoek introduced a groundbreaking innovation that would
|
||||
forever alter our understanding of the microscopic world and ultimately bread
|
||||
making. Van~Leeuwenhoek, a master of lens craftsmanship, possessed an
|
||||
insatiable fascination with realms invisible to the naked eye. His pioneering
|
||||
work birthed the first modern microscope. What set Van~Leeuwenhoek apart was
|
||||
the exceptional quality of his lenses, capable of magnifying tiny
|
||||
microorganisms by an astounding factor of \num{270}. Driven by an unrelenting
|
||||
curiosity to unveil the unseen, he embarked on a journey of exploration. He
|
||||
scrutinized flies, examined lice-infested hair, and ultimately turned his gaze
|
||||
toward the tranquil waters of a small lake near Delft.
|
||||
|
||||
In this serene aquatic habitat, he made astonishing observations, discovering
|
||||
algae and minuscule, dancing creatures hitherto hidden from human perception.
|
||||
Eager to share his revelatory findings with the scientific community,
|
||||
Van~Leeuwenhoek faced skepticism, as it was difficult to fathom that someone
|
||||
had witnessed thousands of diminutive, dancing entities—entities so tiny that
|
||||
they eluded the human eye.
|
||||
|
||||
Undeterred by skepticism, he continued his relentless pursuit of the unseen,
|
||||
directing his lens towards a brewer's beer sludge. In this obscure medium,
|
||||
Van~Leeuwenhoek made history by becoming the first human to lay eyes upon
|
||||
bacteria and yeast, unraveling a previously concealed world that would
|
||||
revolutionize our understanding of microbiology~\cite{Yong+2017+Leeuwen}.
|
||||
|
||||
At the same time brewers would start to experiment with utilizing the muddy
|
||||
leftovers of the beer fermentation to start making doughs. They would notice
|
||||
that the resulting bread doughs were becoming fluffy and compared
|
||||
to the sourdough process would lack the acidity in the final product.
|
||||
A popular example is shown in a report from 1875. Eben Norton Horsford
|
||||
A popular example is shown in a report from \num{1875}. Eben Norton Horsford
|
||||
wrote about the famous \emph{Kaiser Semmeln} (Emperor's bread rolls).
|
||||
These are essentially bread rolls made with brewer's yeast instead
|
||||
of the sourdough leavening agent. As the process is more expensive,
|
||||
bread rolls like these were ultimately consumed by the noble people
|
||||
in Vienna~\cite{vienna+breadrolls}.
|
||||
|
||||
As industrialisation began the first steam-powered grain mill was developed by
|
||||
Oliver Evans in \num{1785}. Evans' design incorporated several innovations,
|
||||
including automated machinery for various milling processes, making it more
|
||||
efficient than traditional water or animal-powered mills. His steam-powered
|
||||
mill marked a significant advancement in industrial technology for bread
|
||||
making~\cite{evans+mill}.
|
||||
|
||||
\begin{figure}[ht]
|
||||
\includegraphics[width=\textwidth]{sourdough-stove}
|
||||
\caption{A bread made over the stove without an oven.}%
|
||||
\label{sourdough-stove}
|
||||
\end{figure}
|
||||
|
||||
Only in 1857, the French microbiologist Louis Pasteur discovered
|
||||
The biggest advancement of industrial breadmaking happened in \num{1857}.
|
||||
The French microbiologist Louis Pasteur discovered
|
||||
the process of alcoholic fermentation. He would prove that
|
||||
yeast microorganisms are the reason for alcoholic fermentation
|
||||
and not other chemical catalysts. What would then start is
|
||||
what I~describe as the 150 lost years of bread making. In 1879
|
||||
the first machines and centrifuges were developed to centrifuge
|
||||
pure yeast. This yeast would be extracted from batches of sourdough.
|
||||
and not other chemical catalysts. He continued with his research and
|
||||
was the first person to isolate and grow pure yeast strains.
|
||||
Soon later in \num{1868} in the Fleischmann brothers Charles
|
||||
and Maximilian were the first to patent pure yeast strains
|
||||
for bread making. The yeasts offered
|
||||
were isolated from batches of sourdough. By \num{1879} the machinery was built
|
||||
to multiply the yeast in large centrifuges~\cite{fleischmann+history}.
|
||||
The pure yeast would prove to be excellent and turbocharged
|
||||
at leavening bread doughs. What would previously take 10~hours
|
||||
to leaven a bread dough could now be done within 1~hour.
|
||||
The process became much more efficient. During World~War~II
|
||||
the first packaged dry yeast was developed. This would ultimately
|
||||
allow bakeries and home bakers to make bread much faster.
|
||||
Thanks to pure yeast, building bread making machines was
|
||||
possible. Provided you maintain the same temperature,
|
||||
your yeast would always ferment exactly the same way.
|
||||
The process became much more efficient. What ultimately made making large
|
||||
batches of dough possible, was the invention of the electrical kneader. Rufus
|
||||
Eastman, an American inventor, is often credited with an important advancement
|
||||
in mixer technology. In \num{1885}, he received a patent for an electric mixer
|
||||
with a mechanical hand-crank mechanism. This device was not as advanced or as
|
||||
widely adopted as later electric mixers, but it was an early attempt to
|
||||
mechanize mixing and kneading processes in the kitchen using electricity.
|
||||
Eastman's invention represented an important step in the development of
|
||||
electric mixers, but it wasn't as sophisticated or popular as later models
|
||||
like the KitchenAid mixer. The KitchenAid mixer, introduced in \num{1919}, is
|
||||
often recognized as one of the first widely successful electric mixers and
|
||||
played a significant role in revolutionizing kitchen appliances for home
|
||||
cooks~\cite{first+mixer}~\cite{kitchenaid+history}.
|
||||
|
||||
During World~War~II the first packaged dry yeast was developed. This would
|
||||
ultimately allow bakeries and home bakers to make bread much faster and more
|
||||
consistently. Thanks to pure yeast, building industrial bread making machines
|
||||
was now possible. Provided you maintain the same temperature, same flour and
|
||||
yeast strains fermentation became precisely reproducible. This ultimately lead
|
||||
to the development of giga bakeries and flour blenders. The bakeries demanded
|
||||
the same flour from year to year to bake bread in their machines. For this
|
||||
reason, none of the supermarket flour you buy today is single origin. It is
|
||||
always blended to achieve exactly the same product throughout the years.
|
||||
|
||||
Modern wheat, specifically the high-yielding and disease-resistant varieties
|
||||
commonly grown today, began to be developed in the mid-20th century. This
|
||||
period is often referred to as the \emph{Green Revolution.}
|
||||
|
||||
One of the key figures in this development was American scientist Norman
|
||||
Borlaug, who is credited with breeding high-yield wheat varieties,
|
||||
particularly dwarf wheat varieties, that were resistant to diseases and could
|
||||
thrive in various environmental conditions. His work, which started in the
|
||||
1940s and continued through the \num{1960}s, played a crucial role in
|
||||
increasing wheat production worldwide and alleviating food
|
||||
shortages~\cite{green+revolution}.
|
||||
|
||||
As fermentation
|
||||
times sped up, the taste of the final bread would deteriorate.
|
||||
@@ -168,7 +262,7 @@ of true nerds would continue making bread with sourdough.
|
||||
|
||||
Suddenly people started to talk more often about celiac disease
|
||||
and the role of gluten. The disease isn't new; it has first
|
||||
been described in 250 AD~\cite{coeliac+disease}. People
|
||||
been described in \num{250}~AD~\cite{coeliac+disease}. People
|
||||
would note how modern bread has much more gluten compared
|
||||
to ancient bread. The bread in ancient times probably was much flatter.
|
||||
The grains over time have been bred more and more towards containing a higher
|
||||
@@ -208,8 +302,9 @@ During the California Gold Rush, French bakers brought the sourdough
|
||||
culture to Northern America. A popular bread became the
|
||||
San Francisco sourdough. It's characterized by its unique
|
||||
tang (which was previously common for every bread). It
|
||||
however remained more of a niche food. What really expedited
|
||||
the comeback of sourdough was the 2020 COVID-19 pandemic.
|
||||
however remained more of a niche food while industrial bread
|
||||
was on the rise. What really expedited
|
||||
the comeback of sourdough was the \num{2020} COVID-19 pandemic.
|
||||
Flour and yeast became scarce in the supermarkets. While
|
||||
flour returned yeast couldn't be found. People started
|
||||
to look for alternatives and rediscovered the ancient
|
||||
|
||||
@@ -98,6 +98,75 @@
|
||||
howpublished = {\url{https://www.ncbi.nlm.nih.gov/pmc/articles/PMC6077754/}}
|
||||
}
|
||||
|
||||
@article{fleischmann+history,
|
||||
author = {Fleischmann History},
|
||||
title = {History of Fleischmann's},
|
||||
howpublished = {\url{https://www.fleischmannsyeast.com/our-history/}},
|
||||
note = {Accessed: 2023-12-04}
|
||||
}
|
||||
|
||||
@article{evans+mill,
|
||||
author = {Jeremy Norman},
|
||||
title = {Oliver Evans Builds the First Automated Flour Mill: Origins of the Integrated and Automated Factory},
|
||||
howpublished = {\url{https://www.historyofinformation.com/detail.php?entryid=3567}},
|
||||
note = {Accessed: 2023-12-04}
|
||||
}
|
||||
|
||||
@article{first+mixer,
|
||||
author = {United States Patent office},
|
||||
title = {Eastman Mixer for cream, eggs and liquors},
|
||||
howpublished = {\url{https://patents.google.com/patent/US330829}},
|
||||
note = {Accessed: 2023-12-04}
|
||||
}
|
||||
|
||||
@article{egypt+beer,
|
||||
author = {Smithsonian Magazine},
|
||||
title = {World’s Oldest Industrial-Scale Brewery Found in Egypt},
|
||||
howpublished = {\url{https://www.smithsonianmag.com/smart-news/worlds-oldest-industrial-scale-brewery-found-egypt-180977026/}},
|
||||
note = {Accessed: 2023-12-04}
|
||||
}
|
||||
|
||||
@article{kitchenaid+history,
|
||||
author = {KitchenAid},
|
||||
title = {KitchenAid Brand History},
|
||||
howpublished = {\url{https://www.kitchenaid.com/100year/history.html}},
|
||||
note = {Accessed: 2023-12-04}
|
||||
}
|
||||
|
||||
@article{aboriginal+grinding+stones,
|
||||
author = {First Peoples - State Relations},
|
||||
title = {Fact sheet: Aboriginal grinding stones},
|
||||
howpublished = {\url{https://www.firstpeoplesrelations.vic.gov.au/fact-sheet-aboriginal-grinding-stones}},
|
||||
note = {Accessed: 2023-12-04}
|
||||
}
|
||||
|
||||
@book{history+mills,
|
||||
title = {Archaeological Evidence for Early Water-Mills. An Interim Report},
|
||||
journal = {History of Technology},
|
||||
number = {10},
|
||||
author = {Wikander, Örjan},
|
||||
year = {1985},
|
||||
pages = {151--179}
|
||||
}
|
||||
|
||||
@book{mills+scandinavia,
|
||||
title = {Waterwheels and Windmills: Five machines that changed the world},
|
||||
author = {Mark, Denny},
|
||||
year = {2007},
|
||||
pages = {36}
|
||||
}
|
||||
|
||||
@article{green+revolution,
|
||||
author = {Borlaug, Norman},
|
||||
title = {Contributions of conventional plant breeding to food production},
|
||||
journal = {Science},
|
||||
volume = {219},
|
||||
number = {4585},
|
||||
pages = {689-693},
|
||||
year = {1983},
|
||||
doi = {10.1126/science.219.4585.689}
|
||||
}
|
||||
|
||||
@article{switzerland+bread,
|
||||
author = {Pasquale Catzeddu},
|
||||
title = {Flour and Breads and their Fortification in Health and Disease Prevention},
|
||||
@@ -105,7 +174,7 @@
|
||||
year = {2011}
|
||||
}
|
||||
|
||||
@book{Yong_2017,
|
||||
@book{Yong+2017,
|
||||
place = {London},
|
||||
title = {I contain multitudes: The microbes within US and a grander view of life},
|
||||
publisher = {Vintage},
|
||||
@@ -114,6 +183,15 @@
|
||||
pages = {5--9}
|
||||
}
|
||||
|
||||
@book{Yong+2017+Leeuwen,
|
||||
place = {London},
|
||||
title = {I contain multitudes: The microbes within US and a grander view of life},
|
||||
publisher = {Vintage},
|
||||
author = {Yong, Ed},
|
||||
year = {2017},
|
||||
pages = {39}
|
||||
}
|
||||
|
||||
@article{egyptian+bread,
|
||||
title = {Investigation of ancient Egyptian baking and brewing methods by correlative microscopy},
|
||||
volume = {273},
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
%TODO: last line is not great
|
||||
-\begin{tabular}{lll}
|
||||
%TODO: Alignement is not great
|
||||
\begin{tabular}{@{}lll@{}}
|
||||
\toprule
|
||||
& \textbf{Flat breads} & \textbf{Pancakes} \\ \midrule
|
||||
\textbf{Flour} & 100g & 100g \\
|
||||
\textbf{Water} & up to 100g (100\%) & 300g (300\%) \\
|
||||
\textbf{Sourdough starter} & 5--20g (5--20\%) & 5--20g (5--20\%) \\
|
||||
\textbf{Salt} & 2g (2\%) & 2g (2\%) \\
|
||||
\textbf{Bake when?} & Dough increased 50 percent in size & Bubbles visible on surface \\ \bottomrule
|
||||
& \textbf{Flat breads} & \textbf{Pancakes} \\ \midrule
|
||||
Flour & \qty{100}{g} & \qty{100}{g} \\
|
||||
Water & up to \qty{100}{g} (\qty{100}{\percent}) & \qty{300}{g} (\qty{300}{\percent}) \\
|
||||
Sourdough starter & 5--\qty{20}{g} (5--\qty{20}{\percent}) & 5--\qty{20}{g} (5--\qty{20}{\percent}) \\
|
||||
Salt & \qty{2}{g} (\qty{2}{\percent}) & \qty{2}{g} (\qty{2}{\percent}) \\
|
||||
Bake when? & Dough increased \qty{50}{\percent} in size & Bubbles visible on surface \\ \bottomrule
|
||||
\end{tabular}
|
||||
|
||||
@@ -1,10 +1,11 @@
|
||||
% TODO
|
||||
\begin{tabular}{@{}>{\bfseries}p{0.17\textwidth}ccc@{}}
|
||||
\begin{tabular}{@{}llll@{}}
|
||||
\toprule
|
||||
& \thead{Flatbread} & \thead{Loaf pan bread} & \thead{Free standing bread} \\ \midrule
|
||||
Cooking method & Fire, pan, barbecue & Oven & Oven \\
|
||||
Working time (min.) & 3 & 5 & 60 \\
|
||||
Flour types & All & All & Gluten flours \\
|
||||
Difficulty & Very easy & Easy & Difficult \\
|
||||
Cost & Low & Medium & High \\ \bottomrule
|
||||
& \multicolumn{3}{c}{\textbf{Type of bread}}\\
|
||||
\cmidrule(lll){2-4}
|
||||
& \textbf{Flat} & \textbf{Loaf pan} & \textbf{Free standing} \\ \midrule
|
||||
Cooking method & Pan, fire, barbecue & Oven & Oven \\
|
||||
Working time & 3~min. & 5~min. & 60~min. \\
|
||||
Flour types & All & All & Gluten flours \\
|
||||
Difficulty & Very easy & Easy & Difficult \\
|
||||
Cost & Low & Medium & High \\ \bottomrule
|
||||
\end{tabular}
|
||||
|
||||
Reference in New Issue
Block a user