JMP: Mitigating MITMs in XMPP
In October 2023, Jabber.ru, “the largest Russian XMPP messaging service”, discovered that both Hetzner and Linode had been targeting them with Machine-In-The-Middle (MITM) attacks for up to 6 months. MITM attacks are when an unauthorised third party intercepts traffic intended for someone else. At the point of interception, the attacker can inspect and even modify that traffic. TLS was created to mitigate this; all communication between the two parties is encrypted, so the third party sees … ⌘ Read more
Erlang Solutions: Avoiding Common Startup Tech Mistakes
When you’re moving quickly in a startup, taking shortcuts in your tech stack is tempting. A quick workaround here, a temporary fix there, with plans to tidy it all up later. But later can easily turn into never.
Those early decisions, however small they seem, have a habit of sticking around. Over time, they slow you down, create technical debt, and make it harder to scale.
This blog looks at how to avoid common startup tech mistakes b … ⌘ Read more
Prosodical Thoughts: Prosody 13.0.2 released
We are pleased to announce a new minor release from our stable branch.
This update addresses various issues that have been noticed since the previous release, as well as a few improvements, including some important fixes for invites. Some log messages and prosodyctl commands have been improved as well.
A summary of changes in this release:
Fixes and improvements- mod_storage_internal: Fix queries with only start returning extra items
- mod_invites_register: Stric … ⌘ Read more
Debian XMPP Team: XMPP/Jabber Debian 13 Trixie News
Debian 13 “Trixie” full freeze has started 2025-05-17, so this is
a good time to take a look at some of the features, that this release
will bring. Here we will focus on packages related to XMPP, a.k.a.\
Jabber.
XMPP is a universal communication protocol for instant messaging, push
notifications, IoT, WebRTC, and social applications. It has existed sin … ⌘ Read more
Erlang Solutions: The Importance of Digital Wallet Security
Digital wallets have transformed how people pay and how businesses get paid. With more consumers choosing contactless and mobile transactions, offering these payment options is part of staying relevant.
That’s why your business needs to understand digital wallet security– how it works, where the risks lie, and what it takes to protect customer data and payment information.
In this guide, we’ll walk through how digital wall … ⌘ Read more
Gajim: Gajim 2.2.0
This release brings three new features: message retraction, blocking participants in group chats, and updated support for modern group chat avatars. Thank you for all your contributions!
Gajim 2.2 comes with support for retracting messages via XEP-0424: Message Retraction. This allow you to retract your messages, if you’ve mistakenly sent it to the wrong recipient or group chat. Please note that your counterpart needs to support … ⌘ Read more
Erlang Solutions: Common MVP mistakes: How to build smart without overbuilding
A Minimum Viable Product (MVP) is your first real signal to the market, your team, and your investors that you’re solving the right problem in the right way. While it’s often mentioned alongside terms like Proof-of-Concept (PoC), prototype, or pilot, an MVP plays a distinct role: validating real value with real users.
Avoiding common missteps early sets the stage for faster itera … ⌘ Read more
The XMPP Standards Foundation: The XMPP Newsletter April 2025
XMPP Newsletter Banner
Welcome to the XMPP Newsletter, great to have you here again!
This issue covers the month of April 2025.
Like this newsletter, many projects and their efforts in the XMPP community are a result of people’s voluntary work. If you are happy with the services and software you may be using, please consider saying thanks or help these project … ⌘ Read more
Erlang Solutions: Looking Forward to ElixirConf EU 2025
ElixirConf EU 2025 is only two weeks away! Soon, it will once again be time for the Elixir community from Europe and beyond to come together, connect, and learn from each other about Elixir and its ecosystem. There will be dozens of talks from speakers across the community, training opportunities, and more.
This year’s event is being held in Kraków, Poland from May 15-16, with optional training available o … ⌘ Read more
Erlang Solutions: Reduce, Reuse… Refactor: Clearer Elixir with the Enum Module
“When an operation cannot be expressed by any of the functions in the Enum module, developers will most likely resort to reduce/3.”
From the docs for Enum.reduce/3
In many Elixir applications, I find
Enum.reduceis used frequently.Enum.reducecan do anything, but that doesn’t mean it should. In many cases, otherEnumfunctions are more readable, practically as fast, and easier … ⌘ Read more
Erlang Solutions: Erlang Solutions’ Blog round-up
The tech world doesn’t slow down, and neither do we. From the power of big data in healthcare to keeping you up-to-date about fintech compliance, our latest blog posts explore the important topics shaping today’s digital world.
Whether you’re leading a business, building software, or just curious about the future of tech, check out what the Erlang Solutions team has been talking about.
Understanding Big Data in Healthcare no … ⌘ Read more
Dino: Dino 0.5 Release
Dino is a secure and open-source messaging application.
It uses the XMPP (Jabber) protocol for decentralized communication.
We aim to provide an intuitive and enjoyable user interface.
The 0.5 release improves the user experience around file transfers and includes two completely reworked dialogs.
Improved file sharingThe way file transfers are currently done in the XMPP ecosystem is limited in functionality a … ⌘ Read more
Ignite Realtime Blog: New releases for Tinder and Whack!
The IgniteRealtime community is happy to announce releases for two of its projects! Both are for XMPP-libraries that we produce.
Tinder is a Java based XMPP library, providing an implementation for XMPP stanzas and components. Tinder’s origins lie in code that’s shared between our Openfire and Whack implementations. The implementation that’s provided in Tinder hasn’t been written aga … ⌘ Read more
Erlang Solutions: Elixir for Business: 5 Ways It Transforms Your Processes
Elixir is a lightweight, high-performance programming language built on the Erlang virtual machine. It’s known for its simple syntax and efficient use of digital resources. But how does this translate to business benefits?
Elixir is already powering companies like Discord and Pinterest. It helps businesses reduce costs, improve process efficiency, and speed up time to market.
Here are five reasons why Elixi … ⌘ Read more
The XMPP Standards Foundation: The XMPP Newsletter March 2025
XMPP Newsletter Banner
Welcome to the XMPP Newsletter, great to have you here again!
This issue covers the month of March 2025.
Like this newsletter, many projects and their efforts in the XMPP community are a result of people’s voluntary work. If you are happy with the services and software you may be using, please consider saying thanks or help these project … ⌘ Read more
Prosodical Thoughts: Prosody 13.0.1 released
We are pleased to announce a new minor release from our stable branch.
As is the tradition with software, here is our first patch release following
shortly behind our major 13.0.0 release announced a few weeks ago. It fixes
some important bugs that were discovered after the release.
Many thanks to everyone who reported issues and helped with testing the fixes
for this release. We appreciate it!
For those of you on 0.12.x who haven’t upgraded yet, skip 13.0.0 and jump
stra … ⌘ Read more
XMPP Interop Testing: Enabling Tests
Our project creates a framework that allows anyone to easily add XMPP standards compliance tests to the test phase of
their build pipeline. Prior to our most recent release (version 1.5.0) a test execution would basically run all tests
in the test suite. We provided an option to exclude certain tests, but in essence, the bulk of tests would execute.
This behavior is generally preferable when testing an XMPP server implementation. A benefit of exclusion-based
… ⌘ Read more
Erlang Solutions: Elixir Tutorials
Elixir is a functional language that combines modern syntax, broad metaprogramming capabilities and the power of BEAM – Erlang Virtual Machine. It has a vast community which is constantly growing due to its resilient concurrency model and programmer-friendly approach. Our tutorials are focused on showcasing language capabilities and helping any newcomer gain enough knowledge to start actively utilising Elixir in their projects.
In this sec … ⌘ Read more
Kaidan: Kaidan 0.12.2: Message Removal and Bubble Fixes
Kaidan 0.12.2 fixes some bugs.
Have a look at the changelog for more details.
Bugfixes:
- Fix removing corrected message (melvo)
- Fix showing message bubble tail only for first message of sender (melvo)
- Source code (.tar.xz) ( sig signed with [04EF … ⌘ Read more
Kaidan: Kaidan 0.12.1: Voice Message and Password Change Fixes
Kaidan 0.12.1 fixes some bugs.
Have a look at the changelog for more details.
Bugfixes:
- Do not highlight unpinned chats when pinned chat is moved (melvo)
- Fix deleting/sending voice messages (melvo)
- Fix crash during login (melvo)
- Fix opening chat again after going back to chat list on narrow window (melvo)
- Increase tool bar height to fix avatar not being recognizable (melvo)
- Fix width of sear … ⌘ Read more
ProcessOne: ejabberd 25.03
Release Highlights:
- Matrix Gateway Gets Room Support
- Multiple Simultaneous Password Types
- Execute API Commands Using XMPP Client
If you are upgrading from a previous version, please check the [changes in SQL schemas](https://www.process-one … ⌘ Read more
Ignite Realtime Blog: It’s time for real interoperability. Let’s make it happen
When I explain to others what I do for a living, I often ask why it is that we are not surprised that one can use a Gmail account to send an email to someone who uses an Outlook account, yet many people fully accept that you can’t send a message to someone using WhatsApp from a Telegram account. We’re not surprised that we can use our phone to set up a call with someone who uses a differe … ⌘ Read more
ProcessOne: Supporting XMPP Standard Foundation’s open letter to Meta for true interop
The XMPP Standards Foundation (XSF) has published an open letter to Meta, asking them to support … ⌘ Read more
Mathieu Pasquet: Poezio 0.15 / 0.15.1
About three years since the last version, poezio 0.15 (and 0.15.1 to address
a small packaging mishap, version numbers are cheap) was released yesterday!
Poezio is a terminal-based XMPP client which aims to replicate the
feeling of terminal-based IRC clients such as irssi or weechat; to
this end, poezio originally only supported multi-user chats.
Not a lot this time around… Maybe next time?
- A new
moderateplugin (for [XEP-0425](http://xmpp.org/ex … ⌘ Read more
Erlang Solutions: My Journey from Ruby to Elixir: Lessons from a Developer
Why I Looked Beyond RubyFor years, Ruby was my go-to language for building everything from small prototypes to full-fledged production apps. I fell in love with its elegance and expressiveness and how Ruby on Rails could turn an idea into a working web app in record time. The community—with its focus on kindness and collaboration—only deepened my appreciation. In short, Ruby felt like home.
… ⌘ Read more
Mathieu Pasquet: slixmpp v1.10
This new version does not have many new features, but it has quite a few
breaking changes, which should not impact many people, as well as one important
security fix.
Thanks to everyone who contributed with code, issues, suggestions, and reviews!
SecurityAfter working on TLS stuff, I noticed that we still allowed unencrypted SCRAM to be negociated, which is really not good.
For packagers who only want this security fix, the commit fd66aef38d48b6474654cbe87464d7d416d6a5f3 should app … ⌘ Read more
Erlang Solutions: Meet the team: Lorena Mireles
Lorena Mireles is an influential force in the BEAM community, known for her work as an Elixir developer and as a dedicated member of the Code BEAM America programme committee. She’s been instrumental in fostering connections and shaping discussions that help drive the future of Elixir.
In this interview, Lorena opens up about her journey with Elixir, her role on the committee, and what makes the BEAM community so unique.
.
Long story short, there are at least two major changes warranting the new number (and plenty of other things, read on!):
- switching the cython jid implementation for a rust one, which will be faster and more correct
- removing the xmpp.process() method (planned since the 1.8.0 release)
Special thanks to nicoco … ⌘ Read more
Erlang Solutions: Top 5 IoT Business Security Basics
IoT is now a fundamental part of modern business. With more than 17 billion connected devices worldwide, IoT business security is more important than ever. A single breach can expose sensitive data, disrupt operations, and damage a company’s reputation.
To help safeguard your business, we’ll cover five essential IoT security basics: data encryption, strong password policies, regular security audits, employee awareness tr … ⌘ Read more
Erlang Solutions: Highlights from CodeBEAM Lite London
The inaugural CodeBEAM Lite London conference was held at CodeNode last month, featuring 10 talks, 80 attendees, and an Erlang Solutions booth. There, attendees had the chance to set a high score in a BEAM-based asteroid game created by ESL’s Hernan Rivas Acosta, and win an Atari replica.
Learning from and networking with experts across the BEAM world was an exciting opportunity. Here are the highlights from the talks at the event.

- Round corners of cards and buttons (melvo)
- Add fading in/out hover effect to map previews (melvo)
- Collapse contact profiles by default if they have more than 3 entries (melvo)
- Show colored check mark for … ⌘ Read more
Erlang Solutions: DORA Compliance: What Fintech Businesses Need to Know
The Digital Operational Resilience Act (DORA) is now in effect as of 17th January 2025, making compliance mandatory for fintech companies, financial institutions, and ICT providers across the UK and EU. With over 22,000 businesses impacted, DORA sets clear expectations for how firms must manage operational resilience and protect against cyber threats.
As cybercriminals become more sophisticated, regul … ⌘ Read more
ProcessOne: Join our community: Free Memberships now available
We’re excited to announce a new way to connect with our community at Process-One. As of today, we’ve enabled free memberships on our site, giving you even more ways to stay updated, interact, and engage with our content.
By becoming a member, you get access to specific benefits, including:
- The ability to engage with our content in new ways, such as commenting on posts, participating in discussions like … ⌘ Read more
Mathieu Pasquet: XMPP Summit 27 and FOSDEM 25 Report
Here is an account of my trip to FOSDEM & XMPP Summit this year.
Note: for privacy reasons on the broader internet, I am keeping names out of
my description of the events, but my goal here is not to diminish anyone’s merit.
I use a bit of acronyms and jargon in this article because it talks about technical things,
so I will define them here:
- XMPP: eXtensible Messaging and Presence Protocol, the internet standard for
instant messaging and much more. … ⌘ Read more
Erlang Solutions: Women in BEAM
In this post, I will share the results of the Women in BEAM 2024 survey. But first, I would like to share my experience in the BEAM community to understand the motivation behind this initiative.
I’ve been working with Elixir since 2018, but my interest in it wasn’t driven by technical advantages—it was sparked by my experience at my first ElixirConf in Mexico.
Since 2017, I’ve been involved in initiatives supporting women in tech, frequently attending events t … ⌘ Read more
Erlang Solutions: 5 Reasons to Build Scalable and Concurrent Applications with Elixir
Businesses can’t afford sluggish, unresponsive systems, especially when dealing with high volumes of concurrent requests. Slow applications lead to lost revenue, frustrated users, and missed opportunities. This is where Elixir comes in.
Purpose-built for scalability and concurrency, Elixir runs on the battle-tested Erlang Virtual Machine (BEAM), a technology trusted to powe … ⌘ Read more
Erlang Solutions: Understanding Digital Wallets
Digital wallets, once considered futuristic, have now become essential tools for both consumers and businesses. But what are digital wallets, and why should you care about them? Customer expectations are changing. Many companies are turning to them to streamline transactions and enhance the customer experience
This guide unpacks the fundamentals of digital wallets, highlighting their benefits, market trends, and implications for businesses.
**W … ⌘ Read moreProcessOne: How Big Tech Pulled Off the Billion-User Heist
For many years, I have heard countless justifications for keeping messaging systems closed. Many of us have tried to rationalize walled gardens for various reasons:
- Closed messaging systems supposedly enable faster progress, as there’s no need to collaborate on shared specifications or APIs. Y … ⌘ Read more