July 28, 2020
How to Gut a Fish in the Dark
Article-How-to-Gut-a-Fish

Remembering a time before Americans were so alienated from their food sources.

The man behind the fish counter found me investigating a mangled heap of pale salmon fillets. The adjacent row of whole mackerel looked more inviting. The man told me that their fish guy had gone home for the night—if I wanted the fish, I would have to clean it myself. I needed it for an attempt at a teishoku, a Japanese-style set meal, but I had no idea how to gut a fish.

After delaying the decision with a lap around the aisles of my neighborhood market, I decided that I needed to learn how to clean a fish—a task I’ve managed to avoid for 27 years. Since the lockdowns began in March, I’ve been bunkered down in Portland, Oregon, trying to cook something each week that challenges me to stretch beyond my usual skill set. But more important, I wanted to learn how to gut the fish because our food system excels at alienating people from the food they eat. This separation allows people like me to eat animals even though I am unsure if I could kill them. Why am I okay with that violence when someone else does it for me? And why do the workers assigned these tasks so often work in terrible conditions?

Even as someone who regularly cooks and eats fish, I rarely have to think about the fish’s journey to my fridge. I can outsource the catching, the killing, the transportation, and the gutting. Consumers don’t have to think about how fishing industry workers labor on average 14.6 hours a day and are at higher risk for opioid use disorders, according to a 2018 study published in the International Journal of Environmental Research and Public Health. They also don’t have to think about what happens to the rest of the fish when they buy a fillet wrapped in plastic or pulled from a mound of ice. But considering the dire condition of Earth’s oceans—approximately 30 to 35 percent of fish populations are fished unsustainably, according to a 2016 United Nations report on the state of world fisheries—it is clear that our relationship with fish must change. We need to reckon with the whole fish, guts and all.

How to Gut a Fish

After bringing home my mackerel that evening, while finishing up the last few emails of the day so that I could turn my attention to dinner, the lights went out. Portland is built in a forest, and the branches have a tendency to body slam the electric lines. I heard the telltale groan from one of my neighbors across the street.

Not allowing a lack of electricity, and a therefore out-of-commission oven, to thwart my plans, I decided to grill on an 18-inch Weber on the porch. But I still needed to figure out how to gut the mackerel. I tried using cell phone data to watch a YouTube tutorial, but it never loaded. I tried calling my fish-loving friend Ben, but he didn’t answer. The light was quickly starting to fade from the sky. I looked at the fish sitting in the sink; the fish looked back at me with its glassy eyes. “I’ll get you gutted, don’t worry,” I said, as I patted its tiger-marked skin.

It is, of course, my dad who I should’ve called first. He grew up fishing around O‘ahu, with nothing more than a bamboo pole, a hook, and some fishing line. During the summers, when the reef fish spawned, he’d catch dozens of papio (small ulua) at a time, dump them into a sink, and gut them all. Nobody else was going to do it. If his family was eating fish, that meant catching, gutting, and cooking them, too.

I started to worry that I was going to need to perform surgery on this fish without any medical school training. In the dark.

I tried to FaceTime him so he could get a visual. The video call couldn’t connect. I started to worry that I was going to need to perform surgery on this fish without any medical school training. In the dark. In a last-ditch effort, I ran out to the street, where sometimes, if the stars align, cell service bounces down to my phone. I dialed my dad and waited. Thankfully, he picked up.

I told him about the power outage and the uncleaned fish fiasco. He laughed.

“Okay, so you need to take a knife,” my dad said calmly, “and stick it in the anus.” I gasped. I imagined my grandma’s eyes widening, overhearing this on the other end of the line. But then again, she has lived in Hawaii for almost a century; she knows how to clean fish, too.

“And then just run it along the bottom up to the gills. You’ll see the guts, and they should come out pretty easily,” he explained. “Then rub it with oil and salt, and do it about five minutes each side on the grill.”

I went back inside to my fish, whose corporeal form remained in the sink. The sun had set, and I didn’t want to use my phone’s flashlight, because I needed to save the remaining battery. A soft blue twilight barely illuminated my hands. I held the fish up to the window and tried to find its butthole.

“Thank you, fish,” I muttered, and I pushed in the knife. I ran the blade along the bottom axis until it brushed up against the gills. I peered into the flaps of flesh and saw the guts presenting themselves. I tugged at them, and they obliged, sliding out into my hands. I laid the goopy strings of innards aside in a little dish. In a matter of moments, the deed had been done.

How to Gut a Fish

I ran cold water over the cavity, and it occurred to me how lucky it is that the guts run along the bottom and not in the core of the fish, like the seeds of an apple. After setting the fish in a baking tray, I gave him a little massage with olive oil and some sea salt from the Oregon coast. I went out to light the charcoal, and I grabbed a cold Asahi from the fridge. I dumped the hot coals into the grill and set my friend down to sizzle. While waiting for the fish to finish grilling as my dad had instructed, the kitchen lights flashed on, and I heard cheers from around the neighborhood. I shook my head and cursed at the newly illuminated kitchen.

Mackerel is an oily, fishy fish. I like to take a chunk of the meat and dunk it into a lemon, soy sauce, and grated daikon situation, and then rest it on a bed of rice, if only for a moment, so that the excess sauce and fish bits flavor the rice, before shoveling it into my mouth. The soy sauce stands up to its fishiness, and the lemon and daikon cut the oiliness.

I stared down at the fish’s innards. I couldn’t bear to throw them in the trash. We had gone through so much together.

After my partner and I devoured the fish, the guts from earlier were still digesting in the dish on the counter, and they needed a final resting place. Maybe when I die, I thought, my guts will be torn out in preparation for a proper grilling. A real send-off. But what would become of my guts in that scenario? I stared down at the fish’s innards. I couldn’t bear to throw them in the trash. We had gone through so much together.

How to Gut a Fish

I recently watched a large Australian man on YouTube swear that tomatoes grow best when they are planted on top of a fish. (I assume he meant a dead fish.) According to Alaska’s Department of Fish and Game, when salmon die and decompose, they provide riverside ecosystems with nitrogen, phosphorus, and other nutrients, which help the surrounding trees and plants grow faster and stronger. If a salmon carcass can help a tree to grow hundreds of feet tall, maybe mackerel guts can help a tomato plant overcome its unlucky placement in the backyard of a first-time vegetable gardener.

I took the fish skeleton and the dish of guts into the yard, and I dumped them into a large pot of soil. This past weekend, I purchased a 2-inch tomato start, and I plopped it on top of the remnants. I dug down a few inches, expecting to find a riot of maggots and worms munching away. Thankfully, I didn’t see that, just a few bones sticking out. Maybe, in a few months, I’ll have my first backyard tomato. If I do, I’ll want to grill it, and I’ll need to bring home another fish.

Will Matsuda

Will Matsuda is a writer and photographer living in Portland, Oregon.

[email_signup id="3"]
<div class="email-subscribe exp-subscribe subscribe"> <div class="alert alert-success exp-success ga-etembed-success" style="display:none;"> Great! You've signed up successfully! </div> <div class="alert alert-danger exp-error" style="display:none;"> We are experiencing an error, please try again. </div> <form name="subscribe" id="email-signup" class="email-signup-form" action="https://tastecooking.com/wp-admin/admin-ajax.php" method="POST" target="_top" data-event-assigned="false"> <fieldset class="form-group form-inline email-submit-group"> <label for="email-address" class="sr-only">Email Address</label> <input id="email-newsletter" type="email" placeholder="your@email.com" class="email-newsletter text email form-control" name="email" value=""> <button type="submit" value="Subscribe" name="subscribe" class="btn btn-primary email-submit-btn ga-etembed-success"> <i class="fa fa-envelope"></i> Subscribe </button> </fieldset> <small class="exp-small terms" style=""> By clicking Subscribe, I acknowledge that I have read and agree to the Penguin Random House <a href="http://www.penguinrandomhouse.com/privacy/" target="_blank">Privacy Policy</a> and <a href="http://www.penguinrandomhouse.com/terms/" target="_blank">Terms of Use</a> and agree to receive news and updates from TASTE and Penguin Random House. </small> <fieldset class="field-group checkboxes" style="display:none"> <div class="checkbox"> <label> <input type="checkbox" name="programs[]" value="505,50501,1" class="exp-checkbox" checked="checked"> <span><strong>Tastebook General</strong></span> </label> </div> <div class="checkbox"> <label> <input type="checkbox" name="programs[]" value="505,50502,1" class="exp-checkbox" checked="checked"> <span><strong>Tastebook Promo</strong></span> </label> </div> </fieldset><!-- /.checkboxes --> <input type="hidden" name="data_acq_code" value="TASTE_POPUP_STATIC_ONGOING" /> <input type="hidden" name="data_programs" value="50501|505,50502|505" /> <input type="hidden" name="form_id" value="3" /> <input type="hidden" name="partner" value="" /> <input type="hidden" name="action" value="crown_email_signup_submit" /> <input type="hidden" name="ref_url" value="" /> </form> </div> <script> jQuery(document).ready(function () { var unassigned_forms; setInterval( function() { //Check for unassigned forms var forms = jQuery( '.email-signup-form' ); unassigned_forms = false; forms.each( function( index ) { if ( jQuery( this ).attr( 'data-event-assigned' ) === 'false' ) { unassigned_forms = true; } }); if ( unassigned_forms ) { forms.off( 'submit' ).on( 'submit', function ( e ) { forms.attr( 'data-event-assigned', 'true' ); e.preventDefault(); // Basic email validation var email = jQuery(e.target).find('.email-newsletter').val(), valid_email = false, groupEl = jQuery(e.target).closest('.email-subscribe'); if ( !!email && typeof(email) === "string" ) { var email_array = email.split('@'); if ( email_array.length === 2 ) { if ( email_array[1].split('.').length > 1 ) { valid_email = true; } } } if ( valid_email ) { jQuery('.alert-danger').hide(); // Show loading gif groupEl.find('.email-signup-form').hide(); groupEl.find('.email-submit-loading').show(); // Populate ref_url jQuery(this).find('input[name="ref_url"]').val(window.location.href); // Generate Payload var payload = jQuery(this).serializeArray(); jQuery.ajax({ url: jQuery(this).attr('action'), type: 'POST', data: payload, success: function (data) { // Hide loading spinner groupEl.find('.email-signup-form').show(); groupEl.find('.email-submit-loading').hide(); // Display success msg var target = jQuery(e.target); jQuery(e.target).hide(); jQuery(e.target).parent().find('.alert-success').show(); jQuery(e.target).parent().find('#downloadbtn').show(); }, fail: function (err) { // Hide loading spinner groupEl.find('.email-signup-form').show(); groupEl.find('.email-submit-loading').hide(); // Display failure msg var target = jQuery(e.target); jQuery(e.target).hide(); jQuery(e.target).parent().find('.alert-danger').show(); } }); } else { groupEl.find('.alert-danger').html('Please enter a valid email address.').show(); } }); forms.off( 'keypress' ).on( 'keypress', function ( e ) { if ( e.which === 13 ) { e.preventDefault(); jQuery( this ).submit(); } }); } }, 100); }); </script>
[email_signup id="3"]
<div class="email-subscribe exp-subscribe subscribe"> <div class="alert alert-success exp-success ga-etembed-success" style="display:none;"> Great! You've signed up successfully! </div> <div class="alert alert-danger exp-error" style="display:none;"> We are experiencing an error, please try again. </div> <form name="subscribe" id="email-signup" class="email-signup-form" action="https://tastecooking.com/wp-admin/admin-ajax.php" method="POST" target="_top" data-event-assigned="false"> <fieldset class="form-group form-inline email-submit-group"> <label for="email-address" class="sr-only">Email Address</label> <input id="email-newsletter" type="email" placeholder="your@email.com" class="email-newsletter text email form-control" name="email" value=""> <button type="submit" value="Subscribe" name="subscribe" class="btn btn-primary email-submit-btn ga-etembed-success"> <i class="fa fa-envelope"></i> Subscribe </button> </fieldset> <small class="exp-small terms" style=""> By clicking Subscribe, I acknowledge that I have read and agree to the Penguin Random House <a href="http://www.penguinrandomhouse.com/privacy/" target="_blank">Privacy Policy</a> and <a href="http://www.penguinrandomhouse.com/terms/" target="_blank">Terms of Use</a> and agree to receive news and updates from TASTE and Penguin Random House. </small> <fieldset class="field-group checkboxes" style="display:none"> <div class="checkbox"> <label> <input type="checkbox" name="programs[]" value="505,50501,1" class="exp-checkbox" checked="checked"> <span><strong>Tastebook General</strong></span> </label> </div> <div class="checkbox"> <label> <input type="checkbox" name="programs[]" value="505,50502,1" class="exp-checkbox" checked="checked"> <span><strong>Tastebook Promo</strong></span> </label> </div> </fieldset><!-- /.checkboxes --> <input type="hidden" name="data_acq_code" value="TASTE_POPUP_STATIC_ONGOING" /> <input type="hidden" name="data_programs" value="50501|505,50502|505" /> <input type="hidden" name="form_id" value="3" /> <input type="hidden" name="partner" value="" /> <input type="hidden" name="action" value="crown_email_signup_submit" /> <input type="hidden" name="ref_url" value="" /> </form> </div> <script> jQuery(document).ready(function () { var unassigned_forms; setInterval( function() { //Check for unassigned forms var forms = jQuery( '.email-signup-form' ); unassigned_forms = false; forms.each( function( index ) { if ( jQuery( this ).attr( 'data-event-assigned' ) === 'false' ) { unassigned_forms = true; } }); if ( unassigned_forms ) { forms.off( 'submit' ).on( 'submit', function ( e ) { forms.attr( 'data-event-assigned', 'true' ); e.preventDefault(); // Basic email validation var email = jQuery(e.target).find('.email-newsletter').val(), valid_email = false, groupEl = jQuery(e.target).closest('.email-subscribe'); if ( !!email && typeof(email) === "string" ) { var email_array = email.split('@'); if ( email_array.length === 2 ) { if ( email_array[1].split('.').length > 1 ) { valid_email = true; } } } if ( valid_email ) { jQuery('.alert-danger').hide(); // Show loading gif groupEl.find('.email-signup-form').hide(); groupEl.find('.email-submit-loading').show(); // Populate ref_url jQuery(this).find('input[name="ref_url"]').val(window.location.href); // Generate Payload var payload = jQuery(this).serializeArray(); jQuery.ajax({ url: jQuery(this).attr('action'), type: 'POST', data: payload, success: function (data) { // Hide loading spinner groupEl.find('.email-signup-form').show(); groupEl.find('.email-submit-loading').hide(); // Display success msg var target = jQuery(e.target); jQuery(e.target).hide(); jQuery(e.target).parent().find('.alert-success').show(); jQuery(e.target).parent().find('#downloadbtn').show(); }, fail: function (err) { // Hide loading spinner groupEl.find('.email-signup-form').show(); groupEl.find('.email-submit-loading').hide(); // Display failure msg var target = jQuery(e.target); jQuery(e.target).hide(); jQuery(e.target).parent().find('.alert-danger').show(); } }); } else { groupEl.find('.alert-danger').html('Please enter a valid email address.').show(); } }); forms.off( 'keypress' ).on( 'keypress', function ( e ) { if ( e.which === 13 ) { e.preventDefault(); jQuery( this ).submit(); } }); } }, 100); }); </script>