JENS MALMGREN I create, that is my hobby.


This week, I got sick; a day later, I discovered that two of our sheep also got sick. They had got the bluetongue sickness.

Monday 2 October

Today, I worked from home. It was the second week I worked from home on Mondays. DW went to the office by public transport. At some point, I thought it was pretty lonely to work alone at home. That such a thought would come to me was even a surprise.

When DW came home, we let Merida play outside in the vegetable garden. Up until now, she has been scared to be outside. Today, it was not that windy, which she likes. She hunted for insects. At least, that is what I think. She jumped around in the tall grass. I said to DW that it looked like she was having fun. O dear, I was right! It was a little daunting when it was time to get her in. Usually, I would suggest it was time to get in, and whoops, in she went. This time, she almost played catch and seek with me. I went inside and gave her more to eat, which was a successful strategy. I closed the door.

A few moments later, she finished eating and wanted to continue playing outside. The door was shut. She was not amused and started complaining loudly, which lasted for twenty minutes. We had dinner, and she continued almost the whole dinner. Just before we were finished, she stopped complaining. Poor girl. We will let her out tomorrow again.

Tuesday 3 October

I promised myself to write about emotions, but in retrospect, I often think about missed opportunities for things to write about. I was in a good mood and ahead of things Monday evening, but something was lurking in my throat. It has been there since Saturday, but I did not say anything about it in last week's blog. Tuesday morning, I had a dark voice. Funny, I know, but it is often a sign of bad times to come. DW asked me if I would work from the office; perhaps working from home was an option? No, it was not an option. We made no such agreements at work.

I went to work, did what I had to, and had a great day, but I was not feeling well. DW worked from home, and she had no problems. At work, I had colleagues who were concerned about the bluetongue disease. They heard that a couple of cases have been found in our region.

After work, I came home, and I went to bed.

Wednesday 4 October

In the morning, I slept. I had forgotten that the carpenter would come today and install the remaining cupboard above the freezer and fridge. He needed a hand to put the thing in place.

When the carpenter left, I continued to sleep. A good sleep is so lovely.

In the evening, I sat at my computer for a while. Lying down in bed all the time is not okay after a while. I get backache and all sorts of aches by sleeping too much. I had a great time at the computer and finished the graphical part of my first visualization program. Finished is perhaps not the correct wording, but it was looking great! The result has the aspiration of being an art project. Who knows. There was an issue with the program that still bothered me. At times, the FFT still got hanging.

After a "short stay" at the desk, I went to bed again and slept the entire night. How is it possible?

Thursday 5 October

This morning, I went to the sheep to look at them. Hannah and Selma had swollen lips. Bea was fine. I told DW about my findings and then went to bed again. After a couple of hours, DW called the veterinarian. They came right away and concluded that our sheep got the bluetongue disease. All but Bea. We got painkillers for the sheep, and that is it for now.

I could sleep very well on Thursday, so I was utterly awake late afternoon with a backache. I had fewer on and off. What should I do? I had a look at the issue with the microphone program, obviously. I was able to make the program more snappy and improve the coloring, but I could not get rid of the hanging phenomenon.

When it was bedtime, I went to bed, and I think I slept for two hours, but then I could not sleep anymore. I stood up and worked on the microphone program until the morning.

Friday 6 October

Then I fell asleep again. DW had already commanded me not to go to work this Friday, but she had not to be worried. I was devastated; I slept the morning. At noon, I finally woke up and concluded it was about time to do something other than sleep. It was already a pretty useless week like this.

I gave our two patients their jabs for the first time. The excitement of giving two injections made my heart pump like crazy. I joked with DW that I had such a big heart that I was rocking when it was pumping heavily. She did not find it funny at all.

Luckily, I could sit down and have a go at improving the microphone program. It did not go my way. I pretty much butchered the entire source code. I ported everything of the FFTSharp library into my source code. The original code used Complex values from the official C sharp Math modules. The thing with those is that a Complex value is immutable, meaning that the FFT processing consumed large amounts of memory. Someone has to have that memory cleaned occasionally, and it is not me.

I created a new form of Complex numbers you could change as many times as you liked. Recreating the FFT routines from FFTSharp was possible to use this fact. I made it so I had one array of mutable Complex numbers, which was then repurposed throughout. Essentially, the program had no need to clean any memory and became as fast as possible. The colors change to place very fast. It was a delight to see.

There was just one slight problem. The issue with that FFTSharp kept frequencies hanging or freezing that challenge was not solved. I looked at the innermost Fourier algorithm and could not see any issues. Do I understand how the Fourier algorithm works? I do not. There is hocus pocus trickery using Complex numbers and whatnot.

The person who made this algorithm could probably solve it if he cared to read my description of the issue. He is not reading my blog; it appears he is not reading my emails either. What I like so much about the FFTSharp library is that I have a reasonably helpful example program showing how to use it. It feels like FFTSharp is made with a love of math and algorithms. It would have been so easy if it just worked. It is not working, and I have proven the issue is inside FFTSharp. I decided to abandon this library.

I found a sample program using a competitor to FFTSharp, namely NAudio. That is correct; the library reading the microphone can do FFT transformations by itself. So, what is the challenge up until now? I found very few samples of how that should be done. It isn't easy to do something if you do not know how. This new sample program is convoluted, and that is not nice. To make any sense of it, I have to reconstruct the sample into a tiny sample program. It feels like a promising project, though. It was midnight and time to go to bed again when I came so far. The good news is that I am satisfied that I can solve the issue in the future. I might even be able to compare the two methods, and would it not be cool to figure out what is wrong with FFTSharp and tell the creator of it what to improve. We are not there yet, and we will perhaps not get there. We will see. I could sleep very well with this mindset.

Saturday 7 October

Today, the plan was to help neighbors by letting them borrow a part of our scaffold. First, we made a plan together. Figured out the scaffold's shape and how many parts were necessary. When this was done, the neighbors came with their bus and the big trailer I usually call my large trailer. Today, it was our neighbor's trailer. We loaded a lot of stuff on the trailer. Then, the neighbors drove home, and I went to bed around 4 PM; I was tired. I am not entirely healed, so it is no wonder I had to have some sleep. I slept for two hours, and when I woke up, I had no idea where I was and what day it was. It was a strange feeling.

In the evening, I finally had a chance to sit down with my microphone project. When I started programming, I decided to get myself a test sound. When programming the microphone, it is good to have some sound played. My program is made for music but should also work with spoken word, although that is not the intended use. Tonight, I decided to have Paul Beckwith talk to me while programming. I followed Paul for many years now. I even sometimes sent him money for a coffee, which means I am a true fan of his work if you know me.

Tonight, I listened to this YouTube podcast of Paul: He was referring to the latest OECD report on Tipping points. Unfortunately, he did not provide a direct link in the video's description.

Paul is just telling the truth. You cannot get the truth like that from anywhere else on the Internet. What he says is dark and sinister, but almost any word he utters is based on peer-reviewed science. He connects the lines between the science dots to get a bigger picture from his channel than you can get from even the most fancy, glamorous science channels. Why is that? Well, established science channels are sponsored by Big Oil. There you have it.

Without EMOC, Agriculture in Europe would be impossible. Amazon rain forest will also dry out. Fire will wipe out the tropical forests and replace them with savannas.

Paul's dog is named Newton.

September this year had 1.8 degrees Celsius degrees above the turn of the century temperature baseline. By May 2024, we will likely have had one year 1.5 degrees above the baseline. We have five severe tipping points to "fire" at this level. The world is sitting in front of a barrel that will shoot the first five tipping point events at us. Paul is conservative on sea level rise compared to my own personal view. Or perhaps he is more realistic about time frames.

The boreal forests above perma frost regions will burn. These areas will thaw into methane-producing compost slush. The ground will open and fart in our general direction.

The human inability to understand the exponential function is dominated by the inability to understand the delta function.

You can also view tipping points as dominos falling over. NEWTON! He is Newton. He is supposed to be an intelligent dog.

The worst-case scenario is what humanity is heading for. The best-case scenario is that we start acting. I have seen science reports (misplaced the links, though) that many temperature increases can be avoided if we start acting. We can probably not retract that all ice will melt, but we can make the situation more bearable.

This evening, I got the competing algorithm to produce a graph! Here in the screenshot, the competing algorithm is using 16-bit PCM.

I found a flaw in the competing algorithm; it did not handle the magnitude calculation correctly. I made it the same as the FFTSharp version, and now I think they are similar enough. I am sure I can continue to work with the data produced here.

Sunday 8 October

Today, I worked together with my neighbors to set up the scaffolding. We deviated a little from the original plan, so we had to get and fetch a couple more pieces. It was great weather for setting up the scaffold.

We gave the sheep willows to eat because they liked it very much. From time to time, they need to eat to keep the digestion system busy.

Although I started working on this blog on Friday evening, it became an impressive blog.

I was born 1967 in Stockholm, Sweden. I grew up in the small village Vågdalen in north Sweden. 1989 I moved to Umeå to study Computer Science at University of Umeå. 1995 I moved to the Netherlands where I live in Almere not far from Amsterdam.

Here on this site I let you see my creations.

I create, that is my hobby.