This Month in Review: 2019 Jan

My yearly reflection post in 2018 inspired me to have a daily, weekly, and month journal to jot down my learning notes, thoughts, and reflection. Since today is the end of the first month of 2019, might as well write a review and reflection post for this month.

Writing. Mindless daily rambing but you must do it every day. Surprisingly, on average, I've written about 200 words per day which I believe is a good start after all these years of journaling. Word choices is still a problem though but that can be improved by more reading and writing. Some days were easy, some days were hard. Writer's block does exists and can happen to anyone. How to overcome it? Sit down and allocate a consistent time (countdown timer) and place to write. Forget grammar and other craps. Just churn out all the words that came to your mind. Just write for yourself. Once time is up, wrap up everything and publish the post. The ending of season 2 of BoJack Horseman illustrates this consistency very well where the Jogging Baboon gave BoJack important life advice on jogging, "It gets easier… Every day it gets a little easier… But you gotta do it every day  --- that’s the hard part. But it does get easier." For a more visual perspective, just watch video below.


Reading. There are two parts, research paper review and code reading. Reading aquaculture research papers were something new to me but since I've so many questions watching my SO breeds Betta sp., it becomes quite enjoyable experience since you're reading actively (reading with questions in mind and looking for answers). Even though, there were certain parts way beyond my comprehension. On code reading, going through some Perl's CPAN modules was also something new to me as well. Not much of a review but more towards self-study notes when reading code.

Ornamental fish culture online course. Initially I was surprised and excited when I found this online course. However, after 5 weeks into the course, I've noticed several inconsistency between the slides and the video lecture and worse, certain parts were missing. Compare to similar online courses provided in India and Bangladesh, the differences in effort and presentation was noticeable. Nevertheless, I will continue the online course and use it as a guide to gain more knowledge in ornamental fish culture. The more you've learned about ornamental fish culture, the more enjoyable when visiting any aquarium shops or fish farms. The knowledge you gained allows you to understand why certain things were done in certain ways and prevent us from buying low quality fishes.

UMT MOOC: Ornamental Fish Culture - Topic 5: Ornamental Fish Breeding - Bubble­‐nest Builder & Mouth‐brooder

Continue from previous post.

Bubble-nest Builder
This species built bubble nest around shared area (plants or any plastic cover) as its spawning ground. The male and female fishes will mate and the male will collect fertilized eggs to the bubble nest and incubate these eggs. Famous species are Betta sp. (fighting fish) and Gourami sp.

Betta sp.
Omnivorous and insectivorous. Survive within temperature of 22 - 29°C and pH of 6-8. Male Betta is very territorial and needs to be separated to prevent fighting and injuries. Hence, if a Betta fish flare constantly even at its own image, then surely, the fish is a male. The whole breeding process is shown in video below.


Gourami sp.
Omnivorous. Survive within temperature of 22 - 30°C and pH of 6 - 8.5. Gourami are fash swimmer and less aggressive than Betta sp. Male Gourami have colourful long dorsal and anal fins compare to female. From the video below, Gourami builds bubble nest faster and bigger than Betta sp.


Mouth-brooder
Once mating done and the male fish fertilizes the eggs, the male or female (depend on type of fishes) will collect and incubate these eggs until it's hatched. Famous species are Arowana as shown in the video below.


For commercial farming, fries are harvested and raised artificially. Note that the breeder was scanning the fish for microchip for identification. Do you know one of the largest Arowana farm in MY, Nagamas Aquaculture was owned by Senheng, the electric appliance stores.


UMT MOOC: Ornamental Fish Culture - Topic 5: Ornamental Fish Breeding - Eggs Scatterer & Eggs Depositor

Continue from previous post.

Eggs Scatterer
Eggs scatterer breed where female fishes (either one or in group) releases its eggs. While these eggs are falling, the male fish will spray its sperm (called milt) to fertilize these eggs. Aquatic substrates or plants needed to capture the eggs. Once spawning is done, the broodstock (in MY they call it "indux") should be removed from the breeding tank. Fish species that spawn in such way are: Goldfish, Koi, Barb, and Zebrafish.

Goldfish. As the video below shows, to identify the gender, the male Goldfish have white spot in pectoral fins (the fins after the fish head just like our ears). Also, the broodstock can be transferred to another breeding tank for another spawn.


In the slide, there is a male to female ratio of 1 female to two males when setting up the breeding tank. I'm not sure why so regarding this gender ratio when breeding. The second Goldfish breeding video use this gender ratio. Also, a larger tank and artificial net compare to previous method. It has been said and Goldfish breeds in the early morning (4am to 7am), I'm not sure how true is this as I've not read any scientific literature on this.


Koi. Similar to Goldfish but larger spawn and size. Hence, the breeding tend to be on a larger scale using artificial breeding or hand breeding method instead as shown in video below.


Off course, back to the natural breeding method. Still remember I kept asking about gender ratio of 2 males and 1 female? According to the video below, this will increase the fertility rate which increase hatch rate. High hatching rate will reduce fungus on eggs and improve water quality.


Eggs Depositor
Fishes within this breeding character comes in its chosen mate (pair for life) and have parental care of its fries until it reach juvenile. The broodstock will chose a substrate like grass, glass, or con to drop its eggs. Example of fishes are Discus and Angelfish (as shown in video below).


UMT MOOC: Ornamental Fish Culture - Topic 5: Ornamental Fish Breeding - Live Brearer

In fish breeding, the first step is to identify the male and female of the fish species. From there, only we can pick a pair to breed. Then we have to learn what type of breeding characteristic of the fishes we want to breed. Next, we need to setup the breeding tank and condition the pair of fish so it can mate and breeding in optimal environment condition.

The fish group we going to discuss is livebrearer. Popular livebrearer are Guppy, Mollies, Platy, and Swordtail.The mating and breeding characteristics are similar to mammals where the male uses its gonopodium (reproductive organ which looks like a special anal fin) to channel its sperm to the female's fertile eggs in its body. Upon successful mating, the embryo will stay in the female body until it reaches juvenile stage and the female will gave birth.

To breed Guppy, use 3 females and 2 males (not sure why this gender ratio was used, it's not mentioned in the slide). Put some aquatic plants and when the fry have grown into juvenile fish. These plants can served as additional diet, places to hide, and substrate. If the female Guppy have silver black colour on its stomach, that is an indicator that the female Guppy is going to give birth. The video below shows the step-by-step guide on breeding Guppy.


This Week I Learned 2019 - Week 04

Last week post or something else from the past.

What else I've learned this week not within this post? Going through the fourth week of ornamental fish culture on nutrition for ornamental fishes on live and formulated feeds. Different nutrients of protein and amino acids; lipids and fatty acidscarbohydrates and minerals; and vitamins and carotenoids were discussed. Meanwhile, this week paper for literature review looked into the optimal crude protein level for feeding juvenile Betta fish. The week was concluded with a review of Reply module, a REPL tool for Perl.

Is what we read on Internet written by insane people? (via HN) Discussions in any communities either physical or virtual are driven by selected outspoken few, off course, with their own agendas, either paid or not.

Stuck and don't know what to do next? Write things down (via HN), question until you reach an obvious answer on what to do next. Writing as well as programing is a creative endeavour, occasionally, you will get stuck, be it a writer block or code block. Don't feels like writing, talk to your rubber duck aka Rubber Duck method. Explain the problem to yourself, part by part or line by line.

Relatedly, how do you organize/track your personal goals? Always analogue way, just pen and paper. Nothing can beat the old fashioned writing it down and make it happen. Subconsciously our mind will keep us in check of what we've written down.

Is modern PHP (via HN) still relevant for web development? Yes, and very much very relevant. Yes, it's not as fancy as other programming language, but it have came a long way. Laravel (with all the side projects), even though will all the magics behind it, is as good or surpass Ruby on Rails or Django. Needs asynchronous programming framework or coroutine like Node.js or Golang? Well, you can check out Swoole. Furthermore, the language is simple enough for beginner to pick up and finding or train talents using PHP is way more easier within the local MY tech scene. But off course, some people don't use it because PHP is not the shinny new toy anymore, lacking the sexy factor. Nevertheless, for a simple and pragmatic web development stack, nothing so far can beat PHP. If you're venturing into PHP, read through both the right way and the wrong way.

How do you find text in database with HeidiSQL? "Just press Ctrl+Shift+F to call the "table tools" dialog."

Should you replace Facebook with email? (via HN) Yes, if you're going old school. Nevertheless, one thing I agree with with the writer, emailing leads to more intimate and better conversations.

How to teach Git? (via HN) The best written explanation with good visualization of any Git tutorial I've read so far.

Perl Module(s) Of The Week - 2019 Week 04 - Reply

Is there a good read–eval–print loop (REPL) or language shell exists for Perl? Yeah, there are several and the Perl module of the week is going to look at Reply module, a REPL that can be customized with several plugins for additional features.

Installation and quick run of the program. The `0>` is the console prompt at the counter of number of lines.
$ cpanm Reply
$ reply
0>

To install and use different plugins, for example, Reply::Plugin::Editor. Just install and update the default configuration file, `~/.replyrc`. To launch the editor when running the REPL, just use `#e` at the console.
$ cpanm Reply::Plugin::Editor
$ cat ~/.replyrc
[Editor]
editor = vi

Now for some code reading of the module. Surprisingly quite a small program compares to my initial assumption. To execute the program as source code, instantiate the class to load the configuration file and `run` it.
use Reply;
 
Reply->new(config => "$ENV{HOME}/.replyrc")->run;

First, code was written in old school Perl's OO as shown below. Codes are self-explanatory with clear variable names.
sub new {
    my $class = shift;
    my %opts = @_;
 
    my $self = bless {}, $class;
    ....
    return $self;
}

Next, run and loop the execution of the console input step by step until there is a termination.
sub run {
    my $self = shift;
 
    while (1) {
        my $continue = $self->step;
        last unless $continue;
    }
    print "\n";
}

Plugins are loaded dynamically based on the configuration files using the Module::Runtime module.
    if (!blessed($plugin)) {
        $plugin = compose_module_name("Reply::Plugin", $plugin);
        require_module($plugin);
        die "$plugin is not a valid plugin"
            unless $plugin->isa("Reply::Plugin");
 
        my $weakself = $self;
        weaken($weakself);
 
        $plugin = $plugin->new(
            %$opts,
            publisher => sub { $weakself->_publish(@_) },
       }

Research Paper to Read: (2016) Dietary crude protein levels for juvenile beta

Source: ResearchGate.

Takeaways
(1) The range of 30% till 33% crude protein (CP) level is the minimum acceptable level to ensure optimal growth and feeding efficiency for juvenile Betta fish.

Why this paper?
While breeding juvenile Betta fish, instead of live food, there are numerous formulated feeds in the market that we can use. Different brands have different formulation and CP level. What are the acceptable range of CP level to ensure optimal growth and reduce wastage?

Material and Methods
This experiment includes 192 juvenile Betta fish of 30 days age with initial average weight of 0.11 ± 0.02g. These fishes were grouped into 6 groups of CP level with 4 repetitions where each tank contains 8 fishes as shown below:

(1) 27% CP x4 repetitions
(2) 31% CP x4 repetitions
(3) 35% CP x4 repetitions
(4) 39% CP x4 repetitions
(5) 43% CP x4 repetitions
(6) 47% CP x4 repetitions

The breeding conditions for the next 30 days as follows:

(1) 6 litres tank with biological filter.
(2) Airting with temperature 26 ± 1°C.
(3) Feeding (done ad libitum) three times at 07:00, 13:00, and 17:00)
(4) Tank siphoned weekly. (Didn't mention percentages of water changes)

The diet was self-produced formulation feeds using the ingredients shown in table below. The feed was produced by fine grounding the ingredients and mix manually with water around temperature of 50 ± 5°C for starch gelatinisation. Pellets were produced using a meat grinder and dried using oven for 24 hours at 50°C.


Result
As the table below shown, CP of 31% and 35% have the highest weight gain and growth rate. Excess CP slow down growth due to extra energy need to catabolise additional protein and amino acids.


Discussion
Different fishes have different biological structure and diet needs. Hence, different fishes needs different CP levels. There was one master breeder which overfed the Betta fish to speed up the growth for competition. In his experience, overfed may also lead of loss of fishes as shown in previous table.

Further Questions
(1) What is the relationship between CP percentage and feeding frequency?
(2) What are the CP level needed for adult Betta fish or fry?

UMT MOOC: Ornamental Fish Culture - Topic 4: Nutrition of Ornamental Fish - Vitamins & Carotenoids

Vitamins
Essential micronutrients (in small quantity) that are needed for growth, health, reproduction, and maintenance. As these elements cannot be synthesized or can only in insufficient quantity, these must be obtained from external fish diet. Type of vitamins depends on how it can be solubility either in water (Biotin, Choline, Folic Acid, or Niacin) or fat (Vitamin A, D, E, or K). Due to solubility, water-soluble vitamins leached within 30s after exposure.

Is Vitamin crucial for fish diet? Yes. One study shows that diet with ascorbic acid (25 mg/kg) for Oscar (Astronotus ocellatus) can prevent growth reduction and deforminitis (opercula and jaws deformities, haemorrhage in the eyes and fns, or lordosis). As this is taken from the slides, I can't the research paper that claimed this.

Carotenoids
Carotenoid is organic colour pigments that are produced by plants or algae. As fish cannot synthesize pigments, hence colouration for fish needs to be obtained through Carotenoids within the fish dietary. The photo below (Source: Manas K Maiti, Deepjyoti Bora, Nandeesha TL, S Sahoo, Adarsh BK and Sikendra Kumar (2017) Effect of dietary natural carotenoid sources on colour enhancement of Koi carp, Cyprinus carpio L.) shows that lacking of Carotenoid in fish diet will impact the colourization or pigmentation.


UMT MOOC: Ornamental Fish Culture - Topic 4: Nutrition of Ornamental Fish - Carbohydrates and Minerals

Carbohydrates
Besides protein and lipids, carbohydrates is the third essential nutrients which provides a cheap energy source in fish diet.  Elements within a carbohydrates contains carbon, hydrogen, and oxygen. Carbohydrates can be grouped into three classes of: (1) Monosaccharides (simple sugar), (2) Oligosaccharides (groups of Monosaccharides), and (3) Polysaccharides (stashes).

Herbivorous (plant eating) fish digest carbohydrates differently. Koi and Goldfish uses bacterial (microflora) in its gut to digest complex carbohydrates. For examples, Goldfish have carbohydrates digestibility of 70% while Moonlight Gourami, 50%.

Minerals
This is another essential nutrient in fish diet to provide needed functionalities (tissue formation, metabolism, and regulation) in living organism. As minerals cannot be produced naturally by living organism, it's obtained from external sources. When a food or body is burnt, minerals are contained within the ashes. Two classes of minerals which are: (1) Macrominerals ,which are required in large quantity (Calcium, Chloride, Magnesium) and (2) Microminerals, needed in smaller quantity (Chromium, Cobalt, and Copper). As natural soluble minerals are found within the water environment, optimal minerals requirement in fish dietary proved to be difficult. However, numerous researches have done to find the baseline requirements. For example, the table below (Source: Sales, James & Janssens, Geert. (2003). Nutrient requirements of ornamental fish – A review) shows mineral requirements for popular ornamental fish species like Tiger barb and Guppy.


UMT MOOC: Ornamental Fish Culture - Topic 4: Nutrition of Ornamental Fish - Protein and Amino Acids; Lipids and Fatty Acids

Protein and Amino Acids
Protein consists of one or more complex molecules consists of chains of amino acid. Elements within a amino acid contains of carbon, hydrogen, oxygen, and nitrogen. Different proteins serves different purpose for any living cells like enzymes or antibody. Amino acids are divided into two categories of indispensable and dispensable. The former category cannot be synthesized and must be obtained externally from diet. The dispensable amino acids can be produced to enable the synthesis. Below are the list of amino acids within the two groups:

(1) Indispensable: Arginine, Histidine, Isoleucine, Leucine, Lysine, Methionine, Phenylalanine, Threonine, Trytophan, Valine
(2) Dispensable: Alanine, Asparagine, Glutamic acid, Glycine, Aspartic acid, Serine

Having the right protein source for ornamental fishes ensures optimum weight growth and gonadal (sex gland) maturity. However, protein metabolism also leads to ammonia residues which can pollute the aquarium water. The table below (Source: Sales, James & Janssens, Geert. (2003). Nutrient requirements of ornamental fish – A review) shows protein requirements for popular ornamental fish species.


What type of diet should be fed to obtain optimum feed conversion ratio and efficiency. The diet should be at least 45% protein and 6% lipid (more on this later) level. However, over feeding may lead to excessive nutrients which restrict protein intake and growth (this was written in the slide but not from any research literature). Soy bean (for example, tofu) could works as alternative protein source. Some Betta fish breeders we have talked to use tofu as main protein source instead of Dalphia or Blood worm.

Lipids and Fatty Acids
Lipid is a substance that is insoluble in water and an essential component in living cells. Several classes of lipid are fats (stored unused energy), oils, waxes, and phospholipids. Lipids provides energy and essential fatty acids as well as serves as structural components and carriers.

As fish survive in low temperature environment, it needs more long chain fatty acids (LCFAs), which have = >12 carbons to support its cell membrane flexibility. In general for freshwater fishes, two types of fatty acids are needed, either one or both. These are (1) Linoleic acid (18:2n-6) and (2) Linolenic acid (18:3n-3). Both can be found in most vegetable oils.

UMT MOOC: Ornamental Fish Culture - Topic 4: Nutrition of Ornamental Fish - Live & Formulated Feed

One of the key issue faced by aquarist is finding good food source to feed the fishes. Food sources come in two ways, either natural (live feed) or processed (formulated feed). There are quite a lot of breeders that we have met sworn only by live food. For example, for Betta farms or breeders, all sworn by Daphnia as the only food source when starting and maintaining all their spawns.

Live feed consists of plankton, insect, snails, aquatic plants, feeder fishes, and others. Hence, depending on type of fishes, obtaining these food sources can be quite expensive. As fishes need different kinds of nutrients, using only one type of food source may leads to malnutrition. Furthermore, organic food sources may contains parasites or bacteria which can lead to wide spread infection or outbreak. However, live feed is crucial and irreplaceable for feeding hatched fries as these fries unable to identify immovable formulated feed as food source.

Formulated feed comes in many forms such as pellets, flakes, tablets and granular food, freeze-dried food, and vacation food. Looking at any ingredients at the back of packaging will give you the composition of the nutrients of the fish food. The main advantages of formulated feed are long shelf life, balanced nutrients, sterilization, and consistent availability. However, there are three issues. First, this feed type is not suitable food for fries on the first week after hatching. Second, most formulations is targeted for omnivorous (plants and animal diet) fish types. Third, leftover food, if not removed will contaminate the aquarium water and incur frequent water changes.

What is the criteria of perfect diet for fish then? There are five: (1) Water pollution, (2) Supply metabolic needs, (3) Reduce maintenance cost, (4) Improve nutrient digestibility, and (5) Maintain coloration. In other words, a mix of both live and formulated feed.

This Week I Learned 2019 - Week 03

Last week post or something else instead.

What else I learned this week in separate posts? The third week of ornamental fish culture MOOC on quality characteristics determination on GoldfishKoi and DiscusAngelfish and schooling fish. Continue with literature review on paper of feeding frequency effects on Betta fish growth and fecundity. The week was concluded with a review of MP3::Daemon Perl's module.

What is the best written comment I've read this year? Motivation and willpower is not sustainable compare to just chop wood and carry water. Just do things (as quoted below), one step (or 5 minutes) at a time. However, do check for any health issues. Be kind to yourself. Move, sleep, and eat well.
One day, you will be dead. Each year that passes after your death, fewer and fewer people will remember who you were, what you did or what your face looked like. Eventually, you'll be completely forgotten. Who cares if that side project you put out sucked or not. Might as well put it out there and see what people think. There's a good chance too that the project won't even be remembered even by the time you die.
The best way to get experience is to do things, so given that no one is going to remember, might as well try to do it. Your successes won't be remembered along with your failures.
Should you dump unwanted pet fish into the river? Definitely no. The Amazon sailfin catfish (also known locally as DBKL fish), which is not an indigenous species, have invade our local rivers, ponds, or lakes. The bigger issue is that most people don't know or don't want to euthanize (humanely dispose) of unwanted pet fishes but revert to aquarium dumping instead. Perhaps, sell back these fishes to fish stores or donate to other hobbyist. If all these fail, just use Clove oil.

How does fish farm in SG looks like? Let Ah Hua tells you.



How to breed shrimp? The most important lesson from the video is not about breeding shrimp, but understanding water parameters and maintaining good water quality. Rare we stumbled upon good video in YouTube on breeding fish.



Is luck real? Not really, is only one of many external factors in life as in what they say, "lucks favour the prepared mind". Choose personal empowerment (focus on who you are, choose your own race, and love what you do). Accept those ideas that growth you and reject those which drag you down.

How do you organize everything you want to do? Regardless what system you've implemented, the system should be simple and easy for constant repeated review. Complex system discourage usage and reviewing. Without reviewing, there will be no awareness on the progress on your to-do list, hence stagnance of what you've planned to do.

If not SICP, then what? Maybe HTDP? (via HN) The endless argument on why SICP is not the right entry material for those who want to venture into computer science or software engineering and HTDP is probably a better choice instead.

Perl Module(s) Of The Week - 2019 Week 03 - MP3::Daemon

They said, old habits dies hard, especially if you're coming from console background. The tendency of trying to do everything at the console is hard to break. Console programs in *nix worlds tends to follow the Unix philosophy of do one thing and do it well, work well with other programs, and exchange data using text stream. The Perl module of this week, MP3::Daemon, a text front end to mpg123, was designed to follow such philosophy. For example, play part of a MP3 file repeatedly.
while true ; do mp3 j 1300 ; sleep 386 ; done

Installation and quick run of the program.
$ cpanm MP3::Daemon
$ mp3

Trying to run one of the command and we encountered these error messages. Note that this program was first written in 2001, 18 years ago, maybe there was some bugs or maybe it was due to my local installation. Furthermore, following recent naming convention, the module should have been named `App::MP3`. However, looking and reading old code will give you some insights on writing Perl code without resorting to external modules but focus on just basic Perl code. Nevertheless, we try to resolve these two issues.
 $ mp3 ls
Subroutine main::pod2usage redefined at (eval 16) line 1.
 main::BEGIN() called at (eval 16) line 1
 eval {...} called at (eval 16) line 1
 eval 'use Pod::Usage' called at /home/foobar/perl5/bin/mp3 line 8
No such file or directory at /home/foobar/perl5/lib/perl5/MP3/Daemon.pm line 84.

We first look into the `No such file or directory` error. Looking through the source code at line 84, educated guess that `mpg123` program (the program was name after the MPEG layer 1/2/3 format) have not been installed. Installed the console app will remove the error message.
$ sudo apt install mpg321

If you cannot access the source code, you can jump to the particular line using `less`. The `+84` option will jump to line 84 and `-N` will show line numbers.
$ less +84 -N /home/foobar/perl5/lib/perl5/MP3/Daemon.pm

For second issue on subroutine redefined error. Looking through the source code as shown below. In Perl, without using external modules, we use `eval` for exception handling. The code checks for `Pod::Usage` availability, if not found, set the error message to `[email protected]`, the eval error variable.
eval "use Pod::Usage";
if ([email protected]) {
    sub pod2usage { system("perldoc mp3"); exit 1 }
}

To resolve this issue, first we need to enable `diagnostics` module to give us hints on what and how to resolve this warning. Add this line to the `mp3` executable script.
use diagnostics -verbose;

Run this program again. We will obtain full verbose details on the warning and how to resolve it.
DESCRIPTION OF DIAGNOSTICS
    These messages are classified as follows (listed in increasing order of
    desperation):
    
        (W) A warning (optional).
        (D) A deprecation (enabled by default).
        (S) A severe warning (enabled by default).
        (F) A fatal error (trappable).
        (P) An internal error you should never see (trappable).
        (X) A very fatal error (nontrappable).
        (A) An alien error message (not generated by Perl).
    
    The majority of messages from the first three classifications above
    (W, D & S) can be controlled using the warnings pragma.
    
    If a message can be controlled by the warnings pragma, its warning
    category is included with the classification letter in the description
    below.  E.g. (W closed) means a warning in the closed category.
    
    Severe warnings are always enabled, unless they are explicitly disabled
    with the warnings pragma or the -X switch.
    
    Trappable errors may be trapped using the eval operator.  See
    "eval" in perlfunc.  In almost all cases, warnings may be selectively
    disabled or promoted to fatal errors using the warnings pragma.
    See warnings.
    

Subroutine main::pod2usage redefined at (eval 17) line 1.
 main::BEGIN() called at (eval 17) line 1
 eval {...} called at (eval 17) line 1
 eval 'use Pod::Usage' called at /home/foobar/perl5/bin/mp3 line 9 (#1)
    (W redefine) You redefined a subroutine.  To suppress this warning, say
    
        {
            no warnings 'redefine';
            eval "sub name { ... }";
        }

Made changes to the program as follow and the warning should be disabled.
  8 eval "use Pod::Usage";
  9 if ([email protected]) {
 10     {
 11         no warnings 'redefine';
 12         eval qq/sub pod2usage { system("perldoc mp3"); exit 1 };/                                          
 13     }
 14 }




Research Paper to Read: (2004) Effect of feeding frequency on growth and fecundity in an ornamental fish, Betta splendens (Regan)

Source: ResearchGate.

Takeaways
(1) Two meals per day is the optimum frequency for growth, gonad (a testis or ovary) development, and fecundity (fertility on producing eggs).
(2) Don't overfed (three times per day) your female Bettas as it will increase it's mortality rate and reduce eggs production.
(3) 14 days is sufficient enough for subsequent spawn for a female Betta.

Why this paper?
One of the question when rearing and breeding Betta splendens is how frequent we should feed the fish to achieve optimum growth and speed up breeding. There are many inconsistent advice given by different breeders on the number of times the fish should be fed. Nevertheless, going through scientific literature will give us a baseline to feed our fishes at the optimum level without unnecessary food waste. However, this does not discounts the vast years of experience of master breeders as typical scientific research was done once compare to years of multiple trials and errors of some breeders.

Material and Methods
This experiment includes 375 juveniles Betta of 30 days old with weight of 0.045±0.01 g and lenght of 14.43±2.2 mm (not sure full length of just body only). The fishes were grouped into 15 groups of 25 each with three sets of each feeding frequency as shown below:

(1) One meal in three days (at 6:00).
(2) One meal in two days (at 6:00).
(3) One meal in one day (at 6:00).
(4) Two meals a day (6:00, 18:00).
(5) Three meals a day (6:00, 12:00, 18:00).

Breeding conditions for 77 days, roughly 2.5 months.

(1) 110-l circular cement cistern with measurement of 53.34 x 45.72 cm (the rounded container typically used by Thai Betta farm).
(2) 50l unchlorinated well fresh water. Tank were drained bi-weekly (didn't mentioned how much water)
(3) Temperature averaged 28±1C,
(4) pH 7.8±0.05.
(5) Water hardness 316±15 mg CaCO3/l, ammonia 1.01±0.12 mg/l and DO 4.04 ppm.
(6) Fresh minced beef liver (protein 35.44%, fat 3.86%, ash, 13.91%, and nitrogen free extract 46.79%)

Calculation of each type of measurements as follows:

(1) Growth. Calculation initial dry weight using electrical monopan balance. Five fishes were sacrificed (not sure how). Weight is determined every 14 days.
(2) Gonad. Calculation initial gonad weight using electrical monopan balance and gonadosomatic index (GSI). Three female fishes sacrificed (not sure how) every 14 days.
(3) Spawning. Upon attaining sexual maturity (did not mention when), two pairs of male and females where selected to spawn in a plastic container with water depth of 15cm. Eggs (hatched or unhatched) counted using sterilized needle.

Results
While the growth rate was expected for those with higher frequency feeding, there was no significant differences between two meals and three meals per day. Interestingly result of spawning size. As the result below shown, if the female Betta was overfeed (three meals per day), the eggs production will decrease. We're quite surprised that second and third spawn yields even more eggs after every 14 days.



Discussion
It seemed what we did with our breeding project was significantly not helpful to our female Bettas. To increase eggs productions, we've fed both male and female Bettas four meals per day. The result have shown that overfed actually decreased the eggs production and can cause bloating and dropsy. We've observed some of our female Bettas experienced such symptoms after mating.

Further Questions
(1) The paper did not address the impact of different meal plans for juveniles fish from 1st till 30th day. It only accounts for fish starting for 30 days old.
(2) Why not jar each juveniles fish and measure its growth, gonad development, and fecundity individually in separate container instead of one large 110-l circular cement cistern.
(3) To prevent bloating, some breeders skip Sunday meal so that the fish can fast to clear out all its waste. Will this have any significant differences to the result for those 3 meals per day?

UMT MOOC: Ornamental Fish Culture - Topic 3: Quality Characteristic Determination - Angelfish & Schooling Fish

Continue from previous post.

Discussion on quality characteristics for Angelfish and Schooling fish.

Angelfish. If you're are a beginner aquarist, there is nothing wrong to start with Angelfish or also known as Pterophyllum. Buy juvenile fishes as it's cheaper and they grow very fast. Furthermore, Angelfish is a good addition to your community tank.

On standard, there is one, a conformation (shape or structure) standard of Angelfish by the The Angelfish Society for hobbyists and breeders. The quality characteristics includes (1) Bodies, where round and slightly higher is preferred, no bump in head, appropriate eye to body ratio (2) Un-paired fins, regardless the length, needs to be straight, (3) Colours and patterns, stripes should run through the whole height of the body, (4) Size, bigger is better, (5) Deportment (behaviour), bold, alert, and active is a sign of good health.

For a list of different strains of Angelfish, see the video below.


Schooling fish, a group of fish that stay and swim together. Typical ornamental fishes are Tetra, Barb, Rasbora, and Minnow. As these species are rather on the smaller size, for example, Tetra, there isn't much individual aesthetic characteristics besides the usual sharp colours and symmetry body shapes and fins.

UMT MOOC: Ornamental Fish Culture - Topic 3: Quality Characteristic Determination - Koi & Discus

Continue from previous post.

This post will delve into the acceptable standards for quality Koi and Discus fish. As I mentioned in my previous posts before, the beauty is in the eye of the beholder. If you're a hobbyist, the first question you should ask yourself. Do you like the fish? Are you excited? If so, regardless the standards, go for what you like. A fish personalities or deportments is hard to gauge and subjective by person to person. Nevertheless, let's continue with our discussions.

Koi fish. Due to enormous varieties and rivalry between breeders around the world, it's quite hard to finalize on which is the best koi. However, there are some guidelines on quality koi which can be summarized into four characteristics: (1) Size where shape, volumes as well as fins are symmetry,  (2) Colours should be deep, intense, and uniform, (3) Patterns should be uniform, scale should be sharp, and not dirty marks, and (4) Presence as in personality and vitality.

The video below should gives us some clues on top notch quality Koi.


Discus fish or I like to call it pancake fish. It seemed we still don't have a good published standard even though there were many competitions held? The general consensus rules for good quality Discus are: (1) Overall impression, the wow factor. (2) Size of the fish on its proportion, the body shape is round and high, (2) Fins are long and extended, symmetry, and good proportion to the body (3) Colours are vivid and unique clear pattern and (4) Eyes size and colour as well as the proportion to the body size, and (4) Swimming pattern is steady. Below is the video on how juries judge Discus fish.


Examples are the show grade Discus at 2nd European Discus Championship as shown in video below.





UMT MOOC: Ornamental Fish Culture - Topic 3: Quality Characteristic Determination - Goldfish

Continue from previous post.

As mentioned in previous post, standard for any fish species serves two main purposes. First, it's used as guidelines for any competitions. Second, it guides breeder to select the best pair of fishes with desired characteristics for breeding project. For Goldfish, there exists three competing or complementary standards (there should be more from China and Japan):

(1) American Goldfish Association (AGA) Goldfish Standards, Revised 2009.
(2) Nationwide Goldfish Societies UK, Revised 2016.
(3) Federation of British Aquatic Societies (FBAS), Eleventh Edition, 2002.

Something about breeders, competitions, and standards. Breeders are the most passionate type of people around and there are always conflicts and politics on standards. Case in point, the incident that leads to the two standards existed in UK.

To identify good quality Goldfish, first we need to understand the anatomy of this species as shown in picture below (Source: AGA Goldfish Standards, 2009). First morphology is different from species, Goldfish is definitely have more mutations than other ornamental fishes. The Goldfish varieties is determined by three characteristics of existence of dorsal fin, tail type, and special growth.


According to Nationwide Goldfish Societies UK's judging standard, points are given based on these five categories of body, colour, finnage, special characteristics, and condition and deportment. The last category (deportment) required special training from breeder, where how the fish swim and react to external stimuli. 

UMT MOOC: Ornamental Fish Culture - Topic 3: Quality Characteristic Determination

For a hobbyist and consumer, understanding this topic enables you, being an educated consumer to to get your money worth by buying good quality ornamental fishes. For a breeder, knowing what quality characteristics is essential to follow the breeding standard and select the right pair of fishes for your next generation breeding projects.

Evaluation of a good quality fish is based on three main criterias: body shape, colour pattern, and fins. Although there is saying of "Beauty is in the eye of the beholder", judging standards do exists to set the baseline of identifying and judging aesthetic characteristics of any ornamental fishes in competition. For example, characteristics of show grade Betta fish (Betta Splendens) has been standardize by governing standards of International Betta Congress (IBC).

What do we look for for good quality fish? First, analysis of the unique form and structure or morphology of fishes. These includes (1) Balancing in term of colours, fins, and scale, and (2) Ratio in terms of fins, scale, and body. Secondly, unique swimming pattern. For example, Betta fish fins flaring when defending its territory. To understand this, we need to learn and identify each part of the external anatomy of a fish shown below. (Source: Wikipedia)


These numbers in the picture above are: (1) Operculum (gill cover), (2) Lateral line, (3) Dorsal fin, (4) Adipose fin, (5) Caudal peduncle, (6) Caudal fin, (7) Anal fin, (8) Photophores, (9) Pelvic fins (paired), and (10) Pectoral fins (paired). Not all fishes share the same anatomy. Diversity in fish morphology is due to adaption of its environment or selective breeding. For example, Ranchu (a type of Goldfish) does not have dorsal fin.

How can we develop good "taste" for quality aesthetic fish? Nothing but keen observation and practice. For a start, if you're around any aquarium shops or fish market, try to name each part of the fish anatomy. See if you can name them all. Next, go to any competitions or look for any show grade fishes, compare with the judging guidelines and learn to grade each fish.

This Week I Learned 2019 - Week 02

Last week post or going back for old stuff instead.

What else I learned this week in separate posts? First, continue with ornamental fish culture through MOOC on body profiles and spawning behaviours, famous species, primitive or Jurassic fishes, and Goldfish. Second, the literature review of the paper on minimal water volume for intensively producing male Siamese fighting fish. And lastly, Module::CoreList is our Perl Module(s) of the Week (plMOTW).

How Photography Is Affecting Our Brains? Due to distance, camera angle, and distortion, taking selfie (around 1 foot) makes your nasal base seemed 30% larger compare to selfie taken at 5 feets away. How about normal photos? While photos can be a good memory preservation, taking and sharing photos for social medias will lead to "self presentational concern or anxiety". Instead of engaging current moment while photographing, you're being distracted. If you still need to share and want to fully enjoy the moment, delay sharing instantly just like the old way of photographing. The professional and amateur photographer comparison test was predictable. Professional composes while amateur looks. Technology advancement changed how we take photos. We don't look and feel the subject but instead through the screen of our equipment instead.

"理解只是使誤解的偏差小了一點?" 看了几遍都不明白,读了评语后,才逐渐了解。

Is it possible to produce 100 grams of garbage each month? Yes, to live with a zero-waste life, you and your partner in crime need to be discipline, have access to cheap locally produced natural food, and living away from busy city.

Why you should join the analog social media? Part of the digital minimalism movement. Just use digital and Internet for essential tasks (works, writing, calendar, map, and others). Join a photowalk walk and have a good discussion on photography, life, or event itself. No need to upload, post, and share the photos.

Perl Module(s) Of The Week - 2019 Week 02 - Module::CoreList

One of the issue when using Perl is the abundant list of Perl's modules. Finding the right modules can be overwhelming and sometimes frustrating. Duplicating, deprecating, or abandon modules is typical situation for a programming language which is 31 years old. Hence, which recommended Perl's module should you uses then? Start with the modules that came default with the Perl installation, the core list. How? By using the Module::CoreList module.

Installation and quick check of the module.
$ cpanm Module::CoreList
$ perl -e 'use Module::CoreList'

Now, let's write some code (`ex1.pl`) to list out all the core modules that came with Perl 5.29.6.
use strict;
use warnings;
use feature qw|say|;

use Module::CoreList;

say $_ foreach sort @{[Module::CoreList->find_modules(qr/.*/i, 5.029006)]};

Running the code and show the first ten results.
$ perl ex1.pl | head
Amiga::ARexx
Amiga::Exec
AnyDBM_File
App::Cpan
App::Prove
App::Prove::State
App::Prove::State::Result
App::Prove::State::Result::Test
Archive::Tar
Archive::Tar::Constant

So far so good. But do we need to write some code in order to make any query? No, there is a console utility, corelist that will do that. For corresponding command almost similar to our Perl's code before this.
$ corelist -v 5.29.6 | head

The following modules were in perl 5.29.6 CORE
Amiga::ARexx                                 0.04
Amiga::Exec                                  0.02
AnyDBM_File                                  1.01
App::Cpan                                    1.671
App::Prove                                   3.42
App::Prove::State                            3.42
App::Prove::State::Result                    3.42
App::Prove::State::Result::Test              3.42

Now some code reading. What interesting stuff can we learn from reading the source code of Module::CoreList?

(1) All the data, for example, Perl's version, starting from Perl 5 was hard-coded as large hash (see the `%released` hash).

(2) To prevent duplication, the changes (see `delta_from`, `changed`, and `removed` hash) of modules for each Perl version were stored as delta hash (see `%delta` hash).

(3) These use of `@_` pass through from one subroutine to another subroutine as shown below. See the `first_release_raw` subroutine.
sub a { say @_; }
sub b { &a; }
sub c { &a(); }
sub d { a(@_); }
sub e { &a(@_); }

b 1, 2, 3; # 123
c 1, 2, 3; # nothing is printed
d 1, 2, 3; # 123
e 1, 2, 3; # 123

(4) The END block is not a subroutine but a block of code that executed after all codes have been ran and before the Perl interpreter exited.

How about source code from corelist?

(1) *nix piping in Perl. See the example below.
    my @bundles =  map { $_->[0] }
                  sort { $b->[1] <=> $a->[1] }
                   map { [$_, numify_version($_)] }
                  grep { not /[^0-9.]/ }
                  keys %feature::feature_bundle;

Research Paper to Read: (2018) Minimal water volume for intensively producing male Siamese fighting fish (Betta splendens Regan, 1910)

Source: Research Gate.

Takeaways
(1) 150 mL water volume within 2 - 9 cm depth should be the minimum and optimum water volume to rear individual male Siamese fighting fish.
(2) Jar the fish when it reaches 1.5 months old (6 weeks) and sell it at 4 months old (16 weeks).

Why this paper?
Betta fish (B. splendens) is an aggressive and territorial tropical fish. To defend its territories, a Betta fish will flare its gill and spread its fins. Furthermore, it will bite its intruder. Therefore, upon reaching adulthood, the male Betta will need to be separated and jarred into separate and smaller container. However, a Betta fish spawn, on average, contains few hundreds of fries. Hence, to fully utilize available spaces and giving the Betta fish the optimum growing environment, what is the minimum water volume or container size that can achieve this? Our observation is most breeders will use several cost saving ways to jar individual male Betta fish. These consists of using recycle mineral water bottle, thin glass alcohol bottle, or drinking plastic bags.

Material and Methods
This is a randomized design experiment of 5 water treatments and 15 replicates. First, one-month old solid-red male Siamese fighting fishes were purchased and individually acclimatized in cylindrical plastic breakers (7.5cm diameter x 12.5cm height) of water volume of 250mL for 2 weeks (not sure why?). Then, 15 fishes (n = 15) of similar size (0.97 ± 0.01 g initial body weight)were evenly and individually distributed into 5 water volumes of 100, 150, 200, 250, and 300 mL glass aquaria (3.5cm width x 8cm length x 20cm height).

Breeding conditions for 8 weeks or 2 months as follows:
(1) Commercial floating pellets (10% moisture,  46% crude protein, 6% crude lipid, 5% crude,
fiber, and 12% crude ash).
(2) Feeding done twice daily (08:00h and 17:00h) at 2% of body weight.
(3) Photoperiod of 12h (light) : 12h (dark)
(4) Uneaten excess diet were siphoned after 30 minutes after feeding.
(5) 80% water changes with dechlorinated stock water within 3 consecutive days.

Since it's too long and quite complicated (I don't really understand it), I skipped the part on what measurements and tools used.

Results
Only the results for water quality and overall growth were discussed here.

Since leftover food were siphoned, the only contributing factor to water quality is the ammonia level due to excreted water by the fish. The lower the water volume, the higher concentration of ammonia level and lower pH level as shown in table below for water volume of 100mL.


Large water volume (300 mL) will lead to bigger fish growth (standard length) and at the same time, allows more space for increase movement (like bubble nest making) within the container, and thus, low weight gain.


Discussion
How big is 150mL? The video below will give you some idea. Should you use this minimum water volume for optimum growth? Depends. If you have large quantity of fishes, limited spaces, and plenty of time for water changes, then this should be the right option. If not, use the largest water volume possible so less than frequent water changes. When breeding and rearing Betta fishes, water changes is the only task that consumes most of your time.



Further Questions
(1) Will plastic bottle instead of glass aquaria have any significant effects on the experiment?
(2) When do we start to jar the male Betta fish? Is it 1.5 month of age when it starts to show aggression behaviour or when it reaches certain size of 2.5cm?
(3) Will there any significant changes if the water were treated with Indian Almond leaves?
(4) Is there any significant impact to the result if these fishes were fed with live food sources?
(5) Large water volume means less frequent water change. Is there any impacts on frequency of water change to the result?

UMT MOOC: Ornamental Fish Culture - Topic 2: Biology of Ornamental Fish - Goldfish

Continue from previous post and the last series of topic 2 installment.

The Goldfish is one of the most common fishes kept as pet. There are so many species and varieties, which one should you pick? Personal recommendation is go for Shubunkins.

Goldfish Species
Ryukin. Key characteristic is a hump in the shoulder area (top).


Liaohead. Key characteristic is large hood or "wen" but without dorsal fins as compare to Oranda.


Oranda. Key characteristic is bubble-like hood called "wen" that needs trimming if needed.


Celestial Eye. Key characteristic is telescope eyes that turned upwards. I'm not sure we've seen this in any aquarium stores. I'm not sure why this deformation and popularized.



Shubunkin. Key characteristic is single-tailed and pattern known as "calico". Due to its similarity to Koi fish, people may mistaken it for Koi. If you like to keep Goldfish as pet, this species would be a better choice. At least, the species looks like a normal fish instead of mutated bloated fish.


Pompon. Key characteristic is it has nascal outgrowth, similar to Lionhead or Oranda. Unfortunately, we never see one before in any aquarium shops. Perhaps we miss it.


Bubble eye. Key characteristic is two large fluid-filled sacs. Similar eyes to Celestial Eye but with large sacs. We're wondering why this Goldfish ever been popular in the first place. For us, this is a worst deformation and such species shouldn't been breed in the first place.


UMT MOOC: Ornamental Fish Culture - Topic 2: Biology of Ornamental Fish - Primitive/Jurassic Fishes

Continue from previous post.

Below are the list of ornamental fish which have primitive or jurassic looks.

Arowana. These sought after species which are found in local aquarium shops are typical from the species of Asian Arowana. Arowana in general are surface feeder, aggressive, mouth breeders, and excellent jumper.



Arapaima. Considered the largest tropical fish in Amazon river. Similar to Arowana but much bigger and uglier. Definitely have the primitive or jurassic looks and aggressiveness. We have been to quite a few aquarium shops but can't recall we've seen any of this species.



Peter’s Elephantnose. One of the weirdest looking fish, looking like an angry penguin. We only saw this once in the aquarium shop, can't recall which shop. Some hobbyist put this together with Arowana just to "spice up" the tank.


Butterflyfish. This is referring to African Butterflyfish, Pantodon buchholzi. As the name implies, the fish have a pair of butterfly-like fins even though it's quite ugly. Never seen this in any local fish stores.


Knife fish. Body shaped like knife and I remembered I even caught one when I was young. The local aquarium shops carry a few species like Black and Clown. If you like fish with odd shape, then this should be your choice.


Gar. Like a thinner version of Araipaima and the fish version of aligator. Not sure we have seen this here locally.


Bichir. Looks like a dragon or reptile in the water. We're not sure why this fish was ever considered as pet? Saw quite a few before but not really appealing as the boring brownish colour and less majestic compare to other fishes.


Sturgeon. The species we're discussing here is Acipenser. This is probably the most mean looking predator fish of the list. Is like the fish is wearing an armor. Never see this in any aquarium shops here.


Paddlefish. Another fish that should be in pond instead of aquarium. Looks like a paddle stuck to the front of the fish. Definitely looks like a primitive fish.


Lungfish. A fish that can hibernate for a few years. Not sure this is a suitable aquarium fish.


UMT MOOC: Ornamental Fish Culture - Topic 2: Biology of Ornamental Fish - Famous Species

Continue from previous post.

Famous Species
These are common ornamental fishes found in most large aquarium shops. Not all aquarium shops (these are really just pet shop) will carry these fishes.

(1) The Tetra. One of the most popular fish in aquarium shop. Small size with bright colours, predominately red. The Neon Tetra and Cardinal Tetra are the popular beginner fish for those who are ventures into aquascape. Also, a good fish to put into the community tank. As Tetra is egg-scatter, it's easy to breed a large spawn of Tetras. Hence, most of these fishes were sold at around MYR1 till MYR2. We have kept a few for our self for quite a few months before the outbreak of the tank due to lack of maintenance.


(2) The Barbs. Body size is larger than Tetra. The species is aggressive, active, and fast swimmer. If you like to observer a a group of fast swimming fish during feeding time, the Barb is the right fish for your. Colour-wise, mostly gold and silver with some black and red highlight. Similarly, is a egg-scatter, hence prices for Barbs are roughly less than MYR10, depends on species. We have a few Rosy Barb before but need to feed it well to retain the colour and not really a good fish for community tank.


(3) The Catfish. Not what we consider as pretty and colourful fish. Mostly are blackish and brownish in colour. Larger one are treated as good protein food source. Interesting aspect of this type of fish is it has no scale with bony plates and barbells. As these are bottom feeder, most fishkeeper put a few smaller size Catfish such as Corydoras to clean up the aquarium. The local here like to call it DBKL (our local city hall which involved with clean up with city). Price wise, roughly less than MYR15. We've a few before but I can't remember the exact species we have.


Loaches. Bottom feeder, active, and fast swimmer. Not a popular fish in local aquarium shops, only saw a few Clown Loaches.


Livebearers. As the name suggested, these fishes carry its fry within the body. Mostly are Guppies, Mollies, Platies, and Swordtails. Another common and cheap pricing fishes in aquarium shop. Guppies are way more popular compares to other livebearers. We have all these before but not really our type of fishes. Except maybe Guppies, the others are surely lacking in aesthetic, from our point of view.


The Cichlids. These includes Angel, Discus, Parrots, Ramirezi, and Cichlids (African Cichlids). The last one is aggressive and not a good tank mates. We always mistaken African Cichlids as saltwater fishes instead due to it similarity in term of colours. These are mouth-breeder, which you can't get a big spawn. Hence, pricing is higher compare to other fishes.


The Labyrinth. Basically an air-breathing fishes. Immersely popular fishes in every aquarium shop. You will surely find at least one species, especially Betta (Siamese Fighting Fish) and Gourami (Dwarf Gourami). Pricing wise, Gourami (less than MYR2) is way cheaper than Betta (MYR 3 till MYR 70). We have quite a few of these in our community tank. Have to be quite careful not to overfeed as a few succumbed to Dropsy.


Crayfish. This is just large freshwater shrimp. Saw quite a few aquarium shops carried this type of fishes. Invasive species and not supposed to be throw into your local rivers. Depending on size, not a good tank mates for other fishes. We were thinking about adding a few crayfishes (as our bottom feeder) to our community tank but gave up that idea as this can be easily replaced by Ghost Shrimp, which was way way cheaper.

UMT MOOC: Ornamental Fish Culture - Topic 2: Biology of Ornamental Fish - Body Profiles and Spawning Behaviours

The main purpose of the topic is the categorization of ornamental fish based on its biological aspect in term of body profile and fish spawning behaviour.

Body Profiles
(1) Normal shape.
(2) Torpedo shape.
(3) Club shape.
(4) Hatchet shape.
(5) Worm shape.
(6) Disc shape.
(7) Spindle shape.
(8) Boat shape.

Spawning Behaviours
(1) Bubble-nest builder. These type of fishes build a bubble nest using leaves or any floating fragments like plastic bag and artificial nylon line (I believe is those that used for fruit wrapping). The pair of fishes mated and fertilized eggs are collected into the bubble nest. Known species are Betta and Gourami.


(2) Egg-scatterer. Spawning occurred either in pair or in group. Lots of eggs will be produced during mating and female fishes will scatter eggs to substrate, plants, artificial nets, or just float around. Depending of fish types, eggs are either adhesive (sticky and stick to plants) or non-adhesive. Once spawning is done, the parent fishes will not look after the eggs and will eat the eggs if possible. Known species are Danios, Rasbora, Barb, Cyprinus, Tetras, Koi, and Goldfish.


(3) Egg-burier. This species lay eggs in the mud or sand. Hatching can be postponed due to dry season and reactivated back one there is water. In other words, you can buy these eggs and hatch it later. Known species are Pearlfish and Killifish.


(4) Egg-depositor. This species deposits its eggs in quiet and safe places like wood, plants, glass, rocks, PVC pipes, and rubber cones tower. Known species are Angle, Discus, Clownfish, and Damsel fish.


(5) Live-bearer. Breed like mammals where the female fish carried the juvenile fishes in its stomach and give birth when ready. Known species are Swordtail, Molly, Guppy, Platy, Four-eye, and Piketop fish.


(6) Mouth-brooder. The male or female collects fertilized eggs into its mouth for incubation. Known species are Cichlid and Arowana.

This Week I Learned 2019 - Week 01

Happy new year 2019! Another year, another new TWIL post.

For those who miss out the previous post of the series, check out the last TWIL post of previous year or the whole year review. As usual, go through some legacy TWIL posts as well.

What else I learned this week in separate posts? First, ornamental fish culture in terms of overview, industry, popular tropical fish species through our local online MOOC. Second, the literature review of the paper on the effect of salinity and diet on Betta fish growth and survival. And lastly, the start of Perl Module(s) of the Week (plMOTW) series which we review the Data::Money Perl's module.

What is a mental model? According to Wikipedia, mental model "is an explanation of someone's thought process about how something works in the real world." In other words, a mental model is a systematic thought process that helps you to make better decisions. There are several list of mental model catalogues, Gabriel Weinberg's list (for Anki as well), Kent Beck's list, Slava Akhmechet's list, and Farnam Street's list. Similarly, there are cognitive tricks or  "brain hacks" that you can use on daily basis to manage your life. Contrary, the discussion on these "brain hack" is more philosophical rather than systematic to approach any issues. Nevertheless, good mental exercises for anyone, especially those on writing which I should adhere strictly. This reminded me of a research on when is the best time to write.

What is the morning writing effect? (via HN) Discussion and research on what is the best optimum hours to write. Not surprising, morning is the preferable schedule but because for those who were interviewed, they worked as a full time writer or writing is a major part of their works. Hence starting to work or write in the morning is obviously answer. Discussion at Reddit seemed to have different opinions. For those who have a day job and write casually, night time is the most suitable hours, where everything have slow and quiet down. The discussion on best hours to write relates to our sleep hours and quality.

What is circadian rhythms? It's our internal biological clock responses corresponding to external environment factors like light, temperature, and others. Your health and productivity will be affected if there are any disturbances in your circadian rhythm, for examples, jet lag or blue LEDs light (mobile phone or PC) which affects our sleep (secretion of melatonin hormone which regulates circadian rhythms) leading to drowsiness. To achieve good health and improve our quality of life, not only we need to eat well and exercise adequately, we also need to sleep satisfactory. Does fishes have circadian rhythms? Not really but there was a research suggesting that fishes may have.