Jekyll2023-05-23T08:54:12+00:00https://dhwon.com/feed.xmlDonghyeon WonDonghyeon WonHalf-Earth: Our Planet’s Fight for Life - E.O. Wilson2023-05-23T08:20:00+00:002023-05-23T08:45:00+00:00https://dhwon.com/book/book-half-earth<p><em>Half-Earth: Our Planet’s Fight for Life</em> is a book by an esteemed biologist, E.O. Wilson, which I enjoyed reading a few months ago. I truly found it inspiring and highly recommend everyone to read it. The book mainly explains how diverse, intricate and delicate our ecosystem is. I mean, we all know that nature is very complex, right? I thought I knew too. However, after reading the book, I felt embarrassed. This book served as a wake-up call for me. Let me share my thoughts and takeaways, along with some inspiring quotes.</p>
<ul>
<li><em>“The biosphere does not belong to us; we belong to it”</em> - This is my favorite quote from the book. If more individuals adopt this perspective, the world will be a better place to live.
<blockquote>
<p>Leaders in biodiversity research and conservation have long understood that the surviving wildlands of the world are not art museums.</p>
</blockquote>
<blockquote>
<p>What do we receive from them? The stabilization of the global environment they provide and their very existence are the gifts they give to us. We are their stewards, not their owners.</p>
</blockquote>
</li>
<li>Nature is far more complex and sophisticated than we can imagine. We can’t fully understand the system, so we should be extra careful when we make any decision that can impact the environment. In most cases, it may be even wiser to err on the side of refraining from taking action altogether.
<blockquote>
<p>Can the planet be run as a true spaceship by one intelligent species? Surely we would be foolish to take such a large and dangerous gamble.</p>
</blockquote>
<blockquote>
<p>We have only one planet and we are allowed only one such experiment. Why make a world-threatening and unnecessary gamble if a safe option is open?</p>
</blockquote>
</li>
</ul>
<p>Also, there is a cool <a href="https://www.half-earthproject.org/">project page</a> that I recommend checking out.</p>
<p><img src="/files/images/book-covers/half-earth.jpg" alt="image" /></p>Donghyeon WonHalf-Earth: Our Planet’s Fight for Life is a book by an esteemed biologist, E.O. Wilson, which I enjoyed reading a few months ago. I truly found it inspiring and highly recommend everyone to read it. The book mainly explains how diverse, intricate and delicate our ecosystem is. I mean, we all know that nature is very complex, right? I thought I knew too. However, after reading the book, I felt embarrassed. This book served as a wake-up call for me. Let me share my thoughts and takeaways, along with some inspiring quotes.Food Waste - Exploring “Food Loss and Waste” Database from FAO2022-03-29T17:32:00+00:002022-03-29T17:32:00+00:00https://dhwon.com/sustainability/food-waste-flw-db<p>In this post, we’ll take a quick look at the Food Loss and Waste Database (FLW DB) from the Food and Agriculture Organization (FAO) of the United Nations. The post will be mostly about data visualization and the limitations of the dataset.</p>
<p>I used Python and Pandas/Seaborn/Matplotlib libraries to visualize the data. You can find the full Python scripts on my <a href="https://github.com/wondonghyeon/codes-for-blog/tree/master/food-waste">GitHub repository</a>.</p>
<h2 id="tldr">TL;DR</h2>
<p>As described in <a href="https://www.fao.org/platform-food-loss-waste/flw-data/background/en/">the Background of the Food Loss and Waste Database page</a>, the dataset has clear limitations. The data collection research for food waste and loss seems to be at a very early stage, so it’s hard to draw a meaningful and insightful conclusion just by looking at the dataset. However, since data visualization is fun, I plotted some satisfying graphs.</p>
<h2 id="database-overview">Database Overview</h2>
<h3 id="downloading-the-data">Downloading the Data</h3>
<p>Please follow the below steps to download the dataset. (<strong>Note: The following steps are valid as of March 2022</strong>)</p>
<ul>
<li>Go to FAO’s FLW data page. <a href="https://www.fao.org/platform-food-loss-waste/flw-data/en/">link</a>.</li>
<li>Select “Year Range.” I used 1965 - 2021 for this post.</li>
<li>Download data by clicking the “Download Data” button on the bottom left of the page.</li>
</ul>
<p>Here are the first few rows of the dataset.</p>
<div class="language-python highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="c1"># read and show the first few rows of the dataframe
</span><span class="n">df</span> <span class="o">=</span> <span class="n">pd</span><span class="p">.</span><span class="n">read_csv</span><span class="p">(</span><span class="s">'./data/Data.csv'</span><span class="p">)</span>
<span class="n">df</span><span class="p">[:</span><span class="mi">8</span><span class="p">]</span>
</code></pre></div></div>
<div>
<style scoped="">
.dataframe tbody tr th:only-of-type {
vertical-align: middle;
}
.dataframe tbody tr th {
vertical-align: top;
}
.dataframe thead th {
text-align: right;
}
</style>
<table border="1" class="dataframe">
<thead>
<tr style="text-align: right;">
<th></th>
<th>m49_code</th>
<th>country</th>
<th>region</th>
<th>cpc_code</th>
<th>commodity</th>
<th>year</th>
<th>loss_percentage</th>
<th>loss_percentage_original</th>
<th>loss_quantity</th>
<th>activity</th>
<th>food_supply_stage</th>
<th>treatment</th>
<th>cause_of_loss</th>
<th>sample_size</th>
<th>method_data_collection</th>
<th>reference</th>
<th>url</th>
<th>notes</th>
</tr>
</thead>
<tbody>
<tr>
<th>0</th>
<td>104</td>
<td>Myanmar</td>
<td>NaN</td>
<td>0142</td>
<td>Groundnuts, excluding shelled</td>
<td>2009</td>
<td>5.22</td>
<td>5.22%</td>
<td>68100</td>
<td>NaN</td>
<td>Whole supply chain</td>
<td>NaN</td>
<td>NaN</td>
<td>NaN</td>
<td>FAO's annual Agriculture Production Questionna...</td>
<td>FAO Sources</td>
<td>NaN</td>
<td>NaN</td>
</tr>
<tr>
<th>1</th>
<td>104</td>
<td>Myanmar</td>
<td>NaN</td>
<td>0142</td>
<td>Groundnuts, excluding shelled</td>
<td>2008</td>
<td>5.43</td>
<td>5.43%</td>
<td>65240</td>
<td>NaN</td>
<td>Whole supply chain</td>
<td>NaN</td>
<td>NaN</td>
<td>NaN</td>
<td>FAO's annual Agriculture Production Questionna...</td>
<td>FAO Sources</td>
<td>NaN</td>
<td>NaN</td>
</tr>
<tr>
<th>2</th>
<td>104</td>
<td>Myanmar</td>
<td>NaN</td>
<td>0142</td>
<td>Groundnuts, excluding shelled</td>
<td>2007</td>
<td>5.61</td>
<td>5.61%</td>
<td>61080</td>
<td>NaN</td>
<td>Whole supply chain</td>
<td>NaN</td>
<td>NaN</td>
<td>NaN</td>
<td>FAO's annual Agriculture Production Questionna...</td>
<td>FAO Sources</td>
<td>NaN</td>
<td>NaN</td>
</tr>
<tr>
<th>3</th>
<td>104</td>
<td>Myanmar</td>
<td>NaN</td>
<td>0142</td>
<td>Groundnuts, excluding shelled</td>
<td>2006</td>
<td>5.40</td>
<td>5.4%</td>
<td>55270</td>
<td>NaN</td>
<td>Whole supply chain</td>
<td>NaN</td>
<td>NaN</td>
<td>NaN</td>
<td>FAO's annual Agriculture Production Questionna...</td>
<td>FAO Sources</td>
<td>NaN</td>
<td>NaN</td>
</tr>
<tr>
<th>4</th>
<td>104</td>
<td>Myanmar</td>
<td>NaN</td>
<td>0142</td>
<td>Groundnuts, excluding shelled</td>
<td>2005</td>
<td>5.00</td>
<td>5%</td>
<td>51970</td>
<td>NaN</td>
<td>Whole supply chain</td>
<td>NaN</td>
<td>NaN</td>
<td>NaN</td>
<td>FAO's annual Agriculture Production Questionna...</td>
<td>FAO Sources</td>
<td>NaN</td>
<td>NaN</td>
</tr>
<tr>
<th>5</th>
<td>104</td>
<td>Myanmar</td>
<td>NaN</td>
<td>0142</td>
<td>Groundnuts, excluding shelled</td>
<td>2004</td>
<td>5.00</td>
<td>5%</td>
<td>47310</td>
<td>NaN</td>
<td>Whole supply chain</td>
<td>NaN</td>
<td>NaN</td>
<td>NaN</td>
<td>FAO's annual Agriculture Production Questionna...</td>
<td>FAO Sources</td>
<td>NaN</td>
<td>NaN</td>
</tr>
<tr>
<th>6</th>
<td>104</td>
<td>Myanmar</td>
<td>NaN</td>
<td>0142</td>
<td>Groundnuts, excluding shelled</td>
<td>2003</td>
<td>5.00</td>
<td>5%</td>
<td>43880</td>
<td>NaN</td>
<td>Whole supply chain</td>
<td>NaN</td>
<td>NaN</td>
<td>NaN</td>
<td>FAO's annual Agriculture Production Questionna...</td>
<td>FAO Sources</td>
<td>NaN</td>
<td>NaN</td>
</tr>
<tr>
<th>7</th>
<td>108</td>
<td>Burundi</td>
<td>NaN</td>
<td>0111</td>
<td>Wheat</td>
<td>2020</td>
<td>3.50</td>
<td>3.5</td>
<td>NaN</td>
<td>Shelling, Threshing</td>
<td>Farm</td>
<td>NaN</td>
<td>NaN</td>
<td>NaN</td>
<td>Modelled Estimates</td>
<td>NaN</td>
<td>https://www.aphlis.net/en/page/20/data-tables#...</td>
<td>NaN</td>
</tr>
</tbody>
</table>
</div>
<h3 id="columns">Columns</h3>
<p>Here are the columns that I’ll be primarily using for this post. I believe the column names are self-explanatory, but please look at <a href="https://www.fao.org/platform-food-loss-waste/flw-data/background/en/">the Background of the Food Loss and Waste Database page</a> for the full details.</p>
<ul>
<li>year
<ul>
<li>e.g. 2017, 2018, …</li>
</ul>
</li>
<li>country
<ul>
<li>There are 149 unique countries.</li>
<li>e.g. ‘Austria’, ‘Jordan’, ‘Kenya’, …</li>
</ul>
</li>
<li>commodity
<ul>
<li>There are 194 unique commodities.</li>
<li>e.g. ‘Apples’, ‘Pears’, ‘Apricots’, ‘Cherries’, ‘Peaches and nectarines’, ‘Plums and sloes’, ‘Kiwi fruit’, ‘Strawberries’, ‘Blueberries’, …</li>
</ul>
</li>
<li>food_supply_stage
<ul>
<li>There are 20 unique food supply stages.</li>
<li>e.g. ‘Whole supply chain’, ‘Farm’, ‘Harvest’, ‘Storage’, ‘Processing’, ‘Trader’, ‘Retail’, …</li>
</ul>
</li>
<li>loss_percentage
<ul>
<li>e.g. 5%, 13.5%, 43.2%…</li>
</ul>
</li>
</ul>
<h2 id="data-visualization">Data Visualization</h2>
<p>I apologize for the small font size of the plots. I’m too lazy to rewrite the code. Please open the images in new windows to see the plots better.</p>
<h3 id="which-commodity-has-the-most-food-waste">Which Commodity Has The Most Food Waste?</h3>
<p>This section visualizes loss percentages for each commodity.</p>
<h3 id="the-us-whole-supply-chain">The U.S. (Whole Supply Chain)</h3>
<p>Let’s first look at the U.S. data. I’ll be looking at the “Whole supply chain” data from 2005.</p>
<div class="language-python highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="n">country</span> <span class="o">=</span> <span class="s">'United States of America'</span>
<span class="n">year</span> <span class="o">=</span> <span class="mi">2005</span>
<span class="n">supply_stage</span> <span class="o">=</span> <span class="s">"Whole supply chain"</span>
<span class="n">df_filtered</span> <span class="o">=</span> <span class="n">df</span><span class="p">[(</span><span class="n">df</span><span class="p">[</span><span class="s">'country'</span><span class="p">]</span> <span class="o">==</span> <span class="n">country</span><span class="p">)</span> <span class="o">&</span>
<span class="p">(</span><span class="n">df</span><span class="p">[</span><span class="s">'food_supply_stage'</span><span class="p">]</span> <span class="o">==</span> <span class="n">supply_stage</span><span class="p">)</span> <span class="o">&</span>
<span class="p">(</span><span class="n">df</span><span class="p">[</span><span class="s">'year'</span><span class="p">]</span> <span class="o">></span> <span class="n">year</span><span class="p">)]</span>
<span class="n">plot_order</span> <span class="o">=</span> <span class="n">df_filtered</span><span class="p">.</span><span class="n">groupby</span><span class="p">(</span><span class="n">by</span><span class="o">=</span><span class="s">'commodity'</span><span class="p">).</span><span class="n">mean</span><span class="p">().</span><span class="n">sort_values</span><span class="p">(</span><span class="n">by</span><span class="o">=</span><span class="s">'loss_percentage'</span><span class="p">,</span> <span class="n">ascending</span><span class="o">=</span><span class="bp">False</span><span class="p">).</span><span class="n">index</span><span class="p">.</span><span class="n">tolist</span><span class="p">()</span>
<span class="n">fig</span><span class="p">,</span> <span class="n">ax</span> <span class="o">=</span> <span class="n">plt</span><span class="p">.</span><span class="n">subplots</span><span class="p">(</span><span class="n">figsize</span><span class="o">=</span><span class="p">(</span><span class="mi">20</span><span class="p">,</span> <span class="mi">6</span><span class="p">))</span>
<span class="n">plot</span> <span class="o">=</span> <span class="n">sns</span><span class="p">.</span><span class="n">barplot</span><span class="p">(</span><span class="n">x</span><span class="o">=</span><span class="s">'commodity'</span><span class="p">,</span> <span class="n">y</span><span class="o">=</span><span class="s">'loss_percentage'</span><span class="p">,</span> <span class="n">data</span><span class="o">=</span><span class="n">df_filtered</span><span class="p">,</span> <span class="n">order</span><span class="o">=</span><span class="n">plot_order</span><span class="p">,</span> <span class="n">ci</span><span class="o">=</span><span class="s">'sd'</span><span class="p">)</span>
<span class="n">ax</span><span class="p">.</span><span class="n">set_xticklabels</span><span class="p">(</span><span class="n">ax</span><span class="p">.</span><span class="n">get_xticklabels</span><span class="p">(),</span> <span class="n">rotation</span> <span class="o">=</span> <span class="mi">45</span><span class="p">,</span> <span class="n">horizontalalignment</span><span class="o">=</span><span class="s">'right'</span><span class="p">)</span>
<span class="n">ax</span><span class="p">.</span><span class="n">set_title</span><span class="p">(</span><span class="sa">f</span><span class="s">"Food Loss (</span><span class="si">{</span><span class="n">supply_stage</span><span class="si">}</span><span class="s">) by Commodity in </span><span class="si">{</span><span class="n">country</span><span class="si">}</span><span class="s">, (data from </span><span class="si">{</span><span class="n">year</span><span class="si">}</span><span class="s">, vertical bars show stddev)"</span><span class="p">.</span><span class="n">title</span><span class="p">())</span>
<span class="n">ax</span><span class="p">.</span><span class="nb">set</span><span class="p">(</span><span class="n">xlabel</span><span class="o">=</span><span class="bp">None</span><span class="p">)</span>
<span class="n">plt</span><span class="p">.</span><span class="n">show</span><span class="p">()</span>
</code></pre></div></div>
<p><img src="/files/images/others/us-food-loss-whole-supply-chain-since-2005.png" alt="png" /></p>
<p>Here are some interesting findings.</p>
<ul>
<li>“Grapefruit juice” has a large loss percentage while “Grapefruits” has a small loss percentage.</li>
<li>“Mixed grain” loss is large while individual grains (“Wheat” and “Barley”) losses are very small.</li>
<li>There are no data for meat. I don’t see beef, pork, and chicken.</li>
</ul>
<h3 id="other-countries-whole-supply-chain">Other Countries (Whole Supply Chain)</h3>
<p>Here are some plots for different countries that used the same code as the <a href="#the-us-whole-supply-chain">above</a>. There are more plots in my <a href="https://github.com/wondonghyeon/codes-for-blog/blob/master/food-waste/fao-flw-dataset-exploration.ipynb">repo</a>.</p>
<h4 id="canada">Canada</h4>
<p><img src="/files/images/others/canada-food-loss-whole-supply-chain-since-2005.png" alt="png" /></p>
<ul>
<li>Canada data is very similar to U.S. data.</li>
<li>There is “Meat of pig, fresh or chilled” in Candata data, which is not found in the U.S. data.
<h4 id="austria-germany-hungary">Austria, Germany, Hungary</h4>
<p>The followings data are from three European countries.</p>
</li>
</ul>
<p><img src="/files/images/others/austria-food-loss-whole-supply-chain-since-2005.png" alt="png" />
<img src="/files/images/others/germany-food-loss-whole-supply-chain-since-2005.png" alt="png" />
<img src="/files/images/others/hungary-food-loss-whole-supply-chain-since-2005.png" alt="png" /></p>
<ul>
<li>The above plots are mostly about grains (e.g., Rye, Wheat, Barley). I guess grain data in these countries were easier to collect than other commodities for FAO.</li>
<li>“Plums and sloes” loss is low in Hungary (about 2.5%), while the same number is high for Austria (about 28%). It’s hard to believe that Austria is ten times more efficient in processing plums than Hungary. I looked at the “reference” and “method_data_collection” of the rows, but they seem to be the same. To me, this seems like a limitation of the dataset - even though the data collection method is the same, it’s hard to believe the numbers.</li>
</ul>
<div class="language-python highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="n">year</span> <span class="o">=</span> <span class="mi">2005</span>
<span class="n">supply_stage</span> <span class="o">=</span> <span class="s">"Whole supply chain"</span>
<span class="n">countries</span> <span class="o">=</span> <span class="p">[</span><span class="s">"Hungary"</span><span class="p">,</span> <span class="s">"Austria"</span><span class="p">]</span>
<span class="n">commodity</span> <span class="o">=</span> <span class="s">"Plums and sloes"</span>
<span class="n">df_filtered</span> <span class="o">=</span> <span class="n">df</span><span class="p">[</span><span class="n">df</span><span class="p">[</span><span class="s">'country'</span><span class="p">].</span><span class="n">isin</span><span class="p">(</span><span class="n">countries</span><span class="p">)</span> <span class="o">&</span>
<span class="p">(</span><span class="n">df</span><span class="p">[</span><span class="s">'food_supply_stage'</span><span class="p">]</span> <span class="o">==</span> <span class="n">supply_stage</span><span class="p">)</span> <span class="o">&</span>
<span class="p">(</span><span class="n">df</span><span class="p">[</span><span class="s">'year'</span><span class="p">]</span> <span class="o">></span> <span class="n">year</span><span class="p">)</span> <span class="o">&</span> <span class="p">(</span><span class="n">df</span><span class="p">[</span><span class="s">'commodity'</span><span class="p">]</span> <span class="o">==</span> <span class="n">commodity</span><span class="p">)]</span>
<span class="n">df_filtered</span><span class="p">[[</span><span class="s">'country'</span><span class="p">,</span> <span class="s">'commodity'</span><span class="p">,</span> <span class="s">'loss_percentage'</span><span class="p">,</span> <span class="s">'food_supply_stage'</span><span class="p">,</span> <span class="s">'method_data_collection'</span><span class="p">,</span><span class="s">'reference'</span><span class="p">,</span> <span class="s">'year'</span><span class="p">]]</span>
</code></pre></div></div>
<div>
<style scoped="">
.dataframe tbody tr th:only-of-type {
vertical-align: middle;
}
.dataframe tbody tr th {
vertical-align: top;
}
.dataframe thead th {
text-align: right;
}
</style>
<table border="1" class="dataframe">
<thead>
<tr style="text-align: right;">
<th></th>
<th>country</th>
<th>commodity</th>
<th>loss_percentage</th>
<th>food_supply_stage</th>
<th>method_data_collection</th>
<th>reference</th>
<th>year</th>
</tr>
</thead>
<tbody>
<tr>
<th>7720</th>
<td>Hungary</td>
<td>Plums and sloes</td>
<td>2.40</td>
<td>Whole supply chain</td>
<td>FAO's annual Agriculture Production Questionna...</td>
<td>FAO Sources</td>
<td>2014</td>
</tr>
<tr>
<th>10267</th>
<td>Austria</td>
<td>Plums and sloes</td>
<td>26.12</td>
<td>Whole supply chain</td>
<td>FAO's annual Agriculture Production Questionna...</td>
<td>FAO Sources</td>
<td>2007</td>
</tr>
<tr>
<th>10282</th>
<td>Austria</td>
<td>Plums and sloes</td>
<td>35.30</td>
<td>Whole supply chain</td>
<td>FAO's annual Agriculture Production Questionna...</td>
<td>FAO Sources</td>
<td>2006</td>
</tr>
</tbody>
</table>
</div>
<h4 id="mexico-peru">Mexico, Peru</h4>
<p><img src="/files/images/others/mexico-food-loss-whole-supply-chain-since-2005.png" alt="png" />
<img src="/files/images/others/peru-food-loss-whole-supply-chain-since-2005.png" alt="png" /></p>
<ul>
<li>“Watermelons” loss percentages seem too different for these two countries. Mexico is about 0.4%, and Peru is about 45%.</li>
<li>The Mexico data doesn’t have a reference, so the large difference makes sense. One can imagine how difficult collecting food waste data is.</li>
</ul>
<div class="language-python highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="n">year</span> <span class="o">=</span> <span class="mi">2005</span>
<span class="n">supply_stage</span> <span class="o">=</span> <span class="s">"Whole supply chain"</span>
<span class="n">countries</span> <span class="o">=</span> <span class="p">[</span><span class="s">"Mexico"</span><span class="p">,</span> <span class="s">"Peru"</span><span class="p">]</span>
<span class="n">commodity</span> <span class="o">=</span> <span class="s">"Watermelons"</span>
<span class="n">df_filtered</span> <span class="o">=</span> <span class="n">df</span><span class="p">[</span><span class="n">df</span><span class="p">[</span><span class="s">'country'</span><span class="p">].</span><span class="n">isin</span><span class="p">(</span><span class="n">countries</span><span class="p">)</span> <span class="o">&</span> <span class="p">(</span><span class="n">df</span><span class="p">[</span><span class="s">'food_supply_stage'</span><span class="p">]</span> <span class="o">==</span> <span class="n">supply_stage</span><span class="p">)</span> <span class="o">&</span> <span class="p">(</span><span class="n">df</span><span class="p">[</span><span class="s">'year'</span><span class="p">]</span> <span class="o">></span> <span class="n">year</span><span class="p">)</span> <span class="o">&</span> <span class="p">(</span><span class="n">df</span><span class="p">[</span><span class="s">'commodity'</span><span class="p">]</span> <span class="o">==</span> <span class="n">commodity</span><span class="p">)]</span>
<span class="n">df_filtered</span><span class="p">[[</span><span class="s">'country'</span><span class="p">,</span> <span class="s">'commodity'</span><span class="p">,</span> <span class="s">'loss_percentage'</span><span class="p">,</span> <span class="s">'food_supply_stage'</span><span class="p">,</span> <span class="s">'method_data_collection'</span><span class="p">,</span><span class="s">'reference'</span><span class="p">,</span> <span class="s">'year'</span><span class="p">]]</span>
</code></pre></div></div>
<div>
<style scoped="">
.dataframe tbody tr th:only-of-type {
vertical-align: middle;
}
.dataframe tbody tr th {
vertical-align: top;
}
.dataframe thead th {
text-align: right;
}
</style>
<table border="1" class="dataframe">
<thead>
<tr style="text-align: right;">
<th></th>
<th>country</th>
<th>commodity</th>
<th>loss_percentage</th>
<th>food_supply_stage</th>
<th>method_data_collection</th>
<th>reference</th>
<th>year</th>
</tr>
</thead>
<tbody>
<tr>
<th>13919</th>
<td>Mexico</td>
<td>Watermelons</td>
<td>0.42</td>
<td>Whole supply chain</td>
<td>NaN</td>
<td>NaN</td>
<td>2011</td>
</tr>
<tr>
<th>17149</th>
<td>Peru</td>
<td>Watermelons</td>
<td>45.19</td>
<td>Whole supply chain</td>
<td>FAO's annual Agriculture Production Questionna...</td>
<td>FAO Sources</td>
<td>2007</td>
</tr>
<tr>
<th>17178</th>
<td>Peru</td>
<td>Watermelons</td>
<td>45.17</td>
<td>Whole supply chain</td>
<td>FAO's annual Agriculture Production Questionna...</td>
<td>FAO Sources</td>
<td>2006</td>
</tr>
</tbody>
</table>
</div>
<h3 id="food-loss-per-commodity-whole-supply-chain">Food Loss Per Commodity (Whole Supply Chain)</h3>
<p>As we have seen from the Watermelon data from Mexico and Peru, there might be a massive difference if the data collection methods are different. From now on, I’ll only use the data where the reference is “FAO Sources” and “method_data_collection” is “FAO’s annual Agriculture Production Questionnaires.” The below box plot shows the food loss percentage distribution per commodity from all the countries.</p>
<div class="language-python highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="n">supply_stage</span> <span class="o">=</span> <span class="s">"Whole supply chain"</span>
<span class="n">year</span> <span class="o">=</span> <span class="mi">2005</span>
<span class="n">reference</span> <span class="o">=</span> <span class="s">"FAO Sources"</span>
<span class="n">data_collection_method</span> <span class="o">=</span> <span class="s">"FAO's annual Agriculture Production Questionnaires"</span>
<span class="n">df_filtered</span> <span class="o">=</span> <span class="n">df</span><span class="p">[(</span><span class="n">df</span><span class="p">[</span><span class="s">'food_supply_stage'</span><span class="p">]</span> <span class="o">==</span> <span class="n">supply_stage</span><span class="p">)</span> <span class="o">&</span>
<span class="p">(</span><span class="n">df</span><span class="p">[</span><span class="s">'year'</span><span class="p">]</span> <span class="o">>=</span> <span class="n">year</span><span class="p">)</span> <span class="o">&</span>
<span class="p">(</span><span class="n">df</span><span class="p">[</span><span class="s">'reference'</span><span class="p">]</span> <span class="o">==</span> <span class="n">reference</span><span class="p">)</span> <span class="o">&</span>
<span class="p">(</span><span class="n">df</span><span class="p">[</span><span class="s">'method_data_collection'</span><span class="p">]</span> <span class="o">==</span> <span class="n">data_collection_method</span><span class="p">)]</span>
<span class="c1"># Get commodities with data points from many countries.
</span><span class="n">n_country_threshold</span> <span class="o">=</span> <span class="mi">6</span> <span class="c1"># We only use commidity where data is collected from more than n_country_threshold countries.
</span><span class="n">unique_country_commodity_pairs</span> <span class="o">=</span> <span class="nb">set</span><span class="p">(</span><span class="nb">zip</span><span class="p">(</span><span class="n">df_filtered</span><span class="p">[</span><span class="s">'country'</span><span class="p">],</span> <span class="n">df_filtered</span><span class="p">[</span><span class="s">'commodity'</span><span class="p">]))</span> <span class="c1"># unique (country, commodity) pairs
</span><span class="n">commodity_counter</span> <span class="o">=</span> <span class="n">Counter</span><span class="p">([</span><span class="n">commodity_</span> <span class="k">for</span> <span class="n">_</span><span class="p">,</span> <span class="n">commodity_</span> <span class="ow">in</span> <span class="n">unique_country_commodity_pairs</span><span class="p">])</span>
<span class="n">common_commodities</span> <span class="o">=</span> <span class="nb">set</span><span class="p">({</span><span class="n">x</span><span class="p">:</span> <span class="n">count</span> <span class="k">for</span> <span class="n">x</span><span class="p">,</span> <span class="n">count</span> <span class="ow">in</span> <span class="n">commodity_counter</span><span class="p">.</span><span class="n">items</span><span class="p">()</span> <span class="k">if</span> <span class="n">count</span> <span class="o">>=</span> <span class="n">n_country_threshold</span><span class="p">}.</span><span class="n">keys</span><span class="p">())</span>
<span class="n">df_filtered</span> <span class="o">=</span> <span class="n">df_filtered</span><span class="p">[</span><span class="n">df_filtered</span><span class="p">[</span><span class="s">'commodity'</span><span class="p">].</span><span class="n">isin</span><span class="p">(</span><span class="n">common_commodities</span><span class="p">)]</span>
<span class="n">commodity_plot_order</span> <span class="o">=</span> <span class="n">df_filtered</span><span class="p">.</span><span class="n">groupby</span><span class="p">(</span><span class="n">by</span><span class="o">=</span><span class="s">'commodity'</span><span class="p">).</span><span class="n">mean</span><span class="p">().</span><span class="n">sort_values</span><span class="p">(</span><span class="n">by</span><span class="o">=</span><span class="s">'loss_percentage'</span><span class="p">,</span> <span class="n">ascending</span><span class="o">=</span><span class="bp">False</span><span class="p">).</span><span class="n">index</span><span class="p">.</span><span class="n">tolist</span><span class="p">()</span>
<span class="n">fig</span><span class="p">,</span> <span class="n">ax</span> <span class="o">=</span> <span class="n">plt</span><span class="p">.</span><span class="n">subplots</span><span class="p">(</span><span class="n">figsize</span><span class="o">=</span><span class="p">(</span><span class="mi">25</span><span class="p">,</span> <span class="mi">6</span><span class="p">))</span>
<span class="n">plot</span> <span class="o">=</span> <span class="n">sns</span><span class="p">.</span><span class="n">boxplot</span><span class="p">(</span><span class="n">x</span><span class="o">=</span><span class="s">'commodity'</span><span class="p">,</span> <span class="n">y</span><span class="o">=</span><span class="s">'loss_percentage'</span><span class="p">,</span> <span class="n">data</span><span class="o">=</span><span class="n">df_filtered</span><span class="p">,</span> <span class="n">order</span><span class="o">=</span><span class="n">commodity_plot_order</span><span class="p">)</span>
<span class="n">ax</span><span class="p">.</span><span class="n">set_xticklabels</span><span class="p">(</span><span class="n">ax</span><span class="p">.</span><span class="n">get_xticklabels</span><span class="p">(),</span> <span class="n">rotation</span> <span class="o">=</span> <span class="mi">45</span><span class="p">,</span> <span class="n">horizontalalignment</span><span class="o">=</span><span class="s">'right'</span><span class="p">)</span>
<span class="n">ax</span><span class="p">.</span><span class="n">set_title</span><span class="p">(</span><span class="sa">f</span><span class="s">"Food Loss (</span><span class="si">{</span><span class="n">supply_stage</span><span class="si">}</span><span class="s">) from all countries (from </span><span class="si">{</span><span class="n">year</span><span class="si">}</span><span class="s">, reference=</span><span class="si">{</span><span class="n">reference</span><span class="si">}</span><span class="s">)"</span><span class="p">.</span><span class="n">title</span><span class="p">()</span> <span class="p">)</span>
<span class="n">ax</span><span class="p">.</span><span class="nb">set</span><span class="p">(</span><span class="n">xlabel</span><span class="o">=</span><span class="bp">None</span><span class="p">)</span>
<span class="n">plt</span><span class="p">.</span><span class="n">show</span><span class="p">()</span>
</code></pre></div></div>
<p><img src="/files/images/others/food-loss-per-commodity-box-plot.png" alt="png" /></p>
<ul>
<li>By looking at the plot, it seems like fruits (e.g., tomatoes, watermelons) produce more waste than grains (e.g., oats, rye)</li>
</ul>
<h3 id="which-country-has-the-highest-food-loss">Which Country Has the Highest Food Loss?</h3>
<p>The below plots show how much food loss percentage for “Potatoes”, “Wheat”, “Rice” and “Hen eggs in shell, fresh” for different countries. We can interpret how efficient/inefficient each country’s supply chain is for various commodities.</p>
<div class="language-python highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="n">supply_stage</span> <span class="o">=</span> <span class="s">"Whole supply chain"</span>
<span class="n">year</span> <span class="o">=</span> <span class="mi">2005</span>
<span class="n">reference</span> <span class="o">=</span> <span class="s">"FAO Sources"</span>
<span class="n">data_collection_method</span> <span class="o">=</span> <span class="s">"FAO's annual Agriculture Production Questionnaires"</span>
<span class="n">df_filtered</span> <span class="o">=</span> <span class="n">df</span><span class="p">[(</span><span class="n">df</span><span class="p">[</span><span class="s">'food_supply_stage'</span><span class="p">]</span> <span class="o">==</span> <span class="n">supply_stage</span><span class="p">)</span> <span class="o">&</span>
<span class="p">(</span><span class="n">df</span><span class="p">[</span><span class="s">'year'</span><span class="p">]</span> <span class="o">>=</span> <span class="n">year</span><span class="p">)</span> <span class="o">&</span>
<span class="p">(</span><span class="n">df</span><span class="p">[</span><span class="s">'reference'</span><span class="p">]</span> <span class="o">==</span> <span class="n">reference</span><span class="p">)</span> <span class="o">&</span>
<span class="p">(</span><span class="n">df</span><span class="p">[</span><span class="s">'method_data_collection'</span><span class="p">]</span> <span class="o">==</span> <span class="n">data_collection_method</span><span class="p">)]</span>
<span class="n">unique_country_commodity_pairs</span> <span class="o">=</span> <span class="nb">set</span><span class="p">(</span><span class="nb">zip</span><span class="p">(</span><span class="n">df_filtered</span><span class="p">[</span><span class="s">'country'</span><span class="p">],</span> <span class="n">df_filtered</span><span class="p">[</span><span class="s">'commodity'</span><span class="p">]))</span> <span class="c1"># unique (country, commodity) pairs
</span><span class="n">common_commodities</span> <span class="o">=</span> <span class="p">[</span><span class="n">commodity</span> <span class="k">for</span> <span class="n">commodity</span><span class="p">,</span> <span class="n">_</span> <span class="ow">in</span> <span class="n">Counter</span><span class="p">([</span><span class="n">commodity</span> <span class="k">for</span> <span class="n">_</span><span class="p">,</span> <span class="n">commodity</span> <span class="ow">in</span> <span class="n">unique_country_commodity_pairs</span><span class="p">]).</span><span class="n">most_common</span><span class="p">(</span><span class="mi">10</span><span class="p">)]</span>
<span class="n">commodity_to_plot</span> <span class="o">=</span> <span class="p">[</span><span class="s">'Potatoes'</span><span class="p">,</span>
<span class="s">'Wheat'</span><span class="p">,</span>
<span class="s">'Rice'</span><span class="p">,</span>
<span class="s">'Hen eggs in shell, fresh'</span><span class="p">]</span>
<span class="k">for</span> <span class="n">commodity</span> <span class="ow">in</span> <span class="n">common_commodities</span><span class="p">:</span>
<span class="k">if</span> <span class="n">commodity</span> <span class="ow">not</span> <span class="ow">in</span> <span class="n">commodity_to_plot</span><span class="p">:</span>
<span class="k">continue</span>
<span class="n">df_filtered_by_commodity</span> <span class="o">=</span> <span class="n">df_filtered</span><span class="p">[</span><span class="n">df_filtered</span><span class="p">[</span><span class="s">'commodity'</span><span class="p">]</span> <span class="o">==</span> <span class="n">commodity</span><span class="p">]</span>
<span class="n">fig</span><span class="p">,</span> <span class="n">ax</span> <span class="o">=</span> <span class="n">plt</span><span class="p">.</span><span class="n">subplots</span><span class="p">(</span><span class="n">figsize</span><span class="o">=</span><span class="p">(</span><span class="mi">15</span><span class="p">,</span> <span class="mi">6</span><span class="p">))</span>
<span class="n">plot_order</span> <span class="o">=</span> <span class="n">df_filtered_by_commodity</span><span class="p">.</span><span class="n">groupby</span><span class="p">(</span><span class="n">by</span><span class="o">=</span><span class="s">'country'</span><span class="p">).</span><span class="n">mean</span><span class="p">().</span><span class="n">sort_values</span><span class="p">(</span><span class="n">by</span><span class="o">=</span><span class="s">'loss_percentage'</span><span class="p">,</span> <span class="n">ascending</span><span class="o">=</span><span class="bp">False</span><span class="p">).</span><span class="n">index</span><span class="p">.</span><span class="n">tolist</span><span class="p">()</span>
<span class="n">sns</span><span class="p">.</span><span class="n">barplot</span><span class="p">(</span><span class="n">x</span><span class="o">=</span><span class="s">'country'</span><span class="p">,</span> <span class="n">y</span><span class="o">=</span><span class="s">'loss_percentage'</span><span class="p">,</span> <span class="n">data</span><span class="o">=</span><span class="n">df_filtered_by_commodity</span><span class="p">,</span> <span class="n">ax</span><span class="o">=</span><span class="n">ax</span><span class="p">,</span> <span class="n">order</span><span class="o">=</span><span class="n">plot_order</span><span class="p">)</span>
<span class="n">ax</span><span class="p">.</span><span class="n">set_xticklabels</span><span class="p">(</span><span class="n">ax</span><span class="p">.</span><span class="n">get_xticklabels</span><span class="p">(),</span> <span class="n">rotation</span> <span class="o">=</span> <span class="mi">45</span><span class="p">,</span> <span class="n">horizontalalignment</span><span class="o">=</span><span class="s">'right'</span><span class="p">)</span>
<span class="n">ax</span><span class="p">.</span><span class="n">set_title</span><span class="p">(</span><span class="sa">f</span><span class="s">"'</span><span class="si">{</span><span class="n">commodity</span><span class="si">}</span><span class="s">' Loss (</span><span class="si">{</span><span class="n">supply_stage</span><span class="si">}</span><span class="s">) per Country (from </span><span class="si">{</span><span class="n">year</span><span class="si">}</span><span class="s">, Vertical bars show stddev)"</span><span class="p">.</span><span class="n">title</span><span class="p">()</span> <span class="p">)</span>
<span class="n">ax</span><span class="p">.</span><span class="nb">set</span><span class="p">(</span><span class="n">xlabel</span><span class="o">=</span><span class="bp">None</span><span class="p">)</span>
<span class="n">ax</span><span class="p">.</span><span class="n">set_ylabel</span><span class="p">(</span><span class="sa">f</span><span class="s">"</span><span class="si">{</span><span class="n">commodity</span><span class="si">}</span><span class="s"> loss percentage"</span><span class="p">)</span>
<span class="n">plt</span><span class="p">.</span><span class="n">show</span><span class="p">()</span>
</code></pre></div></div>
<p><img src="/files/images/others/potatoes-loss-per-country.png" alt="png" /></p>
<p><img src="/files/images/others/wheat-loss-per-country.png" alt="png" /></p>
<p><img src="/files/images/others/rice-loss-per-country.png" alt="png" /></p>
<p><img src="/files/images/others/egg-loss-per-country.png" alt="png" /></p>
<h2 id="limitation-of-the-dataset">Limitation of the Dataset</h2>
<p>If you look at <a href="https://www.fao.org/platform-food-loss-waste/flw-data/background/en/">the Background of the Food Loss and Waste Database page</a>, FAO describes the limitations of the dataset.</p>
<blockquote>
<ul>
<li>Often studies will sum the loss percentages across the supply chain. This tends to inflate the overall percentage losses and negate that the quantities of the commodities decrease through the supply chain with respect to losses and other utilizations.</li>
<li>The issue of food loss may not be fully captured within national estimates as they often present the lower bound of the problem. On the other hand, studies done with small sample sizes may not be fully representative, even though they represent the upper bound of the problem.</li>
<li>The figures show differences between estimates along different stages of the value chains and regions, making a one-size fits all estimate at the international level less practical when addressing losses. Considering how these estimates change over time by stage and ranges, it will be more effective to look at supply stages which fluctuate in their losses in order to focus on effective policy and investments.</li>
<li>Effective comparison of data is presently hindered by a lack of comparability on many levels: different measurement methodologies across space and commodities, and estimates that may not be repeated over time.</li>
<li>There may be underlying biases when it comes to the data that has been collected, both at the national level and within the individual studies and the focus will be put on problematic areas</li>
<li>In the case studies, the sample sizes may not be large enough to extrapolate causes and solutions to a general policy prescription.</li>
</ul>
</blockquote>
<p>IMO, this means we can’t draw any conclusions from the data. I appreciate and highly think of the initial effort to collect the data. Still, I look forward to more standardized data collection so people can do more insightful analyses.</p>Donghyeon WonIn this post, we’ll take a quick look at the Food Loss and Waste Database (FLW DB) from the Food and Agriculture Organization (FAO) of the United Nations. The post will be mostly about data visualization and the limitations of the dataset.Food Waste - Intro2022-03-26T21:07:00+00:002022-03-26T21:07:00+00:00https://dhwon.com/sustainability/food-waste-intro<p>Food waste and loss (FLW) is one of the problems that I’ve been interested in recently. However, I haven’t done any proper research other than reading a few books and watching some YouTube videos. So I decided to do some research and write some posts to help me understand the problem. This post is an introduction to a series of posts that I’ll be writing.</p>
<h1 id="why-food-waste">Why Food Waste?</h1>
<p>The world is producing more food than it needs, which is simply an enormous waste of resources. There are two perspectives to look at the food waste problem<sup id="fnref:4" role="doc-noteref"><a href="#fn:4" class="footnote" rel="footnote">1</a></sup>.</p>
<ul>
<li><strong>The food problem</strong>: While some people are still starving, a significant amount of food is wasted throughout the entire supply chain.</li>
<li><strong>The waste problem</strong>: It’s not only the food that’s wasted. FLW represents a waste of land, water, labor, and energy used during food production<sup id="fnref:5" role="doc-noteref"><a href="#fn:5" class="footnote" rel="footnote">2</a></sup>. According to <a href="https://drawdown.org/solutions/table-of-solutions">Project Drawdown</a>, reducing food waste is one of the most impactful solutions to reduce greenhouse gas emissions<sup id="fnref:1" role="doc-noteref"><a href="#fn:1" class="footnote" rel="footnote">3</a></sup>.</li>
</ul>
<h2 id="facts--statistics">Facts & Statistics</h2>
<p>The followings are some interesting facts and statistics that I found.</p>
<ul>
<li>Around 14% of food produced is lost between harvest and retail<sup id="fnref:3" role="doc-noteref"><a href="#fn:3" class="footnote" rel="footnote">4</a></sup>.</li>
<li>17% of total food production is wasted - 11% in households, 5% in the food service and 2% in retail <sup id="fnref:3:1" role="doc-noteref"><a href="#fn:3" class="footnote" rel="footnote">4</a></sup>. I know the numbers don’t add up, but don’t blame me. I just copy-pasted the numbers from the reference 😅.</li>
<li>Food loss and waste account for 38% of total energy usage in the global food system<sup id="fnref:3:2" role="doc-noteref"><a href="#fn:3" class="footnote" rel="footnote">4</a></sup>.</li>
<li>The food we waste is responsible for roughly 8% to 10% of global emissions<sup id="fnref:6" role="doc-noteref"><a href="#fn:6" class="footnote" rel="footnote">5</a></sup>.</li>
<li>In 2019, the U.S. wasted $408 billion worth of food, which is about 2% of U.S GDP, with a greenhouse gas footprint equivalent to 4% of total U.S. emissions<sup id="fnref:7" role="doc-noteref"><a href="#fn:7" class="footnote" rel="footnote">6</a></sup>.</li>
</ul>
<h1 id="what-im-interested-in">What I’m Interested In</h1>
<h2 id="data-analysis">Data Analysis</h2>
<p>There are some well-established public datasets available online. Honestly, I don’t have any domain knowledge so I’ll probably write some posts to do data exploratory data analysis (EDA) of the datasets.</p>
<p>Here are the datasets that I found today.</p>
<ul>
<li><a href="https://www.fao.org/platform-food-loss-waste/flw-data/en/">Food Loss and Waste Database</a> from <a href="https://www.fao.org/home/en/">Food and Agriculture Organization of the United Nations</a>.</li>
<li><a href="https://datacatalog.worldbank.org/search/dataset/0039597">What a Waste Global Database</a> from <a href="https://www.worldbank.org/en/home">World Bank</a>.</li>
<li><a href="https://www.unep.org/resources/report/unep-food-waste-index-report-2021">Database for UNEP Food Waste Index Report 2021</a> from <a href="https://www.unep.org/">United Nations Environment Programme</a>.</li>
<li><a href="https://insights-engine.refed.org/food-waste-monitor?view=overview&year=2019">ReFED Food Waste Monitor Database</a> from <a href="https://refed.org/">ReFED</a></li>
</ul>
<h2 id="businesses-and-technologies">Businesses and Technologies</h2>
<p>Many businesses/start-ups are trying to solve the FLW problem. I believe there is plenty of room for innovations throughout the supply chain: from harvest to retail and consumption. I’m planning to find out who’s doing what in this industry.</p>
<h1 id="recommendations">Recommendations</h1>
<p>If you are interested in FLW, I strongly recommend watching this YouTube video from our beloved <a href="https://www.youtube.com/c/OurChangingClimate/featured">Our Changing Climate</a>.</p>
<!-- Courtesy of embedresponsively.com -->
<div class="responsive-video-container">
<iframe src="https://www.youtube-nocookie.com/embed/1MpfEeSem_4" frameborder="0" webkitallowfullscreen="" mozallowfullscreen="" allowfullscreen=""></iframe>
</div>
<h1 id="references">References</h1>
<div class="footnotes" role="doc-endnotes">
<ol>
<li id="fn:4" role="doc-endnote">
<p><a href="https://www.fao.org/policy-support/tools-and-publications/resources-details/en/c/854257/">Food Losses and Waste in the Context of Sustainable Food Systems. A Report by the High Level Panel of Experts on Food Security and Nutrition. HLPE Report 8</a> <a href="#fnref:4" class="reversefootnote" role="doc-backlink">↩</a></p>
</li>
<li id="fn:5" role="doc-endnote">
<p><a href="https://datatopics.worldbank.org/what-a-waste/global_food_loss_and_waste.html">WHAT A WASTE 2.0: A Global Snapshot of Solid Waste Management to 2050</a> <a href="#fnref:5" class="reversefootnote" role="doc-backlink">↩</a></p>
</li>
<li id="fn:1" role="doc-endnote">
<p><a href="https://drawdown.org/solutions/table-of-solutions">Table of Solutions, Project Drawdown</a> <a href="#fnref:1" class="reversefootnote" role="doc-backlink">↩</a></p>
</li>
<li id="fn:3" role="doc-endnote">
<p><a href="https://www.fao.org/international-day-awareness-food-loss-waste?utm_source=twitter&utm_medium=social+media&utm_campaign=fao">International Day of Awareness of Food Loss and Waste, UN</a> <a href="#fnref:3" class="reversefootnote" role="doc-backlink">↩</a> <a href="#fnref:3:1" class="reversefootnote" role="doc-backlink">↩<sup>2</sup></a> <a href="#fnref:3:2" class="reversefootnote" role="doc-backlink">↩<sup>3</sup></a></p>
</li>
<li id="fn:6" role="doc-endnote">
<p><a href="https://www.unep.org/resources/report/unep-food-waste-index-report-2021">United Nations Environment Programme (2021). Food Waste Index Report 2021. Nairobi.</a> <a href="#fnref:6" class="reversefootnote" role="doc-backlink">↩</a></p>
</li>
<li id="fn:7" role="doc-endnote">
<p><a href="https://refed.org/">Roadmap to 2030: Reducing U.S. Food Waste by 50% and the ReFED Insights Engine: At-A-Glance</a> <a href="#fnref:7" class="reversefootnote" role="doc-backlink">↩</a></p>
</li>
</ol>
</div>Donghyeon WonFood waste and loss (FLW) is one of the problems that I’ve been interested in recently. However, I haven’t done any proper research other than reading a few books and watching some YouTube videos. So I decided to do some research and write some posts to help me understand the problem. This post is an introduction to a series of posts that I’ll be writing.Books That I Loved - 2022 Q12022-03-25T22:20:00+00:002022-03-25T22:36:00+00:00https://dhwon.com/book/book-2022-q1<p>To be honest, I don’t read a lot of books and I know it’s a shame. I’ll try to read more from now on.</p>
<p>FYI, I read books mostly in Korean since reading a bunch of English words is still a bit stressful for me. I read the below two books also in Korean. 🙂</p>
<h2 id="think-again-the-power-of-knowing-what-you-dont-know---adam-grant-싱크-어게인---아담-그랜트">Think Again: The Power of Knowing What You Don’t Know - Adam Grant (싱크 어게인 - 아담 그랜트)</h2>
<p>My takeaway from this book is that we should always be humble and keep doubting our beliefs. We are sometimes too confident about things we don’t know very well.</p>
<p><strong><em>“Arrogance leaves us blind to our weaknesses. Humility is a reflective lens: it helps us see them clearly. Confident humility is a corrective lens: it enables us to overcome those weaknesses.”</em></strong></p>
<p><strong><em>“오만함은 자기 약점을 바라보지 못하게 눈을 가린다. 겸손함은 반사용 렌즈라서 자기 약점을 선명하게 바라볼 수 있게 도와준다. 확신에 찬 겸손함은 교정용 렌즈라서 그 약점을 극복하게 돕는다.”</em></strong></p>
<h2 id="the-theory-of-light-and-matter---andrew-j-porter-빛과-물질에-관한-이론---앤드루-포터">The Theory of Light and Matter - Andrew J. Porter (빛과 물질에 관한 이론 - 앤드루 포터)</h2>
<p>This book easily became one of my favorite fictions.</p>
<p>We are not superheroes and sometimes there are life problems we can’t solve. However, our lives don’t end there - we just live with those unsolved problems.</p>
<p><strong><em>“And it takes a while, almost several minutes, before we finally turn around and look at what we’ve done.”</em></strong>, <strong>Azul</strong></p>
<p><strong><em>“It was only in my own mind, and perhaps in my heart, that I understood what I was doing to be a betrayal.”</em></strong>, <strong>The Theory of Light and Matter</strong></p>
<p><strong><em>“그리고 얼마의 시간이 흐른 뒤에야, 그렇게 몇 분여를 보낸 후에야, 우리는 마침내 뒤로 돌아 우리의 지나간 행동을 직면한다.”</em></strong>, <strong>[아술] 중에서</strong></p>
<p><strong><em>“나의 행동이 배신임을 아는 것은 나 자신의 마음, 어쩌면 나 자신의 가슴뿐이었다.”</em></strong>, <strong>[빛과 물질에 관한 이론] 중에서</strong></p>
<h2 id="book-covers">Book Covers</h2>
<p><img src="/files/images/book-covers/think-again-adam-grant.jpg" alt="image" width="50%" height="100%" /><img src="/files/images/book-covers/the-theroy-of-light-and-matter-andrew-porter.jpg" alt="image" width="50%" height="100%" /></p>Donghyeon WonTo be honest, I don’t read a lot of books and I know it’s a shame. I’ll try to read more from now on.Music That I Loved - 2022 Q12022-03-22T13:54:00+00:002023-05-23T07:26:00+00:00https://dhwon.com/music/music<h2 id="따마-thama---chill이란-낱말의-존재이유-im-chill">따마 (Thama) - Chill이란 낱말의 존재이유 (I’m Chill)</h2>
<!-- Courtesy of embedresponsively.com -->
<div class="responsive-video-container">
<iframe src="https://www.youtube-nocookie.com/embed/34ZaddbF3jg" frameborder="0" webkitallowfullscreen="" mozallowfullscreen="" allowfullscreen=""></iframe>
</div>
<p>This references <a href="https://www.youtube.com/watch?v=F9LngxNiWsY">one of my favorite Korean rap songs</a>. I love how Thama interpreted this song in his own way.</p>
<h2 id="허회경-heo-hoy-kyung---김철수-씨-이야기-kim-cheolsu-story">허회경 (Heo Hoy Kyung) - 김철수 씨 이야기 (Kim Cheolsu Story)</h2>
<!-- Courtesy of embedresponsively.com -->
<div class="responsive-video-container">
<iframe src="https://www.youtube-nocookie.com/embed/9ovexKXPQRY" frameborder="0" webkitallowfullscreen="" mozallowfullscreen="" allowfullscreen=""></iframe>
</div>
<p>“특별함이 하나 둘 모이면 평범함이 되고”란 가사가 너무 좋다. 좋은 이유는 통계적이라서!</p>Donghyeon Won따마 (Thama) - Chill이란 낱말의 존재이유 (I’m Chill)