I don't understand why technologies need to distinguish between synchronous (chat) and asynchronous (email) communication. There is certainly a difference in UI, but couldn't the supporting technology be the same? Couldn't we build an email app on top of a chat server? Or a chat app on top of email (DeltaChat does this). Would it make sense for a company to pick one chat/email platform and use it for both sync and async communication? (assuming the platform has both sync and async applications)

The Alot is an amazing creature. Just discovered this article during my roaming through terminal email clients.


I'm extremely impressed by mapscii. It's an viewer for your terminal. It supports zooming and moving with both the keyboard and the mouse.


I'm trying to wrap my mind around how to make mbsync work well with gmail.

It seems that mbsync creates a "Starred" folder, but it also attaches the important modifier onto them. Locally, it seems to make sense to not have the Starred folder and just filter to important emails.

Also, on gmail, I see the same email in my inbox and in the starred view. This means the email is duplicated by mbsync, right? Seems bad.

Does anybody have ideas for how to use mutt and gmail effectively together?

I wrote this explanation of for the non-technical user. It's not very in-depth, nor very long. I'm not totally satisfied with how I wrote it, so I may rework it in the future when I have more motivation.


Let me know of any problems or issues you find.

I've seen discussions on about and , but I think got discarded offhand for some reason.

I'd like to know why so many people have gravitated towards Matrix, but not many towards XMPP. Also, why do Matrix detractors not advocate XMPP?

In particular, I'm concerned with the experience for non-technical users as well.

@sir, I'd appreciate your input, since I know you advocate IRC; is there anything specifically wrong with XMPP?


I've been using for getting to about a year now. It's been a good experience, since I've stuck with using Synapse and Riot (the reference server and client), but everything else is incomplete. In addition, Synapse is a memory hog.

I've also become aware of , which seems to be a much simpler protocol. As I'm googling around, I've seen articles debunking XMPP myths, but then I also see a bunch of articles of companies moving away from , because it's "outdated".


Maybe I should know this by now, but there is one thing I don't understand about the :

What is the difference between all the services (e.g. between and ). Obviously PixelFed is for images and thus has an accordingly catered UI, but does the server also need to give special consideration to images? Isn't everything ? Does each service have to extend AP to support its type of content?

Ahhh...this should make me less distracted. I just made a script that removes both the suggested videos sidebar and the comment section on . No more clickbait from that vector.

Any enthusiasts on the ? The game aligns well with decentralization because it is officiated by the players on the field rather than by referees appointed by a governing authority. Even at the highest level, when there are observers, they only give input when appealed to by the players.

Anyway, I just play because it's a ton of fun and was easy to get into. The systems and strategies are a lot more complex than I initially thought. It's fascinating really.

Type system idea: the three type composition operators are ^ (product), | (sum), and ~ (name). Structs are just product types with each part having a name.

type point = x~int ^ y~int

type bool = true~() | false~()

type shape =
circle~(c~point ^ r~int)
| square~(tl~point ^ br~point)

Should ^ be commutative? If each side is named, then I would want that, but that seems a little inconsistent.

x~int ^ y~int === y~int ^ x~int
x^y !== y^x


Just saw this article on OCaml Planet - I will have to watch these videos sometime.


Is there an open source client for Vimeo? There seem to be a lot for YouTube, but I didn't get any results for Vimeo.

I think I've had enough of Arch. Tomorrow I will probably test out Guix on another partition. If I like it enough, maybe I'll get rid of Void, Gobo, and Arch and convert to a Guix-only system. If I don't like it, I'll finally put NixOS on my laptop and call it a century.

Installing on is a mess. Usually I prefer to install packages through pacman or yay, but my searching seems to suggest that it's easier to get it another way.

I'm not sure I like Arch that much. It's not about Arch's minimalism, which I am a fan of. On , I expect a newly installed package to work immediately (though not necessarily have every possible feature). On Arch, WeeChat, Haskell, and other packages were giving me headaches.

Anybody agree? Is my approach wrong?

For someone who has gone through the ordeal learning and is now fairly comfortable with it, how hard is to try out? Is it mature enough yet? Are there any significant advantages?

This sounds interesting.

Typedefs - Typedefs is a programming language agnostic, algebraic data type definition language, written in Idris.


#functionalProgramming #fp #programmingLanguages

Wedding Vows Show more

Show more
Functional Café

functional.cafe is an instance for people interested in functional programming and languages.