bruegge.dev

Enjoy the detours!

πŸͺ£ I've decided to create a link dump series. I don't know how often I will do it, I'll just create a draft #2 and add links to it, until I find, it is postable. And after it, with #3 and #4 etc. πŸ˜„

Kettlebell Workout: lately I trimmed down my workout to a 15Β min kettlebell only workout.

Alternative Reddit Frontend: for me, as someone who only reads on Reddit, I like this approach a lot. I don't need to log in and have a fast interface. :) https://github.com/redlib-org/redlib

The Story of Final Fantasy 7 explained (German): Final Fantasy 7 Rebirth was released, and I thought about, getting the game, but then I was too lazy to buy it. And currently, I have no time to play it. So, I didn't buy it. πŸ˜… As someone who played the original a lot, I found this Video a good refresher and also a good summary of the whole story. Everyone interested in the Final Fantasy lore should watch this. And sorry that it is in German. Just got it from a friend who shared it with me.


13/100 of #100DaysToOffload

#log #linkDump

Discuss...

The idea of writing this post is inspired from the post of Geoff Graham: β€œHey, will you build me a website?”.

Every once in a while, I get a request from friends. They want to buy, for example, a new computer or tablet.

I give them my standard questions:

  • πŸ› οΈ what will it be used for?
  • 🫰 how much money do you want to spend?
  • ⭐ do you already have some favorites as an example?

If this is a normal request, I'm fine with it. But the friends came to me, and they actually already made up their mind. Some odd requirements with a minimal budget. My problem here is, if you already decided what you want to buy, don't ask me. Because I have to take the time and research on this topic. But if you need to verify that your decision is ok, then tell me and I can focus on that.

Because I work every day on a computer doesn't mean I have the knowledge or the experience of what the best hardware for your budget is. Every 4–5 years, I'll buy a new notebook and mobile phone (I don't have a tablet because I have no use case for it). And usually, I try to get the best of what is currently on the market. In the past years, it was a maximized ThinkPad with a higher budget because I use it more than 10hrs each day and need it for my freelance and private work. On the current iteration, I bought a MacBook Pro and an iPhone. Because don't care anymore about hardware specs. I just want something good that works in my environment.

So I don't have to waste time on hardware spec research anymore. I didn't care in the past, and I don't care now. I don't know which Intel or AMD is the best. Or if you require more memory. For example, more than 10 years ago, I heard, with a Windows Installation, you need as much memory as you can get. So I assume, when you buy a budget notebook with 8 GB memory and windows is installed on it, I would assume that I wouldn't have fun with it, while working. Some are also used to the pain, working with slow machines. That's something I can't tolerate. It needs to be snappy and direct. 🏎️

I don't like to give recommendations. I'm used to different stuff than you, and I have a bad feeling when you buy something I recommended, and you are not happy with it. When you have a tight budget, I would rather not be the person responsible for this.

Sounds more like a rant at the moment. πŸ˜… That was not planned, but it is fine for me. I don't plan my posts, if I have a Topic I want to write about, I just write down everything that is in my head. That's also a reason why the #100DaysToOffload is so appealing to me.


11/100 of #100DaysToOffload

#log

Discuss...

This is my tenth post for #100DaysToOffload. I have written not as many posts as I planned, but I got a small steady stream of posts. The important part is, that it is not feeling like work. I need to force myself a bit to start writing, but when I'm in, it makes a lot of fun. 😍

The Good

We made some progress on our house, or more in the backyard. By getting some help with a tiny excavator to cut and get rid of the roots from our hedge. Now the backyard looks cleaner and is prepared for the coming fence. 🏑

Last week there was some positive news from the Kita. They are now, after some long discussions, willing to take our blind child. Unfortunately, not until August, so we have to wait 5 more months.

On Saturday was my birthday and I got one year older. I'm now 36. When I look back, the last year was very exciting, both positively and negatively. Let's see how this year will be. πŸ₯³

Yesterday is published my first development related post. My domain now, fits more with my content.

The Bad

In the past 2 weeks, I've got the idea of moving my desk to another place in my office. I've created a small plan and then moved the desk. It turned out that is not a suitable solution. The path to my desk got unnecessary complicated and tight. The acoustic got worse and also the lighting. After a day, I moved all back to its old place. Besides one shelf, this one I changed to get more space. Currently, my office is also by 50% a storeroom as long as our basement is not ready, and I need to live with that for now.

The Ugly

There was nothing so bad in the past week, that I have to mention it in the ugly section. Which is a good sign for me. πŸ‘


10/100 of #100DaysToOffload

#log #GoodBadUgly

Discuss...

Recently, I've tried to work with the new <dialiog /> Element in React.js. I like how minimal the API and the React.js code is. For simple pop-ups and modals, it works great. I have some doubt when it gets more complex, for example if you add a prev or next button, but it should be realizable.

The styling is done quite well. In basic CSS, you can target the open dialog with dialog[open] {} and the background with dialog[open]::backdrop {}. Everything else are just usual HTML Elements.

Browser Support

Image of Table, which shows in which desktop browsers the element is supported.

The <dialog /> Element is supported in all relevant browsers.

Image of Table, which shows in which mobile browsers the element is supported.

Same for all relevant mobile browsers.

Source: https://caniuse.com/mdn-html_elements_dialog

Example

Here is my minimal version of the implementation for Next.js with Tailwind CSS:

"use client";

import { useRef } from "react";

import { P } from "@/components/ui";
import { Image } from "@/components/image";

type Props = {
  children: string;
  image: {
    src: string;
    alt: string;
    width: number;
    height: number;
  };
};

export function GalleryItem({ children, image }: Props): JSX.Element {
  const ref = useRef<HTMLDialogElement>(null);

  function openModal() {
    ref.current?.showModal();
  }

  function closeModal() {
    ref.current?.close();
  }

  return (
    <div>
      <div className="h-64 shadow shadow-black cursor-pointer overflow-hidden rounded-xl">
        <Image
          className="w-full h-full align-middle object-cover ease-linear duration-300 sm:hover:scale-125"
          src={image.src}
          width={500}
          height={500}
          alt={image.alt}
          onClick={openModal}
        />
      </div>
      <dialog
        ref={ref}
        onClick={closeModal}
        className="focus:outline-none focus:ring focus:ring-neutral-500 rounded-xl backdrop:bg-neutral-800 backdrop:bg-opacity-85"
      >
        <Image
          className="w-full h-full"
          src={image.src}
          width={image.width}
          height={image.height}
          alt={image.alt}
        />
        <div className="absolute bottom-0 h-1/3 w-full bg-gradient-to-t from-neutral-800 p-4 flex items-end">
          <P className=" text-white p-0">{children}</P>
        </div>
      </dialog>
    </div>
  );
}

9/100 of #100DaysToOffload

#development #react #javascript #typescript #tailwind

Discuss...

I thought about starting with 1, but we are already in week 8 of 2024 and this is a small recap of week 7. Or should I start with 1 and increase without the pressure of writing this every week? I’ll decide at the end of this post. Or maybe I need another number? #7-1? It looks confusing. #1-w7? πŸ€”

Strange soliloquies I'm having here. πŸ˜‚

The Good

I finally found a setup for my office, where I can put my desk without having the door or the window in the back. :)

Office arrangement comparison of old on the left and new on the right

The Bad

It's challenging to get a new freelance project at the moment. I hoped that the market has healed in the last few months. Yes, I got some request, but the hourly rate was way under the usual price and was nearly as high when I started freelancing, ~10Β years ago.

The Ugly

It is harder than I thought, getting our blind child into the local Kita. :/ I appreciate the effort and concerns of the team from the Kita, but their arguments can be easily refuted.

The Title

I've decided to go with β€œ#1 of Week 7”. With this writing, it should be clear what is what. πŸ˜‚


8/100 of #100DaysToOffload

#log #GoodBadUgly

Discuss...

Today I did an update of my paperless-ngx installation. Unplanned. πŸ˜…

I logged into my Synology DSM and saw that there was an update for the Redis image. Like always, I started the update and went on. Later that Day, I wanted to upload some files, but I got an 500: Error. I've searched the web and found that there could be an error with Redis.

First, I thought that this could be an issue with file permissions. Because I tried, for the first time, uploading an PDF via the share button on my Phone. But then it also failed while uploading a normal image of a Document. So I started my investigation.

First, I found this error message in the Redis logs: WARNING Memory overcommit must be enabled! Without it, a background save or replication may fail under low memory condition.. Did a small search and found some shell command for sysctl which didn't help. Because in this Redis image, there is no sysctl installed. This was one of the commands:

sudo sysctl -w vm.overcommit_memory=1

If set to 1, it is enabled. Mine was set to 0. Without sysctl installed, it looked that there was no way to set it. So I searched again. With no luck.

Then I thought maybe I could just restart the Redis container, but this also leaded into nothing.

So maybe I just could re-use the instructions (Link to a German Synology Forum), I've used to install paperless-ngx.

There were 4 commands I simply run again.

cd /volume1/docker/paperlessngx/config
sudo docker-compose pull
sudo docker-compose run --rm webserver createsuperuser
sudo docker-compose up -d

This helped. In some way. The downside was, that it reinstalled everything and also deleted the database. Luckily, I could restore all my files from the File system. The only thing I needed to add again were tags. For the next time, I should make a real backup with the document_exporter from paperless-ngx. (Second time I need to do this. https://bruegge.dev/paperless-ngx, maybe I should not postpone it for too long. πŸ˜…)

In the End, I have no solution to the initial problem. Just solved it accidentally by updating my installation and lost my database.

This post is also more or less a documentation for future-me, if I come to this point again. πŸ‘


7/100 of #100DaysToOffload

#log #toFutureMe #paperless #fail

Discuss...

After writing my last post (Reading as a Sleep aid), I got a bit sentimental about this topic.

I've looked back, and thought about all the physical books I have read and then, about all the e-books I have read. There is no point where I would not hesitate to go back to physical books. I love how they feel. I love how you get used to them while reading. Not only that, but I also love how you get used to the quirks of the book because you want to read the story and get socked into it.

And then, you have e-books. They are pragmatic. They have a backlight. They are small and light. You can travel with hundreds of books without needing more backpacks or having a heavier one. You can adjust the font, the font-size, light-height ... everything, but still, they are just soulless objects.

I'm torn apart between physical books and e-books. While I love books, e-books are a more pragmatic choice. Especially when you have kids. Most of the time I read my books in bed. In summer, also sometimes on the terrace during a work break. If physical books had a backlight, I wouldn't miss the times when I had no e-book reader. 😁


6/100 of #100DaysToOffload

#reading #books #ebook

Discuss...

For years, we were used to falling asleep with the TV on. For years, I had problems after I went sleeping and started dreaming. Because stuff that I heard from the TV, I build into my dreams. My wife had no issue with it because she was used two it. I had a Problem with it because as I single, I turned off the TV after I got sleepy. So my sleep/dreams were influenced by it. Not that I had issues with waking up or feeling bad/tired during the day. I just don’t like that my dreams were influenced by it.

So I decided reading books while falling asleep could be a good idea. During my software developer apprenticeship, I was a good reader. I've had a lot of time reading while donating blood or blood plasma, or just in my spare time. The only place I was not reading, was the bedroom. I missed that time. After my training was over, I've started with gaming, played in a Band and did more social stuff because we moved to Berlin. It was easier than in the town we lived before. I also wish I were bored again sometimes because I also read a lot when I was bored. πŸ˜…

But, back to the topic. Reading as a sleep aid. The time I’ve decided to start reading to fall asleep, my wife didn’t like the idea because we had the TV in our bedroom, and she wanted to watch while falling asleep. We had this compromise that she turns off the TV when she thinks she is tired and can fall asleep, and I tried to dim the lights as much as possible.

The funny part, my wife has this wonderful ability to adapt effortless and fast. So not so long after, maybe 2–3 Books after I've started, she also decided to read to fall asleep. ~4 years later, we moved again and finally banned the TV from the bedroom because it was not used for years. We both upgraded to an e-book reader, so we do not necessarily need lights to read and don't bother the other one when we want to read longer. ~14 years after I've started this sleep aid, we have two kids who are sleeping next to us, and we can read without interrupting their sleep. πŸ₯³

When I started this post, I just wanted to write about the sleep aid topic. I had nothing particularly in mind or a goal I wanted to archive. But I'm happy how it turned out.


5/100 of #100DaysToOffload

#Sleepaid #reading #books #ebook

Discuss...

Image of For I am King - https://foriamking.nl/

Last week on 19.01. we were on the record release show from Tenside. A metal band from Bavaria. But I was especially there to see the band For I am King.

The show was packed with 3 bands:

  • Oklahoma Kid from Rostock
  • For I am King from Netherlands
  • Tenside from Bavaria

It started with Oklahoma Kid. The first song sounded good, but then song after song they went softer and softer. The singer did a good job and was the highlight of the band. Overall, it was nothing for me.

Next, For I am King started. Alma wore a Dragon Ball Z πŸ‰ shirt. This caught me off guard and I liked it. Sadly, the sound in the location was terrible. For Oklahoma Kid it was ok because it was not a giant wall of sound. So, if you were not familiar with the songs, you had a hard time understanding and maybe having fun with the gig. For me, it was ok, but for my friend I brought with, he had a hard time enjoying it. I hope I can see FIaK again but then in a different location. In the end, for me, I enjoyed it, had fun watching and listening to this outstanding band. :)

At last, Tenside played. Usually, I'm not an early quitter, but we left after 2 songs because the sound was as terrible as with For I am King. I've listened to 1 record from Tenside in the past, and I've recognized one of the 2 songs, and it was good. But still, not my favorite kind of music anymore.


4/100 of #100DaysToOffload

#live #music #concert

Discuss...

https://100daystooffload.com/

To get a better start with my blog, I will try the #100DaysToOffload challenge. I see it as a doable challenge because of the loose restrictions. But I need to force me to not overthink it. Just write when I feel to.

An example of overthinking is: I need 100 Posts in 365 Days, his will be around 2 Posts a week. Which raises questions like β€œdo I have so much to say that it will last for 100 Days?”.

Currently, I'm not used to writing at all. Which triggers a bit of fear in me. This sets my moot into something I don't like. It will be better to think about it like there are days when I will write more posts and days when I don't need to think of writing at all. I need to keep the pressure low. I also don't want to plan posts in advance, just to fill the gaps.

My goal with this challenge is to build a habit of putting my thoughts into text, so anybody can read, and we can talk about them. I've tried writing in silence by writing a dev log and a diary, but I got demotivated quite fast, and I stopped writing. My learning here was, that I enjoyed writing itself, but not in silence.

This thinking is working so far perfect for my mastodon posts. I enjoy just posting when I feel to. I hope this will work for this blog too.

Furthermore, I like the fact, when you think about a topic and have no idea how to write more than a sentence about it. And when you start writing, it grows more and more. Like this post. Initially, I thought about writing just one paragraph, and now I keep adding more because I have new ideas of what I can say about it. I had the same experience while writing my dev log and diary. Each day the posts getting longer and longer.

Let's see where this goes and if I can keep the motivation for this challenge.


3/100 of #100DaysToOffload

#log

Discuss...

Enter your email to subscribe to updates.