Latest Comments

Here's a list of the most recent comments. Thank you to everyone who takes the time to say something!

Comment on What's going on with User Agent strings?:

There is a method for identifying browser/platform that is much more reliable than UA/CH headers. It’s browser fingerprinting via feature testing. One needs not look much further than the MDN compatibility tables to devise a method of detecting specific browsers. I’m willing to bet that there’s multiple bits of information unique to Chromium on Windows 11 too.


The EFF’s panopticlick is opensource and the anti-fingerprinting code of browsers is opensource. There’s likely many relevant projects easily discoverable on Github as well. For proprietary methods, spending some time reverse engineering WAFs such as Cloudflare can’t hurt. Cloudflare goes as far as to weigh low level networking protocol parameters into it’s bot score rating system,i.e., TCP and TLS properties such as cipher parameters and protocol extensions (signature algorithms). The browser/platform/CPU combination of your system will result in different TLS configuration and Cloudflare does a good job at using AI to learn/filter it’s traffic.

Some random site (, correctly identifies the Linux kernel version I’m using, etc. etc. I also think Nmap deserves a mention.

There’s more than enough information to correctly identify the browser/platform. There may very well be enough information to make fingerprinting more reliable than IP addresses.

Comment on Getting Audio Visualizations working with Web Audio API:

I am having the same issue as Ollie.

I can’t get this to work for an MP3 stream. I was able to get it working with a static MP3 file stored on my server. This problem exists only on Safari.

createMediaElementSource() seems to be buggy in Safari. Specifically, the frequencyBinCount() returns just an array of zeroes.

Is anyone else experiencing this? I will try using the adapter.js shim, but I was hoping for a native Safari solution.

Comment on Changelog (7.10 - 7.12.1):

Hey Andre, I think about it a lot actually! There’s a lot in the source though, some of which I don’t really want to make public. Some career/salary information, some personal pages for family, stuff like that (some of that stuff is stored in the database, but I have some custom pages with the data in the source).

I was thinking about pulling out different parts of the project, making them their own repos, and open sourcing those. I’ll definitely write about it if I decide to do it.

Comment on Changelog (7.10 - 7.12.1):

Never thought about publishing the source of your “server”? I just came along your site while I was thinking what my next steps for my personal site will be.

Especially I was looking for solutions which support webmentions out of the box and this is why Google led me to your site.

Comment on Re: Are Outdoor Mask Mandates Still Necessary?:

I agree with all of these points! Especially about wearing them to protect from pollen. It looks like the CDC is going to release new guidance soon on wearing masks outdoors, so it’ll be interesting to see that. I’d prefer if people just continue wearing them out of an abundance of caution, there doesn’t seem to be any harm in doing so.