Research Paper to Read: (2014) The Study of Different Foods on Spawning Efficiency of Siamese Fighting Fish (Species: Betta splendens, Family: Belontiidae)

Source: ResearchGate.

What are the key point here?
(1) There is no significant differences between live feeds (Artemia, Blood worm, and Gammarus) and artificial feeds in Betta sp. breeding.

Why this paper?
As fish diet is a crucial nourishment for the brood stock in conditioning Betta sp. for breeding. What are the possible best food available to obtain a large spawn? Having a large spawn increases the breeder farm profits as the farm owner sell more fishes. This question have been asked numerous time in online forums and the general consensus among the breeders is use live foods with high protein nutrients. However, obtaining and culturing live feeds do incur additional costs and labour. Thus, through this paper, we would like to know what are the significant differences in using different foods and if those differences worth using it. (Note: This is not a the best written paper but we are always curious about the materials and methods used in breeding. Either it reconfirm our understanding or raises further questions regarding our current approach.)

Material and Methods
This experiment was conducted in a commercial fish farm which produces 50000 fishes annually. The material used are 20 aquariums, 40 fishes, 5 different fish feeds with 4 replicates as shown below. The dimension of each aquarium is 40cm x 30cm x 30cm with water height around 15cm, which is 18 litres. (Note: Not sure about the 'mass', assumed it refers to a group of egg.)

(1) Artermia cyst x 4 pairs.
(2) Artermia mass x 4 pairs.
(3) Blood worm x 4 pairs.
(4) Gammarus mass x 4 pairs.
(5) Commercial food x 4 pairs.

The water parameters of the breeding tank as below:

(1) pH: 7.5.
(2) Air temperature: 30 - 35 Celsius.
(3) Water temperature: 26 - 28 Celsius.
(4) Hardness: 108 ppm.
(5) Dissolved oxygen: 6 mg / litre.

The breeding procedures as follows:

(1) The breeding tanks were disinfected with salt without iodine.
(2) Fishes were disinfected using solution of 5% Acrofelavin bath for 5 minutes.
(3) Once the brood stocks were added to the breeding tank, it's not feed for 24 hours.
(4) A glass screen was added between the pair of fishes.
(5) Fishes were fed twice (9 a.m. and 6 p.m.) on daily basis on ratio of 3% of body weight of the fish.
(6) Thick plastic with measurement of 10 cm x 10 cm was added to the side of male fish.
(7) The pair of fish was conditioned for 15 days.
(8) Female fish was released to the male once the bubble nest size reaches 500 bubbles.
(9) Once spawning is done, the female is extracted out from the breeding tank.

During the incubation period, the temperature of the breeding tank is controlled with a digital thermometer (VIPRO) with a 0.1 Celsius minuteness. The temperature is set at 27 Celsius. 10 eggs were randomly selected from each breeding tank and were measured using a digital micrometer (Leitz, model 621).

Result
From the table below, it's shown that there is no significant differences (P >= 0.05) between different food treatments even though the pair fed with blood worms produced the most eggs and the lowest spawning time. (Note: Table below is not the best way to present your tabulated data).



Discussion
While the feeds doesn't show any significant impact in affecting the eggs production. As the brood stock is fed twice per days, if the feeding frequency increased to 4 times / day, will it impact the result? While live feed like Blood worms are rich with protein, does artificial feeds with similar protein percentage may have the similar or better results?

What you're going to do with the knowledge you've gained?
(1) Conditioning for 14 days or 2 weeks is crucial to make sure the pair of brood stock breed. Thus, we will need get a good partition to separate both fishes instead of using plastic container to hold the female Betta sp.

(2) Where can we get Gammarus?

What are the further unsolved questions?
(1) What is the optimum tank size suitable for breeding Betta sp.?
(2) What is the optimum feeding frequency suitable for the brood stock?

Note to Self:
(1) Be careful when selecting papers to read. Always check the references section to determine whether this is a significant paper to read.

(2) Paper with plenty of grammatical and spelling errors is a good indicator to skip it.

UMT MOOC: Ornamental Fish Culture - Topic 8: Principles of Water Quality Management - Water Filtration System

Let's proceed with the new topic. Topic 7 really took some times to complete due to myriad of unexpected events.

There are two goals for this module, which are (1) understanding the fundamental of water quality management for your aquarium and (2) look into the common practices and filtering that meet the requirement of the industry. (Note: if it works for the industry, the same practices should be applicable for hobbyist but on a smaller scale).

There are four main criteria for good water quality which are: (1) safe for keeping organisms, (2) crystal clear since ornamental fishes needs to be seen clearly to be appreciated, (3) free from floating and suspended objects, and lastly (4) odourless and refreshing.

A complete water filtration system consists of several components of mechanical filters, biological filters, temperature regulating system, aeration, and sterilization system. Common filtration system lack of temperature regulation and sterilization due to cost and size. For indoor aquariums with filtration system, the noise level should be at the lowest or acceptable range and enrich the oxygen content of the aquarium tank. In addition to that, chemical treatments like removing chlorine also used to ensure optimum water quality.

Mechanical filters are sponge of filter floss which captures finest aquarium particles. While these particles are captured in the filter floss, it's still part of the ecosystem within the aquarium as water still move through the filters and flow back to the aquarium tanks. For saltwater tank, additional mechanical filter called Protein Skimmer is used to remove additional organic waste particles from water.


What are the available filtration systems? There are two which are sand filtration, biological, and chemical filtration. Sand filtration is a simple filtration system where sand is used as a medium to clean the sand and allows continual bacteria growth. The sand medium used here must be of refine quality of silica or oolite sand, coarse sand is not suitable and effective here.


Meanwhile, biological filter works through converting toxic chemical compounds like ammonia to nitrite and later, to nitrate, which is harmless. Without the conversion, ammonia and nitrite, exceeding to a certain amount, is highly toxic to fishes. Below is a DIY filtration system which combines both mechanical filtration (sponge) and biological filtration (popular medium K1 Media) as shown in the screenshot (Source: UMTMOOC Ornamental Fish Culture) below.



Meanwhile chemical filtration typically used for marine aquarium. For example, to remove bad odour from the aquarium carbon filter is used. Similarly, Zeolite or polymer absorber is another chemical used to remove odour. Calcium reactor is important in a coral tank to replenish the uptake of calcium by the corals and reduce the acidity of the aquarium. 

Next component is the aeration system. Aeration ensures sufficient oxygen supplies and the most common method to achieve this is through water surface agitation. Typically, air stone and air pump is used to achieve this. However, air pump is very noisy. Note that oxygen exchange happens when the bubble burst in the surface and not within the water. Another way is to create agitation through water flow from the top or side of the aquarium tank, similar like a waterfall. For a heavily planted aquarium tank, aeration may not be needed as the plant will generate oxygen for the tank through photosynthesis.

This is followed by temperature control. For those living in tropical countries, regulation temperature within a aquarium tank may not be needed but for saltwater aquarium, it's needed as marine life need colder water temperature. Typical tropical countries temperature is around 25 - 30 Celsius. However, exposure to lighting and water pump, the temperature may be higher. Hence, water temperature regulation through water heater can achieve optimum temperature parameter. Most fishes thrive within the temperature < 25 Celsius.

Last component is the sterilization through UV light. Harmful pathogenic microbes like parasite, fungus, yeast, and bacteria will be removed when water cycle through UV sterilization system. Also, UV sterilization removes algae from the water that prevent greenish water in the aquarium tank. The efficient of UV sterilization depends on intensity of UV light, water clarity, and water flow rate.

UMT MOOC: Ornamental Fish Culture - Topic 7: Seed Production - Larval Rearing - Anemonefish Pomacentridae, Clownfish

Continue from previous post.

Anemonefish Pomacentridae or commonly known as Clownfish, is the one of most recognizable marine ornamental fish in the world. Known for its stricking colours of yellow or orange mixed with white, red, and black, Clownfish rose to popularity due to the Pixar's movie, Finding Nemo.

Living among the Sea Anemone without a group of 2 to 4 fishes with a dominant female, breeding male, and non-breeding smaller and younger male. This species have a special reproduction cycle. Clownfish are sequential or protandry hermaphrodites, where it alternate sexes in their whole life cycle. The breeding male with develop into the dominant female if anything happen to the dominant female and the any smaller female in the group will become male. In other words, if anything happened to Coral (mother of Nemo), Marlin (father of Nemo) will switch sex and become the dominant female and Nemo will become the dominant male. Nature always works in a weird way. Think about that.


Captivity breeding for Clownfish is done differently. Breeder typically only use 1 pair in the breeding tank. The pair will mate and spawn twice in a month and the Clownfish egges take about 6 - 9 days to hatch, roughly around the the size of 2.0mm. Breeding tank should be aerated for better water circulation. Daily cleaning by siphon the bottom detritus (dead particles or organic matters) and weekly 1/3 of water changes.The water parameters of the breeding tank as follows:

(1) Temparature: 26 - 28 Celcius
(2) Salinity: 30 - 32 ppt
(3) pH: 7.5 - 8.2
(4) Dissolved Oxygen: > 5.5 mg/L

While it's recommended to have 5 larvae per litre, but from the above breeding video, there have been more than 30 fishes per litre.

Feeding diet and schedule as follows. For first 10 days, use micro-algae with Rotifiers or Artemia / Brine Shrimp with small sized artificial diet with a frequency of 3 to 4 times per days. Since Clownfish is a fast growing species, some larvae may metamorphosis into juveniles within 1 to 3 weeks. These juveniles will be transferred to nursery or grow up tank on day 25 or 30 on wards.

UMT MOOC: Ornamental Fish Culture - Topic 7: Seed Production - Larval Rearing - Chrysiptera parasema, Yellowtail Damselfish

Chrysiptera parasema, or commonly known as Yellowtail Damselfish is a popular marine ornamental fish. Due to its striking and distinctive bluish body and yellowish tail, it's sometimes known as Yellowtail Blue Damsel (the damsel in damsel in distress). Affordability and beginner friendly makes this saltwater fish a common species among marine aquarium tank.


For setting up the breeding tank, no water filtering and aeration as Damselfish larvae is very sensitive to any turbulence. In addition, reduce the reflection of light by covering up both sides of the tank with panels. Further changes needed to reduce the light sensitivity by using Phytoplankton (like Chlorella sp. and Isochrysis sp.) as culture medium to "green up" the tank until the bottom is not visible. Water changes needs to be done on each morning, roughly 15% each morning. Since this is a salt water species, 5% Potassium iodide (looks for KI solutions brand) need to be added twice a day.

The other water parameters needed for optimum larval growing (Source: Coral reef fish breeding: The secrets of each species) in captivity are:
(1) Temperature: 28 Celcius
(2) Salinity: 30 ppt
(3) Photoperiod: 18L / 6D

Beside using Phytoplankton as initial live feed, from day 1 till 23 (3 weeks), the larvae can be feed with Rotifiers with portion of 20 Rorifers / ml. For the transition period from day 19 onwards, replace with Artemia nauplii / Brine Shrimp with portion of 25 nauplii / larvae.

UMT MOOC: Ornamental Fish Culture - Topic 7: Seed Production - Larval Rearing - Pterophyllum scalare, Freshwater Angelfish

Continue from previous post.

Pterophyllum scalare, or commonly known as Freshwater Angelfish, is one of the popular ornamental fishes among tropical fish hobbyist. For any beginner who are venturing into this hobby, Angelfish is highly recommended as your first pet fishes. Compare to other fishes like Goldfish, Guppy, Tetra, Swordtail, and Ram Cichlid, Angelfish is more hardy and adaptable. Hence, it's easier to take care off and grow way noticeable faster.


Diet-wise, 1 to 3 weeks, the fries should be fed wither Artemia / Brine Shrimp or yolk of hard boiled eggs (dried and squeezed through cheesecloth). Feeding frequency is around 3 to 4 times per day during this period. From 3 to 5 weeks, fine flakes can be introduced together with Artemia. Feeding frequency remains. From 5 to 7 weeks, switch to dry food but reduce the feeding to twice per day.

This Week I Learned 2019 - Week 11

Continue from last week or something before that.

What else I've learned this week not within this post? Still continue with the seventh week of ornamental fish culture learning. This week we looked into caring of your fishes in term of feeding and observation; siphon and larval removal. Also the start of discussion on larval rearing of Elacatinus figaro (Barber Goby) and Carassius auratus (Goldfish). The paper of the week is the Siamese fighting fish on the limited researches done scientifically. Concluding the week, HTTP::AnyUA is the Perl module we reviewed this week.

谁是你生命中最特殊的女朋友? 想不到,龙应台都已经67岁了。多年前,曾经读过的《野火集》。 如今,重想起来,仔细内容也不记得了,只有模糊糊的印象,还有少许的情绪。当然,毕竟都有些年纪了,也许是时候重温一下,再重新阅读这书。有些书,是要每年去重读一片,有些书,是要马上丢进垃圾桶。


What is something we usually do but still do it the wrong way? Taking medication at the right time. According to MyHealth portal, the right time to take your medication depends on the daily frequency as shown below. What's surprising that there are medication for 4 dosages per day. Must be quite a challenge to take those medications on time every 6 hours as we have to plan for meal time if the medication is only taken before or after meal.

(1) 1 dosage / day: 8 a.m.
(2) 2 dosages / day: 8 a.m. / 8 p.m.
(3) 3 dosages / day: 6 a.m. / 2 p.m. / 10 p.m.
(4) 4 dosages / day: 6 a.m. / 12 p.m. / 6 p.m. / 12 a.m.

According to MyHealth portal again, another misconception we have is taking medication before meal. It doesn't means that we should take it before we eat our meal. It should be taken 1 hour before meal or 2 hours after meal (Note: The 2 hours is something new). For some medication, 30 minutes before meal. To be on the safe side, 30 minutes before meal. So for medication to be taken before meal for 4 dosages per day, it should be taken at 5:30 a.m., 12 p.m., 5:30 p.m., and 11:30 p.m.

How about the 3 dosages per day? Why the third dosage need to be taken at 10 p.m.? For this schedule, the last dosage was scheduled at 10 p.m. because it's advisable to have a gap of 2 or 3 hours between meal and bedtime.

Again, consult your physician and don't simply read and trust any medical information found online.

Why this is the most strict feeding schedule for Betta sp.? Based on the baby betta care video of Big City Betta channel, we are surprised that the breeder (Amber) have such a strict feeding and water changes schedule (see screenshot below) for the first two weeks.


Compare to most breeders out there, her method in setting up the breeding environment is probably the most elaborate and humane. Typically you just get a container, add aged water and plants, condition the male and female pair, and release the female once the male have build a bubble nest.

Perl Module(s) Of The Week - 2019 Week 11 - HTTP::AnyUA

In Perl, Tim Toady is a well known way of coding, which is there's more way to do it. Similarly in CPAN context, there's more modules that provides similar features. Good example is available of HTTP client or user agent modules where we have the de facto standard LWP::UserAgent, the modern non-blocking I/O and WebSocket Mojo::UserAgent, the small and tiny HTTP::Tiny, the lighting fast Furl, the event loop AnyEvent::HTTP, the legacy Curl-based wrapper Net::Curl::Easy, and numerous other modules that extend or wrap over the mentioned modules.

This the where HTTP::AnyUA module comes in. It provides a unification programming interface for all common HTTP requests based on the HTTP::Tiny interface. Think of this as the Database Independent Interface (DBI) for HTTP programming.

The installation as usual.
$ cpanm HTTP::AnyUA

Using the sample code below, we iterate using different HTTP client modules and request your truly website.
# ex1.pl
use strict;
use warnings;

use AnyEvent::HTTP;
use Furl;
use HTTP::AnyUA;
use HTTP::Tiny;
use LWP::UserAgent;
use Mojo::UserAgent;
use Net::Curl::Easy;

foreach my $ua (qw(Furl HTTP::Tiny LWP::UserAgent Mojo::UserAgent Net::Curl::Easy)) {
    my $any_ua = HTTP::AnyUA->new(ua => $ua->new, response_is_future => 1);
    print "Using: $ua\n";

    my $future = $any_ua->get('https://kianmeng.org');
    $future->on_done(sub {
        my $response = shift;
        print "$response->{status} $response->{reason}\n\n";
    });

    $future->on_fail(sub {
        my $response = shift;
        print STDERR "ERROR: $response->{status}\n\n"
    });
}

Unfortunately, we can't seem to get consistent result from all different HTTP clients. This makes us wonder, while this module claimed to have unified interfaces but does it provides consistent results? If we have inconsistent HTTP response, wouldn't it be better we just use the individual HTTP client module instead?
$ perl ex1.pl 
Using: Furl
200 OK

Using: HTTP::Tiny
200 OK

Using: LWP::UserAgent
ERROR: 403

Using: Mojo::UserAgent
Using: Net::Curl::Easy
ERROR: 301

Nevertheless, let's continue with some code reading. Some interesting code that caught my attention.

Instead of using the environment variable, `PERL_HTTP_ANYUA_DEBUG` everywhere in the code to determine whether to print debugging info, just centralized in the logging subroutine. Good to use the environment variable to toggle this.
sub _debug_log { print STDERR join(' ', @_), "\n" if $ENV{PERL_HTTP_ANYUA_DEBUG} }
......
$self->_debug_log('Created with user agent', $self->ua);

The implementation on handling exception through `eval` that implement something similar like try and catch block.
my $resp = eval { $self->backend->request(uc($method) => $url, $args) };
if (my $err = [email protected]) {
    return $self->_wrap_internal_exception($err);
}

Check if the `_module_loader` object exists, if not just instantiate it.
# get a module loader object
sub _module_loader { shift->{_module_loader} ||= Module::Loader->new }

Research Paper to Read: (2009) The Siamese fighting fish: Well-known generally but little-known scientifically

Source: Research Gate.

What are the key point here?
(1) There are 55 species of Bettas in Indochina and can be grouped into either nest building or mouth brooding care. Thailand have 10 wild Bettas where 4 are bubble-nest builders and 6 are mouth brooders. (Note: I'm quite surprised and thought TH have more, it seemed MY have even more wild Betta sp.)

(2) More research should be done locally but instead more publications are published by those living overseas with where Betta sp. is not abundance. (Note: Something similar to MY where most publications on Betta sp. came from SG researcher)

Why this paper?
As the common name implies, Siamese fighting fish, also known scientifically Betta sp. is a popular ornamental fish in Thailand. Ornamental fish is a large commercial fish export for Thailand especially Betta sp., which is the top two in term of revenues. There are numerous research paper conducted by Thai researchers to improve the production and conservation of this species. This paper focus on reviewing the general aspect of breeding Betta sp., newer scientific research on genetics of this species, conservation, and which areas should be prioritized by biologists and breeders.

Material and Methods
None.

Result
None.

Discussion
In Thailand, there are 10 wile Bettas types which are divided into two egg brooding cares of nest building and mouth brooding.

(a) Bubble-nest builder: B. splendens (Regan, 1910), B. smaragdina (Ladiges, 1972), B. imbellis (Ladiges, 1975), and B. sp. Mahachai (has not been classified)

(b) Mouth brooder: B. prima (Kottelat, 1994), B. simplex (Kottelat, 1994), B. pi (Tan, 1998), B. pallida (Schindler & Schmidt, 2004), B. apollon (Schindler & Schmidt, 2006), and B. ferox (Schindler & Schmidt, 2006).

The DNA sequence below illustrates the genetic difference of some of the Betta sp. and Gouramis (Tricopsis and Trichogaster).


The distribution of these wild Bettas as shown in both map below. Fishes are generally found in Paddy fields, marshes, ponds, lagoons, lakes, acidic swamps, streams, and brackish waters. While divulging exact locations may lead to poaching, the are several actual causes that endangered Betta sp. Urbanization, tourism, and agriculture are the main threats to the wild Betta sp. population.


What you're going to do with the knowledge you've gained?
(1) Atison Phumchoosri is a prominent world recognized Thai Betta sp. breeder which have been raising Betta sp. in a grand scale (20000 till 200000 fishes at a time) for many years. As a hobbyist, we don't breed in such scale, but his Thai breeding method is something we can learn from.

(2) Obtain other wild Bettas in MY and try to breed it and compare it with commercially breed Betta sp. and see what the differences. Try look for mouth brooder species.

(3) Investigate whether mangosteen (Garcinia mangostana) have effect on male/female ratio.

(4) Besides tropical almond leaf (Terminalia catappa), Yucca plant can be used in breeding tank to get rid of body water like ammonia. Both these plants extract is the active ingredients in Atison's Betta spa by Ocean Nutrition. Investigate on Yucca plant extract as a complementary ingredient when setting up a breeding environment.

(5) Look into publications and researches done by Horst Linke, the famous aquarist.

What are the further unsolved questions?
(1) Is there a distribution map of wild Bettas species in MY?

UMT MOOC: Ornamental Fish Culture - Topic 7: Seed Production - Larval Rearing - Carassius auratus, Goldfish

Continue from previous post.

Carassius auratus or commonly known as Goldfish is one of the most popular ornamental fish in the world. We have discuss about the quality characteristics and numerous species. As with most fishes, feeding should be done in delicate manner in larvae stage as fishes at the stage are too fragile and sensitive to sunlight.

Goldfish have preference for live feed for all stages of its life cycle. Artemia nauplii or Brine Shrimp is suitable for fry and Mosquito larvae, for fingerling, juvenile, and adult. For best optimal growth, for the first 14 days, feed with Artemia nauplii. For the next 14 - 21 days, feed with a mix of Artermina nauplii and dry feed (Source: Comparison of the nutritional status of goldfish (Carassius auratus) larvae fed with live, mixed or dry diet). When the fish reach juvenile or adulthood stage, 21 days after post-hatching, live feed as such Mosquito larvae is economically cheaper and suitable due to its high protein content.


For feeding frequency, twice per day is optimal for body weight gain (Source: Influence of Feeding Frequency on Growth performance and Body Indices of Goldfish (Carrassius auratus)).

UMT MOOC: Ornamental Fish Culture - Topic 7: Seed Production - Larval Rearing - Elacatinus figaro, the Barber Goby

Continue from previous post.

Elacatinus figaro, also known as Barber Goby due to its body pattern which similar to Barber's pole. This marine species is commonly found in coastal Brazil quite popular as ornamental fish for a reef tank. There are several Goby species, each with its unique patterns, body shapes, and colours as shown below.


Breeding Barber Goby is similar to most fishes except with a few adjustments. Due to its small size, even for adult, a 20 litres glass aquarium is sufficient enough for a breeding tank. As larvae are sensitive to light, we must cover the tank with black sheet to reduce exposure. For the first 3 days, do not do water change as the larvae is too fragile and do 30% water change after that period. Feeding wise, for the first day 0 - 25, use Nannochloropsis Oculata (a type of algae) with Brachionus Rotundiformis (a type of Zooplankton commonly known as rotifier) as first food. For the transition period, from day 18 - 30, use Nauplii and meta-nauplii of Artemia (common known as Brine Shrimp). Once the fries metamorphosis to juveniles, post 30 days, transfer to a growing or nursery tank.

UMT MOOC: Ornamental Fish Culture - Topic 7: Seed Production - Degree of Care - Siphon and Larvae Removal

Continue from previous post.

Depending on your spawn size, if you have a large spawn and your breeding tank is small, we will need to transfer fries to a larger growing tank. Removal of these fishes is not as straightforward as extra care is needed to move these fishes over. The most important rule that we need to follow is to transfer by scooping. First, we need to take some water from the breeding tank into a new temporary container. Next, we scoping these fries (see video below for Betta sp.) together with water into the new container. Do not remove these fries by scope net or move out of water. Fries are not strong enough and may succumb to sickness due to stress and changes of water temperature. Then, we move this temporary container into our new growth tank and acclimate it before release these fries into a new tank. This migration should be done either in early morning or late evening where the weather is colder.


Alternatively, these is another method where we simply siphon fries out of the breeding tank to grow up tank. While this way is faster, extra care needs to be taken to make sure these fries are mature and strong enough to be transferred as shown in another video below for Cichlid fries.


We have tried both ways and manually scooped by a Betta scoop is way safer as fry will not stuck in the conventional net and also prevent tears to its fragile fins.

UMT MOOC: Ornamental Fish Culture - Topic 7: Seed Production - Degree of Care - Feeding and Observation

Continue from previous post.

Feeding
One of the most fun activity for a fish hobbyist is feeding time. Occasionally, we may get carry away of over feeding which will lead to numerous problems. For examples, water quality degrade due to leftover food or fishes having indigestion issue due to bloating and may succumb to Dropsy. The general guideline is you need to feed to satiation or in the state of being full. However, how do we know the fish is full? Well, if the fish stop eating, then we stop feeding.. However, that is not a good measurement as some fishes will continue eating way beyond their capacity.

Therefore, there are several rule of thumbs that we can use to guestimate the required diet for fishes. For live feed, 5 till 10 individual / ml. Another measurement is calculate the percentage of body weight against the fish age. For fry or juvenile, 40% of body weight and for fingerling and young fish, 20% of body weight. When we have the estimation of how much food we should give for different life cycle of the fishes, the next question is how frequent we should feed the fish?

There are many thoughts on the frequency of feeding. The common feeding schedule for most fingering or adult fishes is twice per day (around 8-9 a.m. and 4-5 p.m.). Larvae, fry, and juvenile have different feeding schedule, some breeders feed three (6 a.m., 2 p.m., and 22 p.m.) or four (6 a.m., 12 p.m., 6 p.m., and 12 a.m.) times per day. Furthermore, different species have different diet and feeding behaviour. Moreover, feeding frequency for broodstocks is quite different as we need to feed the pair of fishes as frequent as possible and high protein and fat diet so these fishes are strong and healthy to breed and mate to create a large spawn.

Observation
For breeding with broodstock, we need to well prepared and constant monitor to ensure the broodstock is readying for mating. Let take breeding Betta sp. as an example. For pre-spawning, we need to find the suitable broodstock that match our intention quality characteristics for next generation and condition both fishes. Both fishes need to be feed adequately and flare each other from time to time. Once both fishes are ready, we need to setup the spawning and breeding tank to the right water quality, temperature, and hideout places for the female. During spawning, both fishes should be left alone and not to be disturbed and only need to be checked daily to make sure there are eggs. Once we have a spawn, the post-spawning start. The female is removed from the breeding tank followed by the male once the fry start free swimming.

In a growing tank for Betta sp., once some fishes have reach the juvenile or fingerling stage, there will be some fighting and aggressiveness behaviour. We need to jar these fishes immediately to prevent further injuries and thus may cause these fishes to succumb to diseases.

Just like human, fish also succumb to stress. There are many factors like outsider disturbance (when new fishes are introduced to the community tank) or environment factors like water quality, lighting, or food. Stress will cause low immunity and this allow bacteria and parasites to infect these fishes. We need to constantly monitor for disease symptoms although some are just false positives. But the common symptoms are there like inactive, low diet, swollen body part, sinking at the bottom of the tank, floating at the top of the tank, and many more. Immediate correctly actions need to be taken. First, if the fish is within a community tank, immediately quarantine and isolate the fish. Next, determine the type of possible disease and apply medication as need and frequent water changes.

This Week I Learned 2019 - Week 10

Last week post or something from the archive posts.

What else I've learned this week not within this post? Continue with the seventh week of ornamental fish culture learning. This week we looked into Zooplankton which consists of Artemia and Copepods; and Moina and Daphina. In addition, we also study artificial and processed feed as well as light intensity, water current, and exchange frequency. Related the paper we reviewed this week is on culturing techniques of Moina. And lastly, Mojo::Util is the Perl module of the week.

"道家弟子對佛像修練...成仙?成佛?"。那瞬间,我既然破功了,笑噴整整半个小时。天啊!《招摇》,这电视神剧居然还拍了整整55集!编剧们,你们幸苦了。可能我们已经有先入为主的看法吧,我们还是真真去看了一集后,结论是,其实不是难看,而是尴尬,不知如何再看下去了。


Should you still customize your GNU/Linux setup? (via HN). 22 years of usage and I still customize from time to time due to necessities or personal delicate preferences . As you get older, you're pretty much just stick to the default Desktop environment settings with some additional GNOME shell extensions. The only heavy customization is still at the console end, exactly like the author's post on customization.

To OO or not to OO in Perl? Is always better to OO as the system grows and it will. Otherwise you will end up with system done in PHP with a bunch of global functions.

What should we use to create textual UI in console? Dialog is the default available option and work with Bash. Off course there are libraries exists for different programming languages.

Perl Module(s) Of The Week - 2019 Week 10 - Mojo::Util

Yogi Betta once said "you can observe a lot just by watching".

I somehow agree with that statement, in a way, to a certain extend.

And one amusing thing I noticed among startups or local meetups here in MY, their web tech stack is always chasing the latest greatest in the industry. Fair enough, who don't like new shinny stuff? It does make you feels at the forefront of the industry and it looks good on your resume as well. Or maybe because we have to keep learning in a rapid changing industry? Or maybe we just fear of missing out?

The funny thing is, as I observed, poking fun at PHP is a common theme here. PHP is seen like a second class programming language and it's a sin to use PHP in a web stack these days. Ironically, most of their front facing website or landing page is hosted in LAMP stack and powered by Wordpress. Which some of them admitted themselves, should have been done in a system of their own chosen and favorite latest greatest web programming language. This is doable but the financial cost of hiring a freelancer to design and setup a professional looking website far outweigh the former choice. 

The thing is, PHP these days, PHP 7 to be exact, have move from the "Visual Basic" of the web to the "Java" of the web. Gone are the days where you would hack a site with tremendous amount of global utility functions. These days, it's more mature, with a standard packaging system, numerous web frameworks, and a more Object-Oriented (OO) and types support. Yes, you still can use back all the global helper functions like you used to.

Why all these discussions about PHP? Well, this is related to the Perl module we're reviewing this week, Mojo::Util, a module that contains a bunch of portable utility functions. These functions is not the same as global helper functions. According to C2 wiki, helper functions are:
"Functions that do not aid code reusability are helper functions; their sole purpose is to "help" a single function by cleaning the code and making the logic clearer."
As usual, the installation.
$ cpanm Mojo::Util

Let's try using some of the helper functions from the module. Example code using Punycode, a representation of Unicode characters in ASCII characters used in domain names, as shown below.
# punycode.pl
use diagnostics; # To display details of any warnings.
use strict;
use warnings;
use utf8; # Since we've Chinese characters, ensure the file is UTF8.
use feature qw ( say );
use Mojo::Util qw ( punycode_decode punycode_encode );

# Ensure our standard output is UTF8 since we're printing UTF8 characters.
# Otherwise we will encounter "Wide character in say at punycode.pl line 14."
# error.
binmode STDOUT, ':utf8';

my $string = qq|百度|;
my $punycode = punycode_encode $string;

say $punycode;
say punycode_decode $punycode;

# Expected output
$ perl punycode.pl    
wxtr44c
百度

Mojo::Utils contains a list of alias functions that reduce complexity of the code. Some of these are aliases to other modules. For example, these MD5 helper functions which reduce unnecessary typing of the fully qualified names.
sub md5_bytes { Digest::MD5::md5(@_) }
sub md5_sum   { Digest::MD5::md5_hex(@_) }

As mentioned earlier, utility functions is not the same as helper functions. As shown below, the `_unescape` helper function is used once for `html_escape` utility function.
# Helper for html_unescape
sub _unescape {
  if ($_[0]) {
    return chr hex $_[0] if substr($_[0], 0, 1) eq 'x';
    return chr $_[0];
  }
  return exists $ENTITIES{$_[1]} ? chr $ENTITIES{$_[1]} : "&$_[1];";
}

While going through the code, I've found some interesting and funny The Simpsons quotes. The quotes and the relevant codes are pretty much self-explanatory.

(1) "Bart, stop pestering Satan!".
# "Bart, stop pestering Satan!"
our @EXPORT_OK = qw/b64_decode b64_encode camelize decamelize decode encode/;
push @EXPORT_OK, qw/get_line hmac_md5_sum hmac_sha1_sum html_escape/;
push @EXPORT_OK, qw/html_unescape md5_bytes md5_sum punycode_decode/;
push @EXPORT_OK, qw/punycode_encode qp_decode qp_encode quote/;
push @EXPORT_OK, qw/secure_compare sha1_bytes sha1_sum trim unquote/;
push @EXPORT_OK, qw/url_escape url_unescape xml_escape/;

(2) "Daddy, I'm scared. Too scared to even wet my pants. Just relax and it'll come, son."
# "Daddy, I'm scared. Too scared to even wet my pants.
#  Just relax and it'll come, son."
sub html_unescape {
  my $string = shift;
  $string =~ s/
    &
    (?:
      \#
      (
        (?:
          \d{1,7}             # Number
          |
          x[0-9A-Fa-f]{1,6}   # Hex
        )
      )
      |
      ([A-Za-z]{1,8})         # Name
    )
    ;
  /_unescape($1, $2)/gex;
  return $string;
}

Research Paper to Read: (1992) Culture Techniques of Moina: The Ideal Daphnia for Feeding to Freshwater Fish Fry

Source: Science Direct or IFAS.
This is not a research paper in the traditional sense but a published guideline from fishery experts.

What are the key point here?
(1) In term of size, adult Moina is on average is around 700 - 1000μm and for young Moina, average around 400μm. A small size Moina is only slightly larger than Rotifier and smaller than Brine Shrimp. For that reason, Moina is preferable compare to Brine Shrimp as it can live longer in freshwater. (Note: Which is why some Betta sp. breeders only use Moina as the only live feed for all life cycle of the fish)

(2) As Moina is tolerant to poor water quality, it's generally found in any water sources (pools, ponds, lakes, ditches, slow-moving streams, and swaps) polluted with sewage.

(3) Moina strives in temperatures between (24°C - 31°C) but also can tolerance in extreme temperature of (5°C - 31°C) which is suitable for culturing in most part of the world.

(4) Moina feeds on several food sources of bacteria, yeast, phytoplankton, animal manures, detritus (decaying animals or plants), and blue-green algae Microcystis aeruginosa.

(5) Moina reproduces either in sexual or asexual (more common) way. Sexual maturity is around 4 - 7 days with brood size of 4 - 22 per female every 1.5 - 2 days. Each female can produce around 2 - 6 broods in its life span.

(6) Population wise, Moina have higher density (19000 individuals per gallon or 5000 per litre) compare to Daphnia (1900 per gallon or 500 per litre). Production density of Moina depends on food sources. Cultures fertilized with yeast and ammonia nitrate yields 106g/100m3  and compare to Daphnia with similar food source, 25 - 40g/m3. Meanwhile, Moina culture fertilized using organic fertilizer yields even higher output of 375g/100m3.

Why this paper?
The importance of Moina and Daphina as live feed have been discussed in separate post and I will not go details into that. As mentioned, this paper serves as a good introduction and guideline to Moina, the species itself, and most importantly, the culturing techniques in maintaining a Moina population. Moreover, this paper also suggested that Moina is a better live feed compare to Daphnia and Brine Shrimp due to its reproduction volumes and life span in freshwater.

Material and Methods
If you need specific quantity of Moina per day, the suggested method is to batch culture. In batch culture, a new culture is started every day in a separate container. Harvesting should be done around 5 - 10 days where all the food have been consumed by the Moina. Starting new culture every day have another benefit where isolation can prevent contamination due to other Zooplankton or predators.

The previous culturing method combines Moina's food source and its population. Another approach is to use separate culture of food source and Moina population. There are two tanks, the food source or Phytoplankton/algae tank and the Moina culture tank as illustrated below. This setup have the advantages of reducing contamination and sharing of algae tank with multiple Moina tanks. However, extra spaces is needed for such layout.



The next part is on the discussion of the setup and equipment. We start with container, water, aeration, and feeding or fertilizing. Then we proceed with inoculating, monitoring, and harvesting.

Container
38 litres culture tank can only produce enough Moina for hobbyist. For mass production, larger and multiple containers should be used. Water height for the tank should be optimally around 0.4 - 0.5m and can be stretched till maximum of 0.9m. No direct sunlight over the tank and should be some shades to reduce the sunlight till 30% till 50%. To clean up the tank, it should be disinfected with 30% solution of muriatic acid or sun dried.

Water
As Moina is very sensitive to water content, extra care should be taken to prevent poisoning the culture. Anything that contains pesticides, metals, detergents, or bleaches should be removed or discarded before starting the culture. Different water sources have different treatments as shown below:

(1) Well water: aerated for two hours.
(2) Tap water: aerated for two days together with dechlorizer.
(3) Natural spring water, rain water, lake water, or stream water: use as it.

The water temperature in the culture tank should be kept optimally around (24°C–31°C). Anything out of these range will reduce the production of the culture.

Aeration
Aeration oxygenates the water, suspends food particles, and increases Phytoplankton productions. Apply gentle aeration with no small bubbles as it can cause Moina to trap under the carapace which make it float at the surface and thus killing it.

Feeding or Fertilizing
Different culture medias affects the production of the Moina colony and can be categorized into organic fertilizers and mineral fertilizers. For a 397 litres of water, the quantity (Note: I only keep the metric measurement) that should be added initially for the culture for each fertilizer is shown below. Repeat and replace 50% or 100% of the same ratios after 5 days later.

(1) Yeast: 8.5 - 14.2g of baker's yeast.
(2) Yeast and mineral fertilizer: 8.5 - 14.2g of yeast, and 14.2g of ammonium nitrate.
(3) Alfalfa, bran, and yeast: 42.5g of alfalfa pellets or meal, 42.5g of wheat or rice bran, and 8.5 g of yeast.
(4) Cow manure or sewage sludge, bran, and yeast: 142g of dried manure or sewage sludge, 42.5g of wheat or rice bran, and 8.5g of yeast.
(5) Cow manure or sewage sludge, cotton seed meal, and yeast: Use 142g of dried manure or sewage sludge, 42.5g of cotton seed meal, and 8.5g of yeast.
(6) Horse or cow manure or sewage sludge: Combine 567g of dried manure or sewage sludge.
(7) Chicken or hog manure: Combine 170g of dried manure.
(8) Yeast and spirulina powder: 6g baker's yeast, 3g spirulina powder. Mix with warm water and let it sit for 30 minutes. Pour the mixture through a net into the Moina culture to filter out unresolved yeast.

For hobbyist, the culture medias of item (1), (2), (3), and (8) is more suitable and readily available, especially for indoor environment.

Inoculating
This process is to introduce organisms, in this case, Moina into a culture medium. Typically we call this a Moina starter culture. Start with 100 Moina per litre. Typically inoculation starts after 24 hours or more after fertilization except for yeast with aeration. We can add the Moina after a few hours.

Monitoring
How do we make sure that the Moina culture is healthy and if not, proceed with some adjustments? There are four ways:

(1) Extract one tablespoon or 15ml from the culture and examine with magnified glass or microscope. Pay attention to the colour, intestinal tracts, and movement. In a healthy culture, Moina are green or brown-red in colour with full intestinal tracts and active movement. Unhealthy culture due to environment or insufficient food will produce Moina pale in colour with empty intestinal tracts or resting eggs.

(2) Extract one teaspoon or 3 - 5 ml sample and kill it with 70% alcohol solution. Count the Moina using magnified glass or microscope. If there are 45 - 75 Moina, then the culture is ready for harvesting.

(3) Slightly cloudy, tea colour, or green colour water means there are still food source available for Moina. Only clear water, with transparency of 0.3 - 0.4 m, indicates insufficient food available and need to be replenished with 50% - 100% initial quantity when fertilizing.

(4) Discard the culture and start a fresh new one if the current culture have been infected with predators like Hydra, back-swimmers, diving bettles, or dragonfly larvae.

Harvesting
Use netting net with 50 - 150μm mesh or coffere filter to collect and harvest Moina. For semi-continuous culture, only extract about 20% - 25% from the culture tank. After harvesting, do a partial and small water change and stir the bottom sediments while at it. Moina can kept alive in clean water and fridge for several days with some lost of nutrients due to starvation. For long periods storage, harvested Moina can be kept by freezing in low salinity water (7ppt, 1.0046 density) or freeze-drying. While frozen Moina still retains its nutrient value, it will leach out rapidly upon exposure to water. Enzyme is lost within ten minutes. Amino acids and bound amino acids will lost after one hour.

Result
None.

Discussion
None.

What you're going to do with the knowledge you've gained?
(1) Buy several Moina starter from different breeders or aquarium shops.
(2) Start two small Moina cultures either in indoor and outdoor environment using plant detritus (decaying water organic matter), alfalfa, bran, yeast, and spirulina powder.

What are the further unsolved questions?
(1) What are the available published literatures on mass scale Moina or Daphnia production?
(2) There are many species of Moina and which species is the most suitable for larviculture?
(3) How do we aerate water without create any bubbles?

UMT MOOC: Ornamental Fish Culture - Topic 7: Seed Production - Factors to be Considered for Feeding - Light Intensity, Water Current, and Exchange Frequency

Continue from previous post.

Light Intensity
When breeding and rearing fishes in artificial or indoor environment, exposure to lighting have different effects on either fishes or plants. For plants or those doing aquascape, having more lighting means higher Photosynthesis output where light energy is converted to chemical energy as fuel. For fishes, higher lighting intensity and prolong exposure may not be beneficial. Any forms of light either sunlight or artificial light, depends on the intensity and exposure time, may increase the water temperature. Newly hatched larvae are very sensitive to light and water temperature. Such sensitivities can lead to head bunting, deformation in eye pigment, and mortality. Hence, to prevent this, we can use "Green Water" or water with algae to reduce such sensitivities. What is the recommended indoor light intensity? For 60 to 80 cm rearing tank, 20 watts with photoperiod of 12 hours light and 12 hours darkness.


Water Current and Exchange Frequency
Depending on fish species but the common approach is not to use water circulation during the larval stage. Apply gentle aeration (make sure the water is moving) only after 7 days and the bubble size through air stone or plastic tube should be as slow and small as possible. Aeration ensures good water quality and continuous supply of dissolved oxygen. Similarly, water change should not be performed on early larval stage until 7 to 14 day onwards. The volume of water exchange using aged or dechlorinated water should be around 20% to 30% by siphon technique every week.


UMT MOOC: Ornamental Fish Culture - Topic 7: Seed Production - Factors to be Considered for Feeding - Artificial & Processed Feed

Continue from previous post.

While live feeds as we discussed in previous posts provides all the necessary nutrients for larviculture and aquaculture, culturing and obtaining consistent live feeds for fishes can be a time consuming and challenging. There are numerous issues that can interrupt the supply of live feed. Furthermore, different fish species have different nutrient requirement, feeding habits, and life stages. For that reason, artificial or processed live feed provides an good alternative food source. This type of feed is produced through bioencapsulation, a process that enhanced live feeds with specific nutrients (e.g. vitamin. fatty acids / fish oil, amino acids, colour, mineral, hormones, or enzymes) for specific type of fishes.

There are several popular processed live feeds which are made due to either costs, availability, and nutrients. Shrimp meal is rich in pigmentation and a popular choice as it's economically cheap and readily available. Frozen enriched Artemia or Brine Shrimp is suitable for long shelving food source which is also rich in Carotene (pigment development), laxative (digestive system). Spirulina, the greenish dry form plankton is rich in vitamin, Beta-carotene, and raw protein. On the other hand, our daily foods can serve as a good additional nutrients to existing fish meals. For examples, milk powder, egg yolk, egg custard, and soybean. The combination of both according to mixing ratios are shown below.

(1) Fish meal + cooked egg yolk (10/20:90/80)
(2) Soybean meal + cooked egg yolk (10/20:90/80)
(3) Fish meal + cooked egg yolk + fish oil (30:65:5)
(4) Fish meal + cooked egg yolk + plant oil (30:65:5)
(5) Fish meal + algae + fish oil (PUFA/HUFA) (85:10:5)
(6) Fish meal + algae + fish oil + pigment (80:7:10:3)
(7) Fish meal + algae + fish oil + digestive bacteria (80:8:10:2)

The video below shows the step-by-step of manufacturing floating type fish pellets (floating type) in a large scale manner.


UMT MOOC: Ornamental Fish Culture - Topic 7: Seed Production - Factors to be Considered for Feeding - Zooplankton : Moina & Daphnia

Continue from previous post.

One key issue in larviculture (breeding and farming of fish or shellfish larvae) is sourcing and culturing of consistent live food source which are easily available and rich in nutrients and pigment. Our discussions and observations with different Betta sp. breeders leads us to three popular live feeds which are suitable in all life stages which are MoinaDaphnia pulex, and Daphnia magna. Since these three are genus of crustaceans (like prawn) and related to each other, they are collective known as Daphnia. It's also commonly known as "water fleas" due to its jerking and hopping movement or "kutu air" (Malay term) in most aquarium shops in MY. However, only a selected few aquarium shops which sell this live food during the weekend. The other options is to buy from other fish breeders or go collect it from sewerage and rivers.



What are the main difference between these three live feeds? Size. Moina is the smallest, follow by Daphnia pulex, and lastly Daphnia magna. Hence, Moina is a great food source for different life stages of fish from larvae, fry, and juvenile. Daphnia magna is more suitable for juvenile and adult fish. The video below illustrates the size differences.


UMT MOOC: Ornamental Fish Culture - Topic 7: Seed Production - Factors to be Considered for Feeding - Zooplankton : Artemia & Copepods

Continue from previous post.

Artemia
Also known as Brine Shrimp is a cost effective, easy, and readily available live feed used in aquaculture. One key characteristic of Artemia is the ability to produce dormant eggs (cysts) which can be stored (average shelf span of 2 years) and hatched (within 24 hours or 36 hours if the cysts were stored in fridge) later as shown in the video below. Also, Artemia serves as intermediate feed during the transition period before switching to Moina or formulated feed. The only downside, depending on the grade (hatching rate), Artemia is quite expensive.


Copepods
This is microscopic organism or crustaceans (like shrimp) in the marine or freshwater food chain. These organism feeds on Phytoplankton or bacteria. As live feed, it acts as supplemental intermediate feed for both Rofier, Artemia, and Miona. Similar to these live feeds, Copepods is easily cultured and contains nutrient which improve the growth, survival, and pigment development.


This Week I Learned 2019 - Week 09

Previous week post or something from the past.

What else I've learned this week not within this post? Going through the seventh week of ornamental fish culture on Phytoplankton, feeding schedule, Infosuria and Rotifier. The review paper of this week is on using fruit fly maggots as an alternative food source for breeding Betta splendens. We also looked into two Perl modules, Carp and Carp::Always.

What is a FrakenPad? (via HN) The nicest thing about Thinkpad lappy is modularity where each computer components are interchangeable in some way of another with minor hack. Till today, many still preferred the classic ideal keyboard layout instead of the island-style keyboard layout even though the focus group study proved the later style is preferable. No doubt, based on the study, tactile and audio feedback is better with island-style, but the new keyboard layout is way better with classic-style. And yet, till today, it still puzzled me why can't Lenovo create a T25 with good screen and hardware specification which leads to the creation of FrakenPad or mods from China? Perhaps it's manufacturing processes or costs? Or maybe it's because of Apple?

Should you ditch your phone? (via HN) No. And you should focus on features that enrich your life instead of making you additive. There are many ways to reduce the addiction, for example, switch your phone screen to grayscale. By doing so, you still retain those smart phone features (e.g. Maps) that you need and at the same time, reduce your phone usage. For those who prefer more constraints but still retain Internet connectivity, the newly released Nokia 210 feature phone is a good choice. Instead of creating intervention on your device, perhaps we should create our own self-constraints, discipline.

为什么传统武术这么弱? 看了《倭寇的踪迹》,现实的武术其实一点都不浪漫,脱离实战。整套电影颠倒了传统武侠片的浪漫情怀,更倾向冷幽默及反思的电影。


What is a Magpie developer? Do you love latest greatest shinny new tech? If yes, then high chances that you're a Magpie developer. And contrary to the article, there is nothing wrong being one. The world is moving fast and attention span is short and expensive. One thing about tech after all these Interweb years, we kept re-discover and re-label existing tech with fancy new names.

How hard is to line breeding your Betta sp.? Hard, especially on certain species. Furthermore, you must obtain good broodstock with quality traits and ensuring the at least four generations. The next challenge we normally faced is the broodstock won't breed, even though both fishes were healthy and well-conditioned. The obtain pure quality traits, you must ensure the broodstock still alive during these periods (2 till 3 years) to breed again with the next generation fishes.

What is something no one really tells you about getting older? Focus right, eat correctly, and sleep well.

Perl Module(s) Of The Week - 2019 Week 09 - Carp and Carp::Always

This week we will look into three Perl modules, Carp and Carp::Always that alters or enhances the default behaviours of error handling using both `warn` and `die` function. Basically both functions will raise a warning and write an error message to standard error (STDERR) but `die` will throw an exception by exiting from the program through `exit` function.

The `die` function is commonly used when opening a file. When the opened file is not found, an exception will be thrown with an error displayed to STDERR and termination of the program. Example below illustrates this. We can substitute `die` with `warn` but that is not a good practice as open a missing file disrupts the normal flow of the program and an exception should be raised and the program should be terminated.
open(my $fh, "<", "input.txt")
    or die "Can't open < input.txt: $!";

Installation is straightforward. As usual.
$ cpanm Carp Carp::Always

What kind of different behaviours that `Carp` module provides? Let look at the below code example consists of a module `Foo.pm` and the calling script `test.pl`.
# Foo.pm
package Foo;
use Carp;

sub twarn { warn "test warn"};
sub tcarp { carp "test carp"};

1;

# test.pl
use lib ".";
use Foo;

Foo::twarn();
Foo::tcarp();

Running the above code will give us below output. Upon an exception, the `warn` function reports the file name (`Foo.pm`) and the line number (`line 4`) where the error occurred. Using `carp` function with verbosity enabled, the function shows additional details on the caller's file name (`test.pl`) and line number (`line 5`). If you're writing a Perl's CPAN module or subroutines, using `Carp` module is a preferred choice as the library user (the caller) is more interested in finding where in their own code that causing the exception.
$ perl -MCarp=verbose test.pl 
test warn at Foo.pm line 4.
test carp at Foo.pm line 5.
        Foo::tcarp() called at test.pl line 5

The `Carp` module provides several common functions that wrapped around both `warn` and `die` functions.

(1) `carp` - `warn` of errors (from perspective of caller).
(2) `cluck` - `warn` of errors with stack backtrace.
(3) `croak` - `die` of errors (from perspective of caller)
(4) `confess - `die` of errors with stack backtrace

What if you don't want or can't changed any existing code that uses the `warn` and `die` function but still want behaviour provided by `Carp` module with backtrace? This is where `Carp::Always` module comes in as shown in the result below.
$ perl -MCarp::Always bar.pl               
test warn at Foo.pm line 4.
        Foo::twarn() called at bar.pl line 4
test carp at Foo.pm line 5.
        Foo::tcarp() called at bar.pl line 5

Research Paper to Read : (2017) Fruit Fly Maggots as Alternative Feed to Improve Siamese Fighting Fish (Betta splendens) Fecundity, Eggs Hatchability and Fry Survivability

Source: MyJurnal

What are the key point here?
(1) Fruit fly maggots can serve as alternative diet for Betta splendens in addition to bloodworms and formulated pellets which yields result with non-significant differences of average hatchability rate of 65% and survivability rate of 69%.
(2) Commercial pellets is not a suitable diet for broodstock for breeding purpose but it's good enought for daily diet consumption.

Why this paper?
It's rare to find local and recent research paper from local university from MY on Betta splendens. Furthermore, we are curious and researching about alternative diets in addition to existing typical diets like Artemia / Brine Shrimp, Moina, Daphnia, Vinegal eel, Blood worm, Tubifex worm, Mysis shrimp, Grindal worm, Flightless fruit flies, and beef heart. Even though, fruit fly maggots were not a common food source for Betta splendens, it's a common and popular live feed sold in aquarium shops here in MY as a live feed for large ornamental fishes like Arowana.

Material and Methods
This experiment uses 9 pairs (18 fishes) of Betta splendens of 4 till 8 weeks conditioned for a month (the broodstock should be around 8 till 16 weeks old). The fishes were fed with commercial pellets (there is no mention of the nutrients values of these pellets) twice daily during that month.

Experiments were done on three types of feed in 3 replicates:
(1) Commercial pellets x 3 pairs. Control group.
(2) Bloodworms x 3 pairs. Frozen bloodworms purchase from local pet shop.
(3) Fruit fly maggots x 3 pairs. Cultured using over-rippen banana left outdoor, eggs collected and hatched in container. Then the hatched maggots were collected and kept frozen in fridge.

The breeding conditions and procedure as follows:
(1) 1 or 2 days aged water with sea Indian Almond leaves.
(2) Male Betta was released first to build bubble nest.
(3) Female Betta was added but was separated in a separate transparent container.
(4) Female Betta was released once the bubble nest was constructed.
(5) Female was extracted once mating was done.

Result
The number of eggs produced by each diet is shown below. We're quite surprised that commercial pellet yielded a higher result than Blood worms. There is no mention of nutrients content of the commercial pellet so it's quite hard to deduce why commercial pellet is better than live food. Nevertheless, the broodstock with fruit fly maggot diet produced the highest number of eggs.

Discussion
The nutrients content of both live feed as follows:
(1) Blood worms: 52.8% of protein, 9.7% of fat, 0.38% of calcium and 0.90% of phosphorus.
(2) Fruit fly maggots: 40.3% of protein, 29.4% of fat, 0.59% of calcium and 2.30% of phosphorus.

The high fat and phosphorus may contribute to the high number of eggs spawned using fruit fly maggots as diet. However, there is no details on nutrient of the commercial pellet. Therefore, we can't reproduce this experiment and deduce that commercial pellet may not be a better choice than those two live feed.

What you're going to do with the knowledge you've gained?
(1) Learn how to culture fruit fly maggots to test the suitability of it as an alternative diet for Betta splendens for breeding purpose. Similarly, try with bloodworms as well.
(2) Check if we can breed the broodstock of age of 8 weeks or 2 months. Based on our observation, we don't think Betta fishes of 8 weeks have reach sexual maturity. 12 weeks or 3 months is considered just reaching adulthood.

What are the further unsolved questions?
(1) What are the dietary needs for broodstock to ensure fecundity (the ability to mass produce offspring) or reproductive performance?
(2) What are the feeding schedule in addition to the dietary in question (1)?
(3) As we have mentioned before, quite a few Betta splendens breeders sweared by Daphnia as its primary food source from larvae till adult. Comparison of diet should have includes Daphnia and Miona as well. What will be the expected results if both these two live diets were included?

This Month in Review: 2019 Feb

Continue from previous month.

Writing. There was a long hiatus and I have to switch from writing through my lappy to writing using pen and paper. It has been a while I've been writing solely on non-digital medium but it turned out to be a fruitful experience. Several advantages about writing in analogue way. Sketching was way easier and convenient. Concentration was high and you're always in the zone as there were no distraction or procrastination through mindless surfing the Interweb. Digital sabbath or digital minimalism is an alternate good way to churn out more writings.

Reading. In addition to research papers and code reading, read through quite a few books on Betta sp. and Gourami either by local or foreign publishers. Sadly to say, local published books and researchers on fishery were still a lot to be desired compare to our neighboring countries (especially SG). We have all the natural resources and native species (do you know there are quite a few native Betta species which are native only in MY) but yet little efforts or resources were allocated in researches and studies of these fishes. Perhaps it's very hard to get grant for this kind of research that doesn't yields any economic incentives like aquaculture.

Ornamental fish culture online course. Breeding and genetic is always fun. This reminded me this Biology class (Build a better Betta through a simulation activity by LifeSciTRC) for 6 - 8 grades (equivalent to Form 1 till 3 in MY) which uses Betta sp. to study and understand genetic. We have done quite a few Betta sp. breeding projects and it's quite time consuming to produce quality Betta sp. The main obstacles is always on getting quality broodstock (the pair of fish to breed). Most breeding project ended up with less that desired offspring but that is understandable. Even with quality broodstock, you're lucky if you can obtain 1% quality offspring. Most of the these offspring were on the rejected end of the quality scale. Next is on seed production which focus on breeding and feeding. Our observation is that timely good live feed ensures expected growth, survival, and pigment development. Culturing or obtaining consistent food source is always a challenge. 

UMT MOOC: Ornamental Fish Culture - Topic 7: Seed Production - Factors to be Considered for Feeding - Zooplankton : Infosuria & Rotifier

Continue from previous post.

Previously we discussed about Phytoplankton, which is a microscopic (hard to see with naked eyes) plant drifter organisms which obtains its energy through Photosynthesis. Meanwhile, Zooplankton is animal drifter organisms which can be microscopic or large (e.g. Jelly Fish). Zooplankton consumes Phytoplankton and end up as crucial food source for fishes. The video below will show a quick summary of both planktons. The discussion of this and following posts is to look into different types of Zooplankton which are crucial as live feed for ornamental fishes.


Infosuria
This is a general collective term for microorganisms or aquatic creatures in freshwater ponds. Infosuria is a good initial live feed for newly hatched fries until 4 to 5 days and can served as supplement food source after day 3 in combination with other live feed. Culturing Infosuria is straightforward, just soak vegetation in aged water (aquarium water is the best) in a jar and wait a few days for the cloudy water to turn clear. You should see some white speck with your naked eyes. The culture is ready for harvesting and fed to the larvae or fry.


Rotifier
This is aquatic organism which have rotating wheel-like structure. Rotifier is commonly used and mass cultured as live feed in aquaculture. This organism is a good food source for larvae and fry as it's easily digestible, slow moving, small, and fast reproduction. Since its life span is roughly 3 to 4 days, it's a cultured and harvested in most fish farm as good protein source.


If you've watch both videos above, you will notice that maintaining a live feed culture like Infosuria and Rotifier take quite some time and effort, even though culturing Infosuria is easier. That is why some Betta sp. breeder prefer to use Daphnia or common water fleas as live feed.