Deprecated: Return type of Aventura\Wprss\Core\DataObject::offsetExists($offset) should either be compatible with ArrayAccess::offsetExists(mixed $offset): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/dev.bibbyskitchenat36.com/public_html/web/wp-content/plugins/wp-rss-aggregator/includes/Aventura/Wprss/Core/DataObject.php on line 783

Deprecated: Return type of Aventura\Wprss\Core\DataObject::offsetGet($offset) should either be compatible with ArrayAccess::offsetGet(mixed $offset): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/dev.bibbyskitchenat36.com/public_html/web/wp-content/plugins/wp-rss-aggregator/includes/Aventura/Wprss/Core/DataObject.php on line 808

Deprecated: Return type of Aventura\Wprss\Core\DataObject::offsetSet($offset, $value) should either be compatible with ArrayAccess::offsetSet(mixed $offset, mixed $value): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/dev.bibbyskitchenat36.com/public_html/web/wp-content/plugins/wp-rss-aggregator/includes/Aventura/Wprss/Core/DataObject.php on line 770

Deprecated: Return type of Aventura\Wprss\Core\DataObject::offsetUnset($offset) should either be compatible with ArrayAccess::offsetUnset(mixed $offset): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/dev.bibbyskitchenat36.com/public_html/web/wp-content/plugins/wp-rss-aggregator/includes/Aventura/Wprss/Core/DataObject.php on line 795

Deprecated: version_compare(): Passing null to parameter #2 ($version2) of type string is deprecated in /var/www/dev.bibbyskitchenat36.com/public_html/web/wp-content/plugins/Ultimate_VC_Addons/Ultimate_VC_Addons.php on line 1484

Deprecated: Return type of RebelCode\Wpra\Core\Data\AbstractDataSet::offsetExists($key) should either be compatible with ArrayAccess::offsetExists(mixed $offset): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/dev.bibbyskitchenat36.com/public_html/web/wp-content/plugins/wp-rss-aggregator/src/Data/AbstractDataSet.php on line 44

Deprecated: Return type of RebelCode\Wpra\Core\Data\AbstractDataSet::offsetGet($key) should either be compatible with ArrayAccess::offsetGet(mixed $offset): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/dev.bibbyskitchenat36.com/public_html/web/wp-content/plugins/wp-rss-aggregator/src/Data/AbstractDataSet.php on line 24

Deprecated: Return type of RebelCode\Wpra\Core\Data\AbstractDataSet::offsetSet($key, $value) should either be compatible with ArrayAccess::offsetSet(mixed $offset, mixed $value): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/dev.bibbyskitchenat36.com/public_html/web/wp-content/plugins/wp-rss-aggregator/src/Data/AbstractDataSet.php on line 60

Deprecated: Return type of RebelCode\Wpra\Core\Data\AbstractDataSet::offsetUnset($key) should either be compatible with ArrayAccess::offsetUnset(mixed $offset): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/dev.bibbyskitchenat36.com/public_html/web/wp-content/plugins/wp-rss-aggregator/src/Data/AbstractDataSet.php on line 76

Deprecated: Return type of RebelCode\Wpra\Core\Data\AbstractDataSet::current() should either be compatible with Iterator::current(): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/dev.bibbyskitchenat36.com/public_html/web/wp-content/plugins/wp-rss-aggregator/src/Util/IteratorDelegateTrait.php on line 124

Deprecated: Return type of RebelCode\Wpra\Core\Data\AbstractDataSet::next() should either be compatible with Iterator::next(): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/dev.bibbyskitchenat36.com/public_html/web/wp-content/plugins/wp-rss-aggregator/src/Util/IteratorDelegateTrait.php on line 97

Deprecated: Return type of RebelCode\Wpra\Core\Data\AbstractDataSet::key() should either be compatible with Iterator::key(): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/dev.bibbyskitchenat36.com/public_html/web/wp-content/plugins/wp-rss-aggregator/src/Util/IteratorDelegateTrait.php on line 109

Deprecated: Return type of RebelCode\Wpra\Core\Data\AbstractDataSet::valid() should either be compatible with Iterator::valid(): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/dev.bibbyskitchenat36.com/public_html/web/wp-content/plugins/wp-rss-aggregator/src/Util/IteratorDelegateTrait.php on line 136

Deprecated: Return type of RebelCode\Wpra\Core\Data\AbstractDataSet::rewind() should either be compatible with Iterator::rewind(): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/dev.bibbyskitchenat36.com/public_html/web/wp-content/plugins/wp-rss-aggregator/src/Util/IteratorDelegateTrait.php on line 83

Deprecated: Return type of RebelCode\Wpra\Core\Data\AbstractDataSet::offsetExists($key) should either be compatible with ArrayAccess::offsetExists(mixed $offset): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/dev.bibbyskitchenat36.com/public_html/web/wp-content/plugins/wp-rss-aggregator/src/Data/AbstractDataSet.php on line 44

Deprecated: Return type of RebelCode\Wpra\Core\Entities\Collections\WpEntityCollection::offsetGet($key) should either be compatible with ArrayAccess::offsetGet(mixed $offset): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/dev.bibbyskitchenat36.com/public_html/web/wp-content/plugins/wp-rss-aggregator/src/Entities/Collections/WpEntityCollection.php on line 97

Deprecated: Return type of RebelCode\Wpra\Core\Data\AbstractDataSet::offsetSet($key, $value) should either be compatible with ArrayAccess::offsetSet(mixed $offset, mixed $value): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/dev.bibbyskitchenat36.com/public_html/web/wp-content/plugins/wp-rss-aggregator/src/Data/AbstractDataSet.php on line 60

Deprecated: Return type of RebelCode\Wpra\Core\Data\AbstractDataSet::offsetUnset($key) should either be compatible with ArrayAccess::offsetUnset(mixed $offset): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/dev.bibbyskitchenat36.com/public_html/web/wp-content/plugins/wp-rss-aggregator/src/Data/AbstractDataSet.php on line 76

Deprecated: Return type of RebelCode\Wpra\Core\Data\AbstractDataSet::current() should either be compatible with Iterator::current(): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/dev.bibbyskitchenat36.com/public_html/web/wp-content/plugins/wp-rss-aggregator/src/Util/IteratorDelegateTrait.php on line 124

Deprecated: Return type of RebelCode\Wpra\Core\Data\AbstractDataSet::next() should either be compatible with Iterator::next(): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/dev.bibbyskitchenat36.com/public_html/web/wp-content/plugins/wp-rss-aggregator/src/Util/IteratorDelegateTrait.php on line 97

Deprecated: Return type of RebelCode\Wpra\Core\Data\AbstractDataSet::key() should either be compatible with Iterator::key(): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/dev.bibbyskitchenat36.com/public_html/web/wp-content/plugins/wp-rss-aggregator/src/Util/IteratorDelegateTrait.php on line 109

Deprecated: Return type of RebelCode\Wpra\Core\Data\AbstractDataSet::valid() should either be compatible with Iterator::valid(): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/dev.bibbyskitchenat36.com/public_html/web/wp-content/plugins/wp-rss-aggregator/src/Util/IteratorDelegateTrait.php on line 136

Deprecated: Return type of RebelCode\Wpra\Core\Data\AbstractDataSet::rewind() should either be compatible with Iterator::rewind(): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/dev.bibbyskitchenat36.com/public_html/web/wp-content/plugins/wp-rss-aggregator/src/Util/IteratorDelegateTrait.php on line 83

Deprecated: Return type of Twig\Node\Node::count() should either be compatible with Countable::count(): int, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/dev.bibbyskitchenat36.com/public_html/web/wp-content/plugins/wp-rss-aggregator/vendor/twig/twig/src/Node/Node.php on line 213

Deprecated: Return type of Twig\Node\Node::getIterator() should either be compatible with IteratorAggregate::getIterator(): Traversable, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/dev.bibbyskitchenat36.com/public_html/web/wp-content/plugins/wp-rss-aggregator/vendor/twig/twig/src/Node/Node.php on line 221

Deprecated: Return type of RebelCode\Wpra\Core\Database\WpdbTable::offsetExists($key) should either be compatible with ArrayAccess::offsetExists(mixed $offset): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/dev.bibbyskitchenat36.com/public_html/web/wp-content/plugins/wp-rss-aggregator/src/Database/WpdbTable.php on line 124

Deprecated: Return type of RebelCode\Wpra\Core\Database\WpdbTable::offsetGet($key) should either be compatible with ArrayAccess::offsetGet(mixed $offset): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/dev.bibbyskitchenat36.com/public_html/web/wp-content/plugins/wp-rss-aggregator/src/Database/WpdbTable.php on line 105

Deprecated: Return type of RebelCode\Wpra\Core\Database\WpdbTable::offsetSet($key, $value) should either be compatible with ArrayAccess::offsetSet(mixed $offset, mixed $value): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/dev.bibbyskitchenat36.com/public_html/web/wp-content/plugins/wp-rss-aggregator/src/Database/WpdbTable.php on line 140

Deprecated: Return type of RebelCode\Wpra\Core\Database\WpdbTable::offsetUnset($key) should either be compatible with ArrayAccess::offsetUnset(mixed $offset): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/dev.bibbyskitchenat36.com/public_html/web/wp-content/plugins/wp-rss-aggregator/src/Database/WpdbTable.php on line 159

Deprecated: Return type of RebelCode\Wpra\Core\Database\WpdbTable::current() should either be compatible with Iterator::current(): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/dev.bibbyskitchenat36.com/public_html/web/wp-content/plugins/wp-rss-aggregator/src/Util/IteratorDelegateTrait.php on line 124

Deprecated: Return type of RebelCode\Wpra\Core\Database\WpdbTable::next() should either be compatible with Iterator::next(): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/dev.bibbyskitchenat36.com/public_html/web/wp-content/plugins/wp-rss-aggregator/src/Util/IteratorDelegateTrait.php on line 97

Deprecated: Return type of RebelCode\Wpra\Core\Database\WpdbTable::key() should either be compatible with Iterator::key(): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/dev.bibbyskitchenat36.com/public_html/web/wp-content/plugins/wp-rss-aggregator/src/Util/IteratorDelegateTrait.php on line 109

Deprecated: Return type of RebelCode\Wpra\Core\Database\WpdbTable::valid() should either be compatible with Iterator::valid(): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/dev.bibbyskitchenat36.com/public_html/web/wp-content/plugins/wp-rss-aggregator/src/Util/IteratorDelegateTrait.php on line 136

Deprecated: Return type of RebelCode\Wpra\Core\Database\WpdbTable::rewind() should either be compatible with Iterator::rewind(): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/dev.bibbyskitchenat36.com/public_html/web/wp-content/plugins/wp-rss-aggregator/src/Util/IteratorDelegateTrait.php on line 83
Traditonal South African pickled fish | A Bibbyskitchen recipes

Traditional South African Pickled Fish

Traditional South African Pickled fish

Pickled fish is most often eaten at Easter. This year I’m making my first ever Traditional South African pickled fish. The recipe is loosely put together, guided by my mother Magdaleen van Wyk’s book, Cooking The South African. I’ve meddled with the ingredients because that’s what cooks do best.

I’m a firm believer in tradition. It’s about customs and practises, passed down from one generation to another. And there’s no better topic than food to elicit conversation. Ask any food-enthusiast about their best recipes and you’ll find, most likely, it’s those old family favourites scrawled on paper, paled and fingerprinted with love.

In our family home we grew up simply. Food in the 70’s and 80’s was basic and always homemade. Take aways were an exception. On these rare occasions we headed straight to the corner café for battered fish and deep-fried chips. Drenched in brown vinegar and wrapped in paper, we savoured every mouthful. We also ate white bread, food that came out of a tin and drank milky coffee with white sugar. Our British neighbors introduced us to baked beans on toast, which at the time we thought odd, but utterly delicious! Many good things came out of a tin, pickled fish being another.

I find most pickled fish recipes overly sweet, so I’ve reduced the sugar considerably. I’ve also added garam masala, crushed fennel and coriander to the sauce for depth. Those who’re averse to pickled fish because of the onions will love this recipe. I’ve blitzed the sauce for a smoother texture. This step is optional but a nice change from the usual. I serve the fish with crusty baguettes, or this crusty Overnight ciabatta bread to soak up the golden turmeric sauce.

 

Traditional South African pickled fish
Serves 6-8
  • 1 kg firm white fish (kingklip or hake), whole or cut into portions
  • 30ml (2 tablespoons) olive oil
  • 2 brown onions, finely diced
  • 1 garlic clove, minced
  • thumb-sized piece fresh ginger, grated
  • 2.5ml (1/2 teaspoon) fennel seeds, crushed
  • 5ml (1 teaspoon) whole coriander seeds, crushed
  • 5ml (1 teaspoon) garam masala
  • 10ml (2 teaspoons) ground turmeric
  • 15ml (1 tablespoon) curry powder
  • 5ml (1 teaspoon) salt
  • 45ml (3 tablespoons) sugar
  • 3 bay leaves
  • 375ml (1 1/2 cups) white wine vinegar
  • 300ml water
  1. Heat the olive oil in a large saucepan and sauté the onions for about 10 minutes until soft and translucent.
  2. Add the garlic and ginger and cook for a further 2 minutes.
  3. Now add all the aromatics (spices) and cook for a further 3 minutes.
  4. Add the salt, sugar, bay leaves, vinegar and water. Simmer for 20 minutes.
  5. Place the fish carefully in the pan and spoon the sauce over the fillet. Cover and Simmer for 20 minutes until cooked through.
  6. Lift the fish carefully from the pan with a fish slice and place in a non-metallic dish.
  7. Transfer the sauce to a processor and blitz until smooth. Pour the sauce over the fish and cover with cling film.
  8. Chill for 2-3 days.
  9. Serve the pickled fish at room temperature with red onion pickle if you wish and crusty baguettes alongside.

One of the most frequently asked questions in my cooking classes, is how to cook fish. If you’re keen to try more fish recipes, these might be a good place to start.

Roast salmon with Rosé and shallot yoghurt

Sweet potato bake with tuna and veg

Linguini with Shrimp and fresh Tomato Sauce

 

 

 

 

 

6 Comments. Leave new

  • I’ve wanted to cook and eat more fish this year, Di. Thanks for this fabulous start to my new food adventure! x

  • Dianne Bibby
    31 March 2017 5:03 am

    Me too Gill. There’ll definitely be more fish recipes coming up.

  • Every good Friday after church the smell in my grandmother’s kitchen of pickeld fish i just love it it gives me a special feeling including today good Friday during covid I stil feel the same about Easter hot cross buns and pickeld fish

  • Thanks Gill,always wanted to do my own pickled fish.

  • Dianne Bibby
    11 April 2021 6:37 pm

    Isn’t it magical how food aromas can transport you somewhere wonderful? And there’s no place more special than the family kitchen. To many more years of pickling and buns. Hope you had a fabulous Easter Loren.

  • Dianne Bibby
    11 April 2021 6:38 pm

    I hope this recipe will become a go-to for every Easter gathering Thembi. Happy cooking!

Leave a Reply

Your email address will not be published. Required fields are marked *

Fill out this field
Fill out this field
Please enter a valid email address.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Menu

Deprecated: preg_match(): Passing null to parameter #2 ($subject) of type string is deprecated in /var/www/dev.bibbyskitchenat36.com/public_html/web/wp-content/plugins/google-captcha/google-captcha.php on line 216