#weeklyreview 41/24

Beer’n’Burger

On Monday we had another instalment of our infamous beer & burger crew meetings. This time we finally met at the Brewdog restaurant at the Frankfurter Tor. The burgers were surprisingly good. The beer was good not surprisingly. But on the costly side with around 7 EUR per 0,5L glas.

Cold

I guess two times swimming on the last weekend and two sick kids at home last week took a toll on me. Woke up with a severely soar throat on Tuesday and it went downhill from there. So bad that I actually called in sick for Wednesday and Thursday.

Originally this Tuesday I was scheduled for the company sponsored flu vaccination. But fortunately that had to be rescheduled due to the doctor herself being sick.

Tried to stay in bed really and rest/sleep. Of course got interrupted several times by phone calls and family emergencies.

But eventually managed to get through and felt much better on Friday already. Almost no symptoms on Saturday.

big mastodon update

On Tuesday version 4.3.0 of Mastodon came out. Almost a major release if you ask me. The update required some manual intervention. They’ve split the container images into one for the web app and one for the streaming app. The docker-compose.yml had to be adjusted accordingly and a second container image built. I also had to rebuild the patch or the source code to allow for longer postings. This is now a little bit easier and can be achieve by just changing one variable value:

From d04253848c2d53cc732e3cb0c6e31be91dd6107c Mon Sep 17 00:00:00 2001
From: Falko Zurell <email>
Date: Tue, 8 Oct 2024 15:27:02 +0200
Subject: [PATCH] adjust post character limit to 5000 chars for 4.3.x

Signed-off-by: Falko Zurell <email>
---
 app/validators/status_length_validator.rb | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/app/validators/status_length_validator.rb b/app/validators/status_length_validator.rb
index dc841ded3..9cb1ec94b 100644
--- a/app/validators/status_length_validator.rb
+++ b/app/validators/status_length_validator.rb
@@ -1,7 +1,7 @@
 # frozen_string_literal: true
 
 class StatusLengthValidator < ActiveModel::Validator
-  MAX_CHARS = 500
+  MAX_CHARS = 5000
   URL_PLACEHOLDER_CHARS = 23
   URL_PLACEHOLDER = 'x' * 23
 
-- 
2.39.5 (Apple Git-154)

All in all the upgrades of all three of my instances went perfectly smooth and the new web interface looks slightly fresher.

Dinosaurs and Future

The weather on Saturday was so good and we stayed in Berlin for quarantine (not pass on the cold/flue on to my wife in the countryside) reasons. Kiddo and me decided to go to the museum of natural history to see the dinosaurs and other stuff again. We took the bikes and happily pedalled there through marvellous Mitte.

I was surprised to find Knut the famous Berlin Zoo polar bear there on display.

After the museum we felt fancy enough to drive down the road to the FUTURIUM. A new building new the river and Hauptbahnhof where some vision of the future stuff is on display. There was a spectacular view from the skywalk on the roof over sunny Berlin.

We rounded the trip off with lunch at Sanku Maots’ai 三顾冒菜 柏林 a Chinese style restaurant at Friedrichstrasse. It’s quite popular among the natives and you get to choose your ingredients for your hot pot yourself. And yours truly doesn’t shy away from the weird stuff like duck blood or tribe 😀

In the evening we watched the original Tim Burton “Betelgeuse” movie and afterwards James Bond – Goldeneye. Good ol’ stuff.

#weeklyreview 40/24

Ted Lasso

I’m a big fan of the Ted Lasso TV series. So I had to improve one of our meeting rooms

let’s see how long this lasts

Nerd meet up

On Tuesday I attended gathering of some old hacker dudes. All famous names in the Berlin scene and beyond. Hard fanboy moment to meet Tim Pritlove in person. He’s an icon in the Podcast world and has single handedly established and nurtured podcasts over the decades now with famous formats like Chaos Radio Express, Logbuch Netzpolitik and many more.

Realised we’re getting old and you hardly find people with this depth and breadth of computer knowledge anymore.

flu season

Both kids were off sick for a few days this week. Looks like flu season has started. Fortunately I’m scheduled for my flu shot next week in the company.

At least that gave us some time for a walk in the park and enjoy the autumn.

Swimming

went for a swim in the lake on Saturday. Water is already quite cold. But still comfortably managed to do the large triangle. Of course had the whole lake for myself 🤣

#weeklyreview 39/24

Obsidian tinkering

I’m using the free version of Obsidian for note keeping across my devices. Using the Community Plugin Self-Hosted Live Sync with a CouchDB to synchronise changes across the devices.

Recently the author of the plugin added support for object storage services (e.q. AWS S3, MinIO etc. ) for synchronisation. I had to give this a try as I’m running my own MinIO instance already for other purposes. The CouchDB was solely for Obsidian syncing. So using the other service would allow to reduce the number of services I have to run.

Created a new bucket and access policy and then configured all the devices with the new sync backend. So far it seems to work pretty well.

Fediverse Talk at the community college

I finally gave a little Fediverse talk at the local community college in Templin. Last time we tried, nobody actually signed up for the course. We tried a slightly different format this time. Kind of a bar camp like approach. Meeting in the little “El Caribe” restaurant in Templin and have it an informal setup with drinks and food.

This time some people did sign up and eventually we were 7 people. One couple even from Luxemburg (which be chance was sitting in the restaurant on their vacation and spontaneously decided to join in).

It was a good evening and the people were actually quite engaged and interested although they hadn’t heard of the Fediverse and its various services before. Let’s see if they eventually show up as followers 😉

70th

On Saturday we went to the 70th birthday of my uncle in Luckenwalde. That included a spontaneous detour to pick up my aunt from her retirement home as her driver had to bail out due to a family emergency. She’s partially paralysed since she had multiple strokes a few years ago. That went surprisingly smooth and she was really happy she was able to attend the birthday party. It was fun to see all the old relatives and friends. My uncle gave us a good tour of the old carpentry workshop our grandfather build and he inherited. He had also collected a whole bunch of historic items from decades ago.

On our way into the city of Luckenwalde we passed by the old house of my grand parents. To our surprise the old neighbour lady was still around and looked just like I remember her from about 40 years ago when I spent time there as a kid. Big surprise and happiness on all sides for this short reunion.

#weeklyreview 38/24

Debugging the heating system

The whole summer I had the suspicion that the underfloor heating in one room of our flat is still on. We had dialed all thermostats down to “off”. But still the floor was somewhat warmer than in the other rooms. I blamed this on the sun shining in in the afternoon. But now that it’s colder outside and one can definitely tell if the heating is on I was sure something is broken. I opened the control unit compartment where all the pipes arrive and the valves are located. There were fortunately flow indicators on each pipe. So I could clearly see that the room in question had a constant flow of 1L/min while all other rooms were completely off. I turned the thermostat all the way up and could confirm the flow rate increase as well. But it never went down below 1L/min. Also disassembled the thermostat to check if that can be broken in this way. But it’s a simple bi-metal switch.

I’ve turned off the whole heating system now to stop the unnecessary heating and tried to make an appointment with a craftsman for repair. Earliest slots are at the end of October 😳

OS Updates

Apple released new iOS 18 and new macOS 15 (Sequoia). So it was time to update. All supported devices updates without an issue. Everything working so far. Kind of a non-event.

Exercise

I was really lazy over the summer. Partially due to the gym in the office being closed for renovation… But this week I did a longer walk (to and from the office) and a first run in the park to get into it again..

KIDS day at HERE Berlin

company invited the kids of the employees for an afternoon of fun and games. Also showing some of the stuff their parents are doing all they long 😉

#weeklyreview 37/24

Thanks for all the fish

went swimming in the lake with the phone and also took some underwater pictures. This time apparently some water got into the phone and forced the FaceID to shut off. An error message appeared that FaceID has been disabled and phone needs service. No way to reset it.

So I made an appointment at the Genius Bar in the Apple Store in Berlin. Had hoped they can possibly diagnose and reset a flag to enable FaceID again. I’m sure once it’s dried up, it should be working again.

But of course Apple refused. They claimed it’s the most precise and sensitive function in the phone and thus can’t be simply re-enabled. Only option is a full swap-out of the phone. Which would cost more than 600 EUR at this stage. That obviously doesn’t make economic sense.

I guess I have to live without the convenience of FaceID on my iPhone now. Otherwise it’s still working perfectly fine.

Night Stand

Scott Yu-Jan, famous for his meticulous design and tinkering with his 3D Printer took on Dieter Rams for an iPhone Nightstand. Inspired by musician OVERWERK and building on his original model of the DN 40 he created a sleek iPhone night stand with a quick release button. The projects files a derivates are available on the BambuLabs Makeworld

The design is based on the BRAUN DN 40 designed by Dieter Rams

Steak

visit to Steakhouse Marzahn. Rather improbable location for a really expensive but very good steak house. As expected the guests were partially shady cliché role models of various kinds.

The food was really good though. We haven’t tried to most expensive options of course. Spending 700 EUR on a steak is too much for me.

Movie night

On Saturday I watched “The Banshees of Inisherin” with Brendan Gleeson and Collin Farrel (among others of course). A really lovely film. Beautiful Irish island landscape and quirky original characters. I can highly recommend this movie. I tried watching it in original language but switched to German to get all the jokes. Will watch it again in original now. Enjoying the original dialect very much.

#weeklyreview 36/24

Home Assistant assisting with the heat

This week was that one hot summer week where you would want to ensure you’re cooling down the flat during the night. I’ve got temperature sensors scattered around the flat and on the balcony and hooked into HomeAssistant. I’ve set up an automation to send me a notification when the outside temperature dropped below the inside temperature. So I would know when to open the windows to let the heat out of the flat. And of course vise versa to close the windows in the morning when it was getting hot again.

alias: Open Window
description: Send Notification when it's colder outside than inside
trigger:
  - platform: numeric_state
    entity_id:
      - sensor.indoor_outdoor_meter_3711
    for:
      hours: 0
      minutes: 5
      seconds: 0
    below: sensor.wohnzimmer_switchbot_5
condition: []
action:
  - action: notify.mobile_app_maxheadrooms_iphone
    metadata: {}
    data:
      message: it's getting cold outside. Open the windows
mode: single

ZEF

back in the days working at Pixelpark we had to use a tool to track our project work. It was called “ZEF – Zeit ErFassung” and of course we hated it. Especially Moellus seems forevered scarred and haunted by it 🤣.

I do understand the reason why one wants to track project related hours spent as you’d want to make sure you stay in budget and send correct bills to your clients. Later in the Web 2.0 era a neat little tool emerged from academic work: mite

Mainly aimed at freelancers it was a refreshing and simple to use web service to track time.

This week I stumbled across solidtime – a modern, open-source time tracker. Of course I tried it out. Looks pretty neat and was quick to set up with their self-hosting instructions. Had some issue with high CPU load at the beginning. But their community support via Discord was quick to help and found the issue to be incorrect container health-checks.

Just for fun I’m tracking my own project times now to get an idea how much time I’m spending on each. All in the spirit of “you can only manage what you can measure“.

Instant camera

recently I got a bit into instant cameras. Got a Polaroid Now as a birthday gift which brings back much of the original instant analog photograph spirit. The pictures are largely hit and miss and only really work for close up content. The film is rather expensive and each picture costs about 2 EUR for the Polaroid camera.

Then I read a test of various such cameras and the Fujifilm Instax mini evo stood out for me. It’s a retro looking compact camera which is a hybrid of digital and instant analogue film. The images are taken with a digital sensor. The can be immediately exposed on Instax mini film and come out of the side of the camera. But the photographs are also saved inside the camera. You can watch your photos on the built-in screen and only print the ones you like. That saves a lot of money as the Instax films are also not on the cheap side. The mini format is about credit card size and the pictures cost around 1 EUR each.

The evo mini comes with a variety of virtual lenses and films that you can select via dialing on the lens and on a scroll wheel at the top of the camera. The effects are digitally created and then exposed on the film.

I very much like this concept of combining the best of both worlds. As a bonus you can transfer images from your mobile phone to the camera and have them printed/exposed on film.

Village cinema

On saturday it was time for the annual village cinema evening. The people would gather at the place in front of the church where are big screen is set up. To get into the mood there was a band playing and beverages and BBQ offered from 6pm on already. The movie started at 8 pm when the sun was down. This year we watched “Knives out”. The night was a mild 20º C and everyone enjoyed an entertaining evening

Upscale Videos using open source AI tools

I recently got the question from my uncle whether I can upscale one of his really old videos. The source was a short 10 seconds video with some low quality audio in 320×240 pixel resolution. Likely taken by one of the first video capable digital cameras or a phone many years ago.

I accepted the challenge as I had seen some AI tools like DiffusionBee being able to upscale images with decent quality.

I haven’t found a good free tool to upscale a video directly yet. There are shade free tools out there, but I don’t trust them.

What I ended up doing is exporting each frame of the original video to an image, scale up the images with an open AI model and then stitch them back together to a video.

1.) export each frame of the video to a JPEG file, export sound into a single file

ffmpeg -i input.mp4 ./LOW/frame_%04d.jpg
ffmpeg -i input_video.mpeg -vn ./output_audio.mp3

Directory Structure:

.
├── HIGH
│   ├── upscayl_jpg_realesrgan-x4plus_4x
│   │   ├── frame_0001.jpg
│   │   ├── frame_0002.jpg
│   │   ├── frame_0003.jpg
...
│   │   ├── frame_0254.jpg
│   │   └── frame_0255.jpg
│   ├── upscayl_jpg_remacri_3x
│   ├── upscayl_jpg_ultramix_balanced_3x
│   └── upscayl_jpg_ultrasharp_2x
└── LOW
│   ├── frame_0001.jpg
│   ├── frame_0002.jpg
...
│   ├── frame_0254.jpg
│   └── frame_0255.jpg

2.) Upscale images using AI tool Upscaly

https://upscayl.org/

brew install --cask upscayl

3.) combine new images into a movie

cd ./HIGH/upscayl_jpg_realesrgan-x4plus_4x

ffmpeg -framerate 15 -f image2 -pattern_type glob -i "frame_?.jpg" -i ../../output_audio.mp3 -c:v libx264 -crf 1 -vf scale=2048:2048 -pix_fmt yuv420p -vb 100M ../output_${PWD##/}.mp4

#weeklyreview 35/24

Last week of school holidays in Berlin/Brandenburg. Kids were enjoying the last days in the countryside before going back to Berlin.

Bread & butter

My uncle pointed me to the webshop of Bäckerei Philipps for really good sourdough bread. It reminded me of the “Sylter” from Jochen Gaues which one could order online a few years ago. So I gave it a try and it eventually arrived on Monday.

A pure delicacy. Soft and crunchy (if refreshed in the oven or slice by slice on the toaster) and so tasty. I think I lived off that big loaf the whole week as my only food supply.

That’s surely a luxury one can’t afford every week (unless the bakery is within walking distance). But if you like to get a really good sourdough bread, I can wholeheartedly recommend this one. It lasted they whole week just sitting on the counter in it’s plastic bag.

I had ordered the 360º LAIB natur and the 360º LAIB Groument Stange. I usually just used butter and salt. Sometimes our family honey, but nothing fancy. The bread is tasty enough to stay on its own.

Final Wood

Eventually finished the stacking of the remaining firewood from earlier this year. That should hopefully be enough wood working for a while. Next step will be restacking the piles into the shed once they have dried for a year or two.

Harvest Season

Our homegrown tomatoes are ripe and provide us with a wide variety. Different colors, shapes and flavors. I’m usually not into raw tomatoes, but I tasted these large red ones with mozarella, oil and vinegar and they are super tasty. Rather sweet and firm flesh.

My wife is getting random seeds from a lady from the internet. As one can’t officially sell seeds in Germany for the bloody agrar lobby, it works on a donation and exchange basis. The seeds are usually of old types and industrially optimized tomatoes. Such a luxury to be able to grow our own. It’s quite a bit of effort and if one runs the numbers probably not “economic”. But that math might be flawed given the environmental impact of industrial style food production etc.

Survival in Brandenburg

On Saturday evening a friend of ours and me attended a movie night in the LeuteHaus in Milow, north-west Uckermark. The german movie “Überleben in Brandenburg” by Zoltan Paul was on show and one of the actors attended and stayed for a little conversation after the movie.

I like the movie very much as is was comedy with some contemporary aspect to the current political battles in the east of germany. Many scenes and situations resonated with the audience. Also had some real good conversations about the movie, the making of it and life in Brandenburg in general with László I. Kish, one of the actors.