Glad that assert_matches!() is finally stable. Pulling in a dependency for that functionality never felt good, nor having to provide an elaborate format-string every time, just to get more information than “should’ve been true, but was false”…
Glad that assert_matches!() is finally stable. Pulling in a dependency for that functionality never felt good, nor having to provide an elaborate format-string every time, just to get more information than “should’ve been true, but was false”…


Alt+F3 can also work (possibly in addition to Alt+Space)…


Yeah, up to a month ago at $DAYJOB, it was sacrilegious to insinuate that perhaps we shouldn’t be using AI for every goddamn brainfart.
But the finance folks always win in the end, and now there’s more and more mails being sent to all employees, which do mention the costs of AI. No one has officially said yet that we should be mindful of our usage, but that’s definitely coming.
Same. For whatever reason, I kind of hate all cursor themes. I disliked Breeze the least, then thought about how I’d want to change Breeze to improve it, realized that would look much worse, and since then I’ve been content with Breeze.
Nah, you can have a license that says you get a cupcake and another license that says you need to give up your first-born.
And then you can mush those licenses to say that you need to give up your first-born, but you get a cupcake in return.
Unless the specific license terms contradict, this is totally possible.
AGPL is specifically for web services. For example, if Nextcloud were provided under the GPL, Amazon or the like could serve a modified version of Nextcloud without having to hand out their modifications. As far as the GPL is concerned, Amazon is the user and the software just happens to accept requests from the network.
With AGPL, those who use the software over the network are also deemed users and therefore have the right to access the source code.
I imagine, the scenario would be that the cloud service links against a library under the supposed new license.
And then, even if you’re just using the cloud service over the network, you can demand changes to the source code of that library to be open-sourced.
I imagine, it’s just too much of a niche and practically not enforceable anyways.
You would need to somehow know that a web service is a using a modified version of your library, then you’d be able to demand those library changes to be open-sourced.
And well, just in general, covering all kinds of niche use-cases isn’t terribly healthy for open-source licenses, because each modification is something that can be challenged in court and which might be incompatible with other licenses.
Ultimately, a library under such a specialty license would probably not see much use either. You could only really depend on it in AGPL applications. And at some point, you do have to ask yourself, if it’s even useful to develop your library then.
Yeah, certainly not uncommon for dictators to murder people on one side, but portray themselves as loving animals on the other…
Yeah, the long explanation: https://en.wikipedia.org/wiki/Adolf_Hitler_and_vegetarianism
Had a refinement yesterday, where we decided that we should add all tickets of an epic individually into the milestone (except for two).
And for whatever reason, our project manager had decided to use the in-browser split view and was struggling against that, but also just was about to do it in some cumbersome way. I think, he wanted to manually compare the list of issues in the epic vs. the milestone.
Either way, I could tell that he’d need 10+ seconds to even get started. And telling him how to do it would probably take equally long. So, I just open each issue of the epic in a new tab and check on each tab that the issue is in the milestone or add it, then close the tab. And yep, I was long done when he was still trying to find the issue list for the milestone.
That was certainly one of those moments. 🫠
He isn’t entirely familiar with that issue tracking UI, so it’s fine, and of course, it is my job to be good with computers and all that, but still felt wild that he could’ve easily needed ten times as long to do the same thing.
Last week, some LLM bot commented under one of our issues and it became apparent pretty quickly, that it is a bot. So, I went to report it (incredibly the report menu did say they want reports for bots).
I filled out the reporting form probably five times in total, trying at different times of the day. Every time, I got an error 500 (Internal Server Error) as response.
Later, I checked my mails, and saw that actually two of my reports did go through, meaning I created two tickets on their side.
What those mails also said: They’re very sorry, if it takes longer, since they’re currently experiencing a higher number of reports.
Gee, I wonder why.


Seriously, though, when you work in IT, you constantly use VPNs as basic infrastructure, just to connect devices into larger networks. It is such a fundamental technology that the Linux kernel – the core of the operating system – ships an implementation (WireGuard).
Trying to regulate that is akin to regulating cables. Sure, cables can be used to access things you might not want. But good luck writing a law that prohibits the use of cables only specifically for the things you don’t want, without being so complex that it results in tons of bureacracy for all kinds of organizations.
And even then, it would necessarily lead to legitimate use-cases being prohibited, because you often cannot, and really should not be able to, see the traffic that users send over the infrastructure you provide them.
Yeah, I do kind of hate the word “train” for that reason. It just makes it sound like the animal is braindead and all the effort was on the trainer’s side.
In reality, it’s much more of a communication problem. You need to explain to the animal without using speech that you will reward it for a specific action. And then you need to explain that you will do this repeatedly and not just today either. Well, and the animal has to actually want whatever reward you’re giving it, too.
So much training advice seems to just boil down to communicating clearly and not breaking the contract of “do the thing → get reward”…
The funny part is that upon reading your question, I figured surely the Wikipedia page would have that information. Then I saw that it said in the first few words:
Xbox (stylized as XBOX)[[2]](https://www.theverge.com/news/931918/microsoft-xbox-rebrand-caps)
…which links back to the same article. Which is how I found out that the article answers your question. 🙃
The use of all caps for Xbox is a return to original form, though. Microsoft’s first Xbox logo for its console was all caps, and the company has favored using similar capped versions for the Xbox 360, Xbox One, and Xbox Series X / S console logos.


It’s a reference to another Microsoft classic: https://www.windowscentral.com/software-apps/microsoft-caught-plagiarizing-graphics-with-ai-slop-microsoft-continvoucly-morged-my-diagram-there-for-sure
Apparently, that’s American English. And for whatever reason, it’s the British that are less hoity toity about it:
Yeah, differentiating between multiplications vs. divisions and additions vs. subtractions doesn’t make sense, because they’re the same thing respectively, just written differently.
When you divide by 3, you can also multiply by ⅓.
When you subtract 7, you can also add -7.
There is one quirk to be aware of, though. When people notate a division with a long horizontal line, that implies parentheses around both of the expressions, top and bottom.
Those are actually two different etymologies/meanings. Amazingly, the word “impregnable” itself has two meanings, which are kind of the opposite of each other.
See etymology 1 and 2 here: https://en.wiktionary.org/wiki/impregnable
For “impregnate”, it lists the meaning “to fill pores or spaces with a substance” under the same etymology as knocking someone up (which is etymology 2 above): https://en.wiktionary.org/wiki/impregnate