Skip to main content


Freedom - full circle


During Covid 19 we are talking a lot about freedom.

For me, freedom exists on an individual and a societal level.

When too many individual people don't get vaccinated, the society has to suffer.

So there is this kind of real-life freedom in the physical world.

But there is another kind of freedom.

Many people don't care about freedom when they use computing devices.

They use WhatsApp, Instagram, Windows, Office365, MacOS and all this other non-freedom stuff.

Walled gardens emerge and no user can escape.

They are customers and/or products.

And these users also force other people to use their non-freedom software because of the chicken or the egg problem.

But I love freedom.

I want to ...run the software where ever I want to run it - this is freedomadd a feature - this is freedomdelete a feature (e.g. spy tools) - this is freedomchange the color of some feature - this is freedomlook under the hood to see how it works - this is freedomsend it to a friend - this is freedom...
This is why I use free(dom) software.
https://miku86.com/2021-12-11/


Deleting WhatsApp - lessons learned


I deleted WhatsApp some months ago.

I just found out, that over these 8 months at least 5 people still sent me messages on WhatsApp.

So what's the deal?

When you delete your WhatsApp account, but people do not delete the chat with you, they can simply continue to message you.

But the messages never get delivered.

Some people recognize this (because there is only one of the two checkmarks), but some do not.

It seems many people never delete chats.

So my lessons learned:
  • when you delete your WhatsApp, send a broadcast to all people that you'll delete it
  • also tell them, that they should delete your chat with them
Hope that helps.
https://miku86.com/2021-12-07/


Time flies


The older I get, the more I perceive time flies by.

Totally lost my publishing habit.

Work - food - nap - sideprojects - gym - sleep.

Publishing just costs me like 5min, but somehow I could not handle it.

Until now.
https://miku86.com/2021-12-04/


What to do next?


What should I do next? A or B or C?

Where do A, B and C come from?

Each time I think about these kind of questions, I end up with thinking about the purpose of (my) life.

This is why I try to think backwards.

I ask myself questions like:
  • What should people say at my funeral?
  • What do I want to be known for?
  • What can I pass on to the next generation of people?
With these (never-ending) answers in mind, I try to work on stuff that leads to fulfilling these answers.
https://miku86.com/2021-11-24/


Cryptos: Intro




How to diff two files


Just wanted to check which packages I've installed on my different Linux devices, so I wrote the package names into a file (pacman -Q > packages.txt).

But how to find the differences?

Use git: git diff --no-index --word-diff a.txt b.txt (a.txt and b.txt are the files you saved the package names in)

Source
https://miku86.com/2021-11-08/


Added old blog posts


I finally added my old blog posts.

I had to use a lot of regex magic to modify the frontmatter of each post (e.g. converting --- to +++), but now it is done, Zola was able to compile each post.

I think some links will be broken, because I changed some internal paths, but I think a not-so-lazy person can help themself.

If you find some broken links, typos or have some feedback, I would love to get your message at: michael@miku86.com
https://miku86.com/2021-11-07/


Software: Free? Open source?


When we talk about software, there are terms like "free", "open source" etc.

What do these terms stand for?

Free software: "Free" stands for freedom. Free software stands for the possibility for users to run, study, change, redistribute, modify the software. Official Definition. So this term does not tell you anything about the monetary price of the software.

Open source software: "Open" stands for open access to source code. If you think about free software's possibility to modify the software, free software practically always needs to be open source, but open source software does not have to be free software. Official Definition
https://miku86.com/free-open-source-software/


Vim love


I love vim.

Although I used vim for some months now, I always did some tasks with vscodium, e.g.:
  • removing leading/trailing characters in multiple lines
  • search and replace
But because opening files in vim is so much faster than in vscodium, especially if I only want to edit one file, I searched for some vim-esque solutions:
  • removing in multiple lines: go into visual block mode (ctrl + v), highlight the correct block, do your thing (e.g. x to remove character)
  • removing in multiple lines: go into visual line mode (shift + v), highlight the correct lines, do your thing in command mode (e.g. :'<,'>norm x)
  • search and replace: go into command mode (:), search in all lines (%), substitute vim with emacs and ask on each occurrency (s/vim/emacs/c)
So as we can see, there are multiple solutions for different problems.

But actually both problems can get destructured into simple steps.

I think this kind of thinking also leads to better problem solving.
https://miku86.com/2021-11-01/


Reimagining Capitalism


I just wanted to grab a copy of this book, because I've read an article about it.

I think most books are time-wasters, because a lot of stuff has already been said, or the author has to create 300 pages ("people want to get something for their money") where 20 or 50 pages also would have been enough.

This is why I just had a quick look over to some reviews.

So I successfully deleted this book from my reading list.
https://miku86.com/2021-10-25/


Hosting in Europe





Analog vs. digital




Easy election


Today we elect a new government in Germany.

This is the easiest vote I've ever made.

This is probably the first time I don't think about myself, but about my children and their children.

It's not about "Oh damn, I want to drive 150 km per hour, but I am only allowed to drive 130 km per hour, this is so mean.".

It is about "Hey grandpa, all of you folks went to university, learned a lot about science and stuff. Why have all of you been these idiots that didn't stop this shitload of environmental pollution and useless, unfulfilling consumerism? I've heard stories that you've had all this knowledge. Have you just been too lazy or too careless?"
https://miku86.com/2021-09-26/


I own my phones




Amish?




Shady?


Sometimes I ask myself, if someone is a bad person, if they work for a company that does some kind of shady things.

Like nudging people to buy stuff they do not need, to watch ads for useless stuff etc.

Are there any companies that do not do shady stuff?

What does "shady" actually mean?

If my neighbor does shady stuff, then am I also allowed to do shady stuff?

Am I even not "clever", if I do not do shady stuff, because everyone is doing it?

Am I guilty of being a part of a shady system?

Should I feel compassion for people who do not game the system (by doing shady stuff and letting society pay for it)?
https://miku86.com/2021-09-21/


Zola for my blog


This blog runs on Zola.

I've chosen it because it's simple and fast.

My old blog was running with TypeScript, React and Gatsby. Not bad, but the build time was very slow, around 3 minutes for 150 posts.

But that wasn't my biggest concern: there was some feature creep and too many updates on the gatsby site.

I had some tests, but they were slow and I didn't feel confident at all that after each week's ~5 updates everything will run again.

That's why I set up this simple blog and to get a better grasp of what is going on under the hood of Rust.

I don't know if this will help my learning, but at least I feel confident, because my workflow goes like this:
  • Copy an old post.
  • Add my new stuff.
  • Deploy (30 seconds of git add, commit, push, wait).

https://miku86.com/2021-09-07/


More Rust


I have a really simple plan for learning Rust:
  • I read a chapter in the Rust Book
  • I do the Rustlings exercises that fit the chapter's content
  • I summarize my learnings in my Rust post
After I will have finished the Rust Book and Rustlings, I will have a look into Rust By Example, Practical Rust and Codewars.

Today I worked on the Rustlings exercise about move, primitives and structs, enums and modules, because I've already read the book chapters until chapter 8.
https://miku86.com/2021-09-06/


Camping


I was on a camping trip for some days.

Camping is awesome.

Removing all this physical clutter and getting back to the basics: shelter, food and nice people.

We slept in a tent and we just lived with the bare minimum food: water, bread, cheese, rice, oats, veggies.

This is also my normal, healthy, 120€-per-month diet at home, so nothing new for me.

But after a hard day of hiking, this simple way of eating feels like heaven.

The first night was very uncomfortable, it was cold as hell.

That's why my first night back at home felt very cosy, in my nice, comfortable bed.

And my first meal back at home felt like eating out in a restaurant.

I think about most of my life in a relative perspective - I measure against other situations and events.

I think I need this kind of grounding to not lose my mind.
https://miku86.com/2021-09-05/


Projects: serial or parallel?


Because I've finished the udacity course the other day, I'm now focused on learning Rust.

I'm into serializing project, there is a great podcast about it.

It's highly unlikely, that I like all my projects the same.

If I do them in parallel, I start giving all of them some time, but after some days and weeks, I lean towards fun, joy and convenience and mostly quit the not-so-enjoyable projects.

They sit around in the drawer and I feel bad about myself.

I am allowed to quit a project, but I don't allow myself to juggle between the projects.

The decision has to be conscious. Yes or No. No "when I feel like it.".
https://miku86.com/2021-09-01/


About Abstraction


When code evolves


We start out with a tiny function that doesn't do that much (pseudo code):
function download_from_aws (from, to) {
  do_something();
  result = aws_client.download(from);
  parsed_result = parse(result);
  filesystem.write_to_disk(parsed_result, to);
}

So azure enters the room.

Time to DRY?
function download_from_cloud (from, to, provider) {
  do_something();

  switch provider:
    case PROVIDER.AWS: result = aws_client.download(from);
    case PROVIDER.AZURE: result = azure_client.download(from);

  parsed_result = parse(result);
  filesystem.write_to_disk(parsed_result, to);
}
  • Where should this live?
  • What happens in case of some conditional stuff, e.g. just do_something() for only aws?
  • Do we always either end up with a big god-like switch-festival or abstraction hell?
I don't know.
https://miku86.com/2021-08-31/




Finished Nanodegree




Project Management, Signals




Blog or Wiki?




Framework vs. blueprint




Holocracy, Open-Book Management


Today I decluttered my collection of interesting articles.

There was this one article about holacracy.

I read about this idea some years ago in an interview about Tony Hsieh.

As a software engineer, I oftentimes think about ideas like agility, change and transparency.

Software is connected to business processes.

When a business process changes, we have to be agile enough to adapt the software to the new changes.

So how much do I need to know about the business process and its context?

Is change the default mode of business? Of life?

Which concepts lead to easier handling of change?

This is how I found the concept of open-book management.
The basis of open-book management is that the information received by employees should not only help them do their jobs effectively but help them understand how the company is doing as a whole.

The technique is to give employees all relevant financial information about the company so they can make better decisions as workers.
This sounds very interesting.
https://miku86.com/2021-10-16/


Momentum


All plans are set up.

Doing this, doing that. Work, leisure, people.

I'll do it tomorrow, today I'm too tired.

And suddenly 2 weeks are gone.

Guilt.

Habits come and go.

Ebb and flow.
https://miku86.com/2021-10-15/


Easy election


Today we elect a new government in Germany.

This is the easiest vote I've ever made.

This is probably the first time I don't think about myself, but about my children and their children.

It's not about "Oh damn, I want to drive 150 km per hour, but I am only allowed to drive 130 km per hour, this is so mean.".

It is about "Hey grandpa, all of you folks went to university, learned a lot about science and stuff. Why have all of you been these idiots that didn't stop this shitload of environmental pollution and useless, unfulfilling consumerism? I've heard stories that you've had all this knowledge. Have you just been too lazy or too careless?"
https://miku86.com/easy-election/


Amish?




Rust




Linux


I use Linux for some years know.

Most questions I get are 95% the same.

This is an open-end collection of my knowledge in simple language.

Notes

  • Linux is the kernel, the inner core
  • some drivers (for graphic cards, wifi etc.) are inside the kernel
  • desktop environments (Gnome, KDE etc.) make the experience more convenient and pretty (how windows look, status bar etc.)
  • additional software makes life easier
  • kernel (Linux) + desktop environment + additonal software = Linux distribution (Ubuntu, Mint etc.)
  • Linux is written in C, so it is fast, but a lot of bugs stem from the fact that it is not memory-safe
  • I don't use a desktop environment, just a window manager (i3), no status bar etc.
  • I use many small tools, e.g. vim as editor, ranger as file manager

Links


https://miku86.com/linux/


Shady?


Sometimes I ask myself, if someone is a bad person, if they work for a company that does some kind of shady things.

Like nudging people to buy stuff they do not need, to watch ads for useless stuff etc.

Are there any companies that do not do shady stuff?

What does "shady" actually mean?

If my neighbor does shady stuff, then am I also allowed to do shady stuff?

Am I even not "clever", if I do not do shady stuff, because everyone is doing it?

Am I guilty of being a part of a shady system?

Should I feel compassion for people who do not game the system (by doing shady stuff and letting society pay for it)?
https://miku86.com/shady/
the problem is trade that forces as to do shady things you can learn about it in details at https://tromsite.com/books


Zola for my blog


This blog runs on Zola.

I've chosen it because it's simple and fast.

My old blog was running with TypeScript, React and Gatsby. Not bad, but the build time was very slow, around 3 minutes for 150 posts.

But that wasn't my biggest concern: there was some feature creep and too many updates on the gatsby site.

I had some tests, but they were slow and I didn't feel confident at all that after each week's ~5 updates everything will run again.

That's why I set up this simple blog and to get a better grasp of what is going on under the hood of Rust.

I don't know if this will help my learning, but at least I feel confident, because my workflow goes like this:
  • Copy an old post.
  • Add my new stuff.
  • Deploy (30 seconds of git add, commit, push, wait).

https://miku86.com/zola-for-my-blog/


More Rust


I have a really simple plan for learning Rust:
  • I read a chapter in the Rust Book
  • I do the Rustlings exercises that fit the chapter's content
  • I summarize my learnings in my Rust post
After I will have finished the Rust Book and Rustlings, I will have a look into Rust By Example, Practical Rust and Codewars.

Today I worked on the Rustlings exercise about move, primitives and structs, enums and modules, because I've already read the book chapters until chapter 8.
https://miku86.com/more-rust/


Camping


I was on a camping trip for some days.

Camping is awesome.

Removing all this physical clutter and getting back to the basics: shelter, food and nice people.

We slept in a tent and we just lived with the bare minimum food: water, bread, cheese, rice, oats, veggies.

This is also my normal, healthy, 120€-per-month diet at home, so nothing new for me.

But after a hard day of hiking, this simple way of eating feels like heaven.

The first night was very uncomfortable, it was cold as hell.

That's why my first night back at home felt very cosy, in my nice, comfortable bed.

And my first meal back at home felt like eating out in a restaurant.

I think about most of my life in a relative perspective - I measure against other situations and events.

I think I need this kind of grounding to not lose my mind.
https://miku86.com/camping/


Projects: serial or parallel?


Because I've finished the udacity course the other day, I'm now focused on learning Rust.

I'm into serializing project, there is a great podcast about it.

It's highly unlikely, that I like all my projects the same.

If I do them in parallel, I start giving all of them some time, but after some days and weeks, I lean towards fun, joy and convenience and mostly quit the not-so-enjoyable projects.

They sit around in the drawer and I feel bad about myself.

I am allowed to quit a project, but I don't allow myself to juggle between the projects.

The decision has to be conscious. Yes or No. No "when I feel like it.".
https://miku86.com/projects-serial-or-parallel/


About Abstraction


When code evolves


We start out with a tiny function that doesn't do that much (pseudo code):
function download_from_aws (from, to) {
  do_something();
  result = aws_client.download(from);
  parsed_result = parse(result);
  filesystem.write_to_disk(parsed_result, to);
}

So azure enters the room.

Time to DRY?
function download_from_cloud (from, to, provider) {
  do_something();

  switch provider:
    case PROVIDER.AWS: result = aws_client.download(from);
    case PROVIDER.AZURE: result = azure_client.download(from);

  parsed_result = parse(result);
  filesystem.write_to_disk(parsed_result, to);
}
  • Where should this live?
  • What happens in case of some conditional stuff, e.g. just do_something() for only aws?
  • Do we always either end up with a big god-like switch-festival or abstraction hell?
I don't know.
https://miku86.com/about-abstraction/


Finished Nanodegree