Better Bluetooth Sound Quality on Microsoft Teams in Windows 11

By on   1 comment 200 words
Screenshot of a Windows setting screen.

Here's the problem. The current Bluetooth spec doesn't allow high-quality audio to be sent to a headset when it is also sending audio from the microphone. Instead, it switches to the Hands Free Profile (HFP) which only streams low quality mono sound. It makes Teams calls sound like garbage. The usual solution in Google Meet, […]

Continue reading →

How to use the new <search> element with WordPress

By on   3 comments 200 words
The Logo for WordPress

There's a new HTML element in town! You can now use <search> to semantically mark up a search box. It's great for letting screen-readers and other assistive tech know what a form does. It's only supported in WebKit for now - other browsers will get it eventually. The WordPress default search widget hasn't yet updated, […]

Continue reading →

Why is it so hard to watch foreign TV in the streaming era?

By on   15 comments 400 words, read ~112 times.
A giant red letter N. The Netflix logo.

It looks like it's the end of the party for streaming services. Prices are going up, choice is going down, and the quality is declining. Despite all the hype about how transformative streaming would be for the industry - there's one thing which never really seemed to take off. It's almost impossible to find "foreign" […]

Continue reading →

False Friends - HTML Elements which are also Top Level Domains

By on   2 comments 350 words, read ~158 times.
Me: Which TLDs have the same name as valid HTML5 elements? ChatGPT: As of my last knowledge update in September 2021, there are two top-level domains (TLDs) that have the same name as valid HTML5 elements: .dev: This TLD corresponds to the HTML5 element. .app: This TLD corresponds to the HTML5 element. Please note that this information is based on the state of TLDs as of September 2021. There might have been updates or changes after that date, so it's always a good idea to check official sources or domain registrars for the most current information.

In linguistics, a "False Friend" is a word which looks similar in multiple languages, but means something different in each of them. For example the word "gift" in English means "a present", in German means "poison", and in Norwegian it means "married". The Internet uses Top Level Domains (TLD) to organise information into hierarchies. This […]

Continue reading →

Book Review: The Internet Con - How to Seize the Means of Computation by Cory Doctorow

By on   600 words, read ~126 times.
Book cover for the Internet Con. It looks like a shattered phone screen.

This is beloved firebrand Cory doing what he does best. Rallying the rebellion with righteous indignation and a no-nonsense approach to fixing technology's ills. If you've read any of his fiction, or listened to him talk, you'll know what to expect. An overview of how big tech has screwed us over and the consequences of […]

Continue reading →

This blog is now on the Fediverse!

By on   4 comments 700 words, read ~211 times.
Setting screen showing the blog being enabled.

You can now have this blog federated to your social media site by following @blog@shkspr.mobi If you're on Mastodon, it should look something like this: You should be able to follow it on Lemmy, kBin, PixelFed, and some cool social network I've never heard of. How This blog runs on WordPress. Thanks to the tireless […]

Continue reading →

Using Selenium & Chrome to automatically download Blob files

By on   350 words
Logo of the Python programming language.

The Selenium WebDriver is a brilliant way to programmatically interact with websites. You can write little Python scripts which can click around inside browser windows and do "stuff". I use it to download a file generated by a Javascript Blob and automatically save it to disk. Here's how. Set up the WebDriver After you've installed […]

Continue reading →

Getting WordPress / JetPack Subscriber Counts via the API... the hard way

By on   600 words
The Logo for WordPress

People can subscribe to receive my blog via email. This is managed by the JetPack plugin. I want to be able to display something like "Join 1,234 subscribers and receive updates via email". So, how do I get the subscriber count from the API? As documented in the JetPack HTTP API, it is possible to […]

Continue reading →

I think "Law 3.0" is OK, actually

By on   11 comments 1,100 words, read ~187 times.
An electric car charging at a public charger.

I recently came across a post about "The Energy Bill 2023 and the Fusion of Technology and Law - We are going to be governed under 'Law 3.0', and we won't like it one little bit". It is a superficial look at the "horrors" of being governed by technical measures. It starts off reasonably enough […]

Continue reading →

I think I kind of hate lazy loading

By on   14 comments 300 words, read ~6,655 times.
An icon representing a broken image.

Yesterday I was on a train. I clicked on a link and my browser loaded a long article for me to read. Halfway through reading it, the train went into a tunnel and I lost signal. That meant I couldn't see the images on the other half of the page for the rest of the […]

Continue reading →

␃␄