MS Outlook is the joke.
Just another Swedish programming sysadmin person.
Coffee is always the answer.
And beware my spaghet.
MS Outlook is the joke.
I just do the Swedish accent thing and pronounce it forge-yo (like in yo-yo, not the greeting proclamation)
GitLab has been working on support for ActivityPub/ForgeFed federation as well, currently only implemented for releases though.
Mercurial does have a few things going for it, though for most use-cases it’s behind Git in almost all metrics.
I really do like the fact that it keeps a commit number counter, it’s a lot easier to know if “commit 405572” is newer than “commit 405488” after all, instead of Git’s “commit ea43f56” vs “commit ab446f1”. (Though Git does have the describe format, which helps somewhat in this regard. E.g. “0.95b-4204-g1e97859fb” being the 4204th commit after tag 0.95b)
It’s somewhat amusing how Itanium managed to completely miss the mark, and just how short its heyday was.
It’s also somewhat amusing that I’m still today helping host a pair of HPE Itanium blades - and two two-node DEC Alpha servers - for OpenVMS development.
In general, browser benchmarks seem to often favor Firefox in terms of startup and first interaction timings, and often favor Chrome when it comes to crunching large amounts of data through JavaScript.
I.e. for pages which use small amounts of JavaScript, but call into it quickly after loading, Firefox tends to come out on top. But for pages which load lots of JavaScript and then run it constantly, Chrome tends to come out on top.
We’re usually talking milliseconds-level of difference here though. So if you’re using a mobile browser or a low-power laptop, then the difference is often not measurable at all, unless the page is specifically optimized for one or the other.
There’s a bunch of extensions that allow you to switch user-agent easily, I personally use this one, it includes a list of known strings to choose between as well.
They used to also use the unreleased version 0 of shadow DOM for building the Polymer UI, which - being a Chrome-only prototype - understandably didn’t work on Firefox, and therefore instead used a really slow Javascript polyfill to render its UI.
I haven’t checked on it lately, but I imagine they must’ve changed at least that by now.
One thing you can test is to apply a Chrome user-agent on Firefox when visiting YouTube. In my personal experience that actually noticeably improves the situation.
The EU AI act classifies AI based on risk (in case of mistakes etc), and things like criminality assessment is classed as an unacceptable risk, and is therefore prohibited without exception.
There’s a great high level summary available for the act, if you don’t want to read the hundreds of pages of text.
They couldn’t possibly do that, the EU has banned it after all.
Go has a heavy focus on simplicity and ease-of-use by hiding away complexity through abstractions, something that makes it an excellent language for getting to the minimum-viable-product point. Which I definitely applaud it for, it can be a true joy to code an initial implementation in it.
The issue with hiding complexity like such is when you reach the limit of the provided abstractions, something that will inevitably happen when your project reaches a certain size. For many languages (like C/C++, Ruby, Python, etc) there’s an option to - at that point - skip the abstractions and instead code directly against the underlying layers, but Go doesn’t actually have that option.
One result of this is that many enterprise-sized Go projects have had to - in pure desperation - hire the people who designed Go in the first place, just to get the necessary expertice to be able to continue development.
Here’s one example in the form of a blog - with some examples of where hidden complexity can cause issues in the longer term; https://fasterthanli.me/articles/i-want-off-mr-golangs-wild-ride
Go really does do well in the zero-to-hero case, that’s for certain. Unfortunately it doesn’t fare nearly as well in terms of ease when it comes to continued development.
Especially if you - like Microsoft - consider “Unicode” to mean UTF-16 (or UCS-2) with a BOM.
Do you have WebP support disabled in your browser?
(Wasn’t aware my pict-rs was set to transcode to it, going to have to fix that)
To be fair, having to interact with MS Teams with any part of your body is painful.
Been using the KeyDB fork for ages anyway, mainly because it supports running in a multi-master / active-active setup, so it scales and clusters without the ridiculousness that is HA Redis.
The first official implementation of directly connecting WhatsApp to another chat system - using APIs built specifically for purpose instead of third-party bridges - was indeed done against the Matrix protocol, as part of a collaboration in testing ways to satisfy the interoperability requirements of the EU Digital Services Act.
So not a case of a third-party bridge trying to act as a WhatsApp client enough to funnel communication, but instead using an official WhatsApp endpoint developed - by them - explicitly for interoperation with another chat system.
I think the latest update on the topic is the FOSDEM talk that Matthew held this February.
Edit: It’s worth noting that the goal here is to even support direct E2EE communication between users of WhatsApp and Matrix, something that’s not likely to happen with the first consumer-available release.
Well, the first tests for interconnected communication with WhatsApp were done with Matrix, so that’s a safe bet.
Remember to join the !advent_of_code@programming.dev community while you’re at it