feed de link link link content

Found at: uninformativ.de:70/twitpher/feed.atom

    uninformativ.de phlog
We've been getting reports about "bad WiFi" at work. It's often hard or
mpossible for users to tell if this really is a WiFi issue, or
years in a row -- I went to the office again on a regular basis in an
effort to investigate these reports.
The first thing I did was just take my laptop, walk around, and run
things like iperf3 or just join a video chat. I didn't notice any issues
maybe roaming could be an issue. (It later turned out that roaming is
ndeed a problem for most of our clients.)
Now, I have a Thinkpad and it runs Linux. Most of our users have some
Macbook. Okay then, let's grab a Mac and test again.
Oops. Ping spikes and bad bandwidth drops. Not *always*, but it was bad
enough for me to conclude: "Yep, something's wrong here."
found a faulty switch, but that didn't solve everything. I also found
other issues which had nothing to do with WiFi at all. I learned a lot
about 802.11 WiFi and what not, but I couldn't tell where the ping
things, when I finally noticed what was going on.
"Option" and click on the WiFi icon in the menu bar. And that was my
Opening this menu also triggers scans for other access points, which, I
opening that menu, the ping spikes and bandwidth drops were gone.
(That menu doesn't even show you the results of the scans. You have to
open another submenu to see them.)
We later found out that opening the Mac's system settings and visiting
a tab related to networking does the same thing. At least one user had
these scans don't show up anywere, especially not in the tcpdumps that I
took (including ones made in "monitor" mode). The only thing I saw was
to do this (doesn't work on all MacOS versions, some just don't tell you
about scans):
    while sleep 0.0001
        sudo /System/Library/PrivateFrameworks/Apple80211.framework/Versions/Current/Resources/airport en0 -I |
            grep -qF 'state: scanning' && printf .
And for checking which AP you're connected to, just look at `airport en0
-I`. No more GUI.
Just finished this year's Advent of Code.
more about Rust. I got carried away in 2021, though: It is very tempting
to try to be competitive. So I quickly switched to Python in 2021. I
think that's a pretty great language for this kind of thing: It runs
fast (enough), it's very powerful, and easy to write.
This year, I really wanted to stick to Rust. So, first, no competition.
Second, learning Rust shenanigans is hard enough -- solving the puzzles
on top of that can be too much for me. So I said to myself: If I really
Honestly, I think looking for help makes for a better learning
experience. If you're truly stuck and have no idea how to solve a
alternative? Suppose you don't know any path finding algorithm (and
maybe don't even know what to look for), then how will you solve that
algorithm -- completely unrealistic. Instead, if I look for help, then I
can learn: "Aha, that's how you solve this kind of problem." And next
time I can do better.
So, this year, it was all Rust.
-   Learned about Rc/Weak and RefCell and how to represent graphs. Also
    learned about the alternative "arena" implementation of that.
-   Passing closures around as function pointers.
-   Enums with attached data for representing linked lists.
-   Implementing "Ord", so custom objects can be sorted.
-   Basic multithreading.
-   Looping over negative ranges ("for x in (width - 1)..=0" doesn't
    work, but "for x in (0..width).rev()" does the trick).
-   Breaking out of loops other than the innermost one. :-)
And of course, more experience in general with the language.
What I steared clear of:
-   Using crates. Everything just uses the standard library.
-   "Clever" or "functional" code (for the most part).
brain works. I cannot make peace with super-concise code that crams a
ton of meaning into just a few bytes. Some people love that -- I find it
very hard to read.
line of Rust code that I write, I understand it a little bit better, and
maybe, one day, I can form an informed opinion.
Merry Christmas.
long time since I had a dedicated GPS device, though, and it ran Windows
CE and I don't think it could do what I had in mind. My Android phone
forgot about this whole topic. :-)
Recently, it came up on twtxt again. So let's give it a shot!
then shows you some basic info, like distance and time -- that's already
Really nice: You can export your tracks as GPX or KML files. That means
the moment, I just view them using GPXSee:
Lyse on twtxt pointed me to OsmAnd -- and it turns out there's a bunch
of different programs called that. One of them is "Maps & Offline GPS":
This is actually pretty intruiging. I don't have mobile internet access,
apps. With that OSM app, though, I could -- in theory, if I bought the
full version. Hey, it's capitalism, nothing's free, of course.
Other than GPXSee, none of that is Free Software. (One of my major
Anyway. Let's see what fun things I'm going to do with the GPX files I'm
now going to collect.
Hey, that's the first time that I use my smartphone as something else
than "mobile telephone" or "basic camera"! Welcome to 2022.
There are probably mirrors already, but it can't hurt to have another
A while ago, I added an Atom feed for this gopherlog. I made a mistake
n the script that creates it, whoops. The entry IDs were not conforming
to the tag URI spec:
fetch that feed. :-)  As to not cause duplicates, old IDs will remain
the same (i.e., slightly broken), only new IDs will be correct.
(That's also an indication of how little it matters. Feed readers are
very forgiving in that regard.)
While we're at it, the script now also properly escapes <, >, and &, and