Igor Bubelov About Blog Notes Photos

September 2021

Notes · Oct 2, 2021

Table of Contents


I use web feeds to discover what’s new in the world. Most websites worthy of your attention have feeds, and you can easily add them to your feed reader, which allows you to merge all of your feeds in a single news timeline. By the way, that’s exactly what my Android app does.

In many cases, having a feed reader app isn’t enough though. Some people have a few devices, and they want all of those reader apps to be in sync. Let’s say I already read some news from an Android app, and now I want to finish reading today’s portion of news from my laptop. My Android app should somehow let my laptop know that I already read some news, and I don’t want them to be shown again. Those kinds of problems can be solved by setting up your own server and connecting all your apps to this common “source of truth”.

Initially, my app supported only one kind of server: Nextcloud News. It works reasonably well, but it’s pretty slow and hard to setup. Recently, I become aware of a server called Miniflux and it turned out to be the best feed server I have ever seen. It’s ridiculously simple to setup and it’s also blazing fast, so I decided to support Miniflux in the next release of my app.


Finding a good open source replacement for Dropbox/iCloud/whatever is hard. We’ve been using files for ages, but we don’t really have good, reliable and widely adopted tools and standards for sharing files between devices. Personally, I’ve been using Nextcloud for file sync for the last few years, but I was never satisfied with its performance and reliability. Syncthing has caught my attention because it promised ease of use, ease of deployment and stellar performance. That sounded almost too good to be true, so I’ve decided to give it a go.

This Syncthing thing turned out to be an amazing piece of software. First, you don’t even need a server in order to use it. It can sync your data between your devices in a direct way, which allows Syncthing to target and empower a much larger audience. I’m also impressed by the error handling flow in Syncthing. It doesn’t try to hide any errors, and it does a good job at explaining what’s going on and why. Another interesting thing about Syncthing is the fact that it’s operated by a non-profit. It’s not completely server-less, and sometimes your devices need a proxy in order to punch the NAT. In this case, Syncthing will contact a proxy server for help. That may sound as a security issue, but you don’t really need to trust proxies since all traffic is TLS encrypted.

Single Binaries

What makes software like Miniflux or Syncthing so great? It’s always tempting to find a single cause when we’re trying to analyze a complex phenomenon. Modern software is complex, but it doesn’t mean all its complexity is necessary. There are ways to reduce software complexity without compromising on features or quality, and that’s what good programs do. Let’s take Syncthing as an example. It’s distributed as a single binary, so you can simply copy it to pretty much any computer and it will work just fine.

Now, compare this approach with installing thousands of scripts, setting up container runtime, orchestration tools and a reverse proxy. By the way, that’s what you need to do in order to properly install Nextcloud. Software which praises self-sovereignity should be easy to setup, otherwise it’s no more than a marketing bluff.

Dynamic Backlight Control

I had a strange issue with my Dell laptop for a while: sometimes it just started to mess with the display brightness when I move my cursor. This was an odd and curious thing, but it didn’t happen often enough to justify an investigation. A few weeks ago, I found the cause of this issue accidentally. It turns out, Dell has a “feature” called dynamic backlight control, and it doesn’t always work well. Fortunately, it can be turned off in BIOS.

KDE vs GNOME Software Update

I’m new to KDE and I can’t avoid comparing it to GNOME, especially when something acts in an unexpected way. GNOME is pretty invasive when it comes to software updates, it just pops up an alert, disturbing the user’s workflow. KDE seem to have a saner and gentler approach: it just adds an update icon to a system tray. Overall, my experience with KDE so far is mostly positive.

Debian 11: First Impressions

I’ve been running Debian 11 + KDE for a month now and my first impressions are good. Debian is still true to its reputation of a ridiculously stable Linux distro. It works great out of the box and it needed little tuning for my use cases. I have a pretty exotic networking setup with both wired and wireless networks active at the same time, so I needed to make sure different kinds of traffic have different priorities. Setting this up was pretty easy and there it’s a well documented process.

USB Everywhere

Two good USB-related news this month:

  • EU plans to force all device manufacturers to adopt USB-C
  • USB accessories will soon have a special markings, making it easy to figure out their capabilities

It’s sad that Apple provoked more regulations, other market participants seem to converge on USB-C voluntarily. Anyway, this regulation is good for iPhone users and for the environment. I think it’s mostly a failure of antitrust regulations though.

Book: The Open Society and its Enemies

Science is an amazing tool, but there are no agreement on what it is and how it actually works. Those kinds of questions bothered Karl Popper enough to spend most of his life thinking about them. I knew this author from the courses on the history of philosophy, but it turns out he has a lot of interesting thoughts on the other topics as well.

As many great thinkers of his age, he was kind of forced to search for the roots of evil. It’s hard not to, when you watch Hitler’s rise to power in real time. Finance has long been one of my main interests, and pretty much everyone in this space knows who is George Soros. But wait, why would I bring up this guy in a text about science, Popper and Hitler? It turns out, this trio has a lot in common. The thing is, Popper thought a lot about the origins of totalitarian regimes, and Soros is a huge fan of Popper. Not only he is a fan, he’s also spending a lot of money on Open Society Foundations. Sounds familiar? That’s not a coincidence, as is the fact that totalitarian regimes such as China and Russia hate Soros and his foundations. That’s essentially how I got curious about Popper, if bad guys hate him so much, he must have done something good, and I wanted to know what.

Open Society and it’s Enemies is an attempt to figure out what kinds of ideas gave birth to the most evil and brutal regimes in the world. Popper tries to identify those ideas, and it calls this group of ideas “historicism”. In his view, treating societies as conscious entities striving to reach some kind of end-state has an enormous amount of harmful side effects. Accepting those ideas normalizes the erosion of individual freedoms and ultimately leads to a catastrophic outcomes.

Some people find it absurd to say that nazis and socialists have a lot in common. Well, historicism is one of those undeniably common and arguably dangerous things.

Game: Hitman 2

This game is created by assholes, and it shows everywhere. It’s exploitative all the way down the line. It starts with forcing you to accept a bogus privacy policy. I declined, so it disabled most of in-game content until I change my mind. I didn’t, but it kept reminding me of those missed features all the time. Well, it is only a first dark pattern I stumbled upon, the next one is even more sinister. It turns out, Hitman 2 is not a game but a launcher for “levels” which you need to buy separately in order to fully experience this game. Sony shouldn’t really allow such garbage in their store.

Apart from that, the gameplay is OK and the graphics is nice. I enjoyed a couple of “free” levels. It’s much easier than the original Hitman, but it can be challenging at times. I got this game for free via PS Plus, so I have no regrets. I wouldn’t ever pay for such a game though.

Game: Bloodborne

Finally, I managed to beat the main Bloodborne storyline, and I must say, that’s one of the best games I played in a long time. It’s also highly replayable, so I’m going to beat it again in New Game Plus mode. Bloodborne also has a separate set of locations called chalices, and I didn’t finish them all yet. This game does a good job at triggering all kinds of emotions from extreme anger to extreme joy, all thanks to its tough boss fights. They are often complex and unpredictable, and it kind of goes against the modern trend of making games easy to play. A typical AAA game makes sure that you never stuck, so Bloodborne treatment can be surprising and even irritating for many players, but the joy of winning a tough battle can easily outweigh hours and even days of endless defeats.