The XMPP Standards Foundation: The XMPP Newsletter September 2023
Welcome to the XMPP Newsletter, great to have you here again! This issue covers the month of September 2023.
Many thanks to all our readers and all contributors!
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 projects! Interested in supporting the Newsletter team? … ⌘ Read more
Erlang Solutions: Type-checking Erlang and Elixir
The BEAM community couldn’t be more varied when it comes to opinions about static type systems. For some they’re the most desired feature of other functional languages which we miss. Others shun them and choose our ecosystem exactly because, and not despite the fact that it doesn’t force the perceived overhead of types. Some others still worry whether static types could be successfully applied on the Erlang virtual machine at all.
Over the years, … ⌘ Read more
Erlang Solutions: Introducing Wardley Mapping to Your Business Strategy
Since it’s creation in 2005, Wardley Mapping has been embraced by UK government institutions and companies worldwide. This is thanks to its unique ability to factor both value and change into the strategising process. It’s a powerful, fascinating tool that far more organisations across the world should be implementing today to make key choices for their future growth.
Ahead of my wider Wardley Mapping st … ⌘ Read more
Erlang Solutions: Our experts at Code BEAM Europe 2023
The biggest Erlang and Elixir Conference is coming to Berlin in October!
Are you ready for a deep dive into the world of Erlang and Elixir? Mark your calendars, because Code BEAM Europe 2023 is just around the corner.
With a lineup of industry pioneers and thought leaders, Code BEAM Europe 2023 promises to be a hub of knowledge sharing, innovation, and networking.
Erlang Solutions’ experts are working har … ⌘ Read more
Erlang Solutions: Smart Sensors with Erlang and AtomVM: Smart cities, smart houses and manufacturing monitoring
For our first article on IoT developments at Erlang Solutions, our goal is to delve into the use of Erlang on microcontrollers, highlighting and exposing its capabilities to run efficiently on smaller devices. For our inaugural article, we have chosen to address a pressing issue faced by numerous sectors- including healthcare, r … ⌘ Read more
Snikket: State of Snikket 2023: Funding
As promised in our ‘State of Snikket 2023’ overview post, and teased at the end of our first update post about app development, this post in the series is about that thing most of us open-source folk love to hate… money.
We are an open-source project, and not-for-profit. Making money is not our primary goal, but like any business we have upstream expenses to pay - to compensate for the time and specialist work we need to implement the Snikket vision. To do that, we need income.
T … ⌘ Read more
JMP: Newsletter: Summer in Review
Hi everyone!
Welcome to the latest edition of your pseudo-monthly JMP update!
In case it’s been a while since you checked out JMP, here’s a refresher: JMP lets you send and receive text and picture messages (and calls) through a real phone number right from your computer, tablet, phone, or anything else that has a Jabber client. Among other things, JMP has these features: Your phone number on every device; Multiple phone numbers, one app; Free as in Freedom; Sh … ⌘ Read more
Erlang Solutions: Diversity & Inclusion at CodeBEAM Europe
Our Pledge to DiversityAs technology becomes increasingly integrated into our lives, it’s crucial that the minds behind it come from diverse backgrounds. Different viewpoints lead to more comprehensive solutions, ensuring that the tech we create addresses the needs of a global audience.
At Erlang Solutions, we believe that a diverse workforce is a catalyst for creativity and progress. By sponsoring the Diversity & Inclusion Pr … ⌘ Read more
Erlang Solutions: Pay down technical debt to modernise your technology estate
Imagine this scenario. Your CEO tells you the organisation needs a complete tech overhaul, then gives you a blank cheque and free rein. He tells you to sweep away the old and usher in the new. “No shortcuts, no compromise!” he cries. “Start from scratch and make it perfect!”
And then you wake up. As we all know, this scenario is pure fantasy. Instead, IT leaders are faced with a constant st … ⌘ Read more
Prosodical Thoughts: Prosody 0.12.4 released
We are pleased to announce a new minor release from our stable branch.
We’re relieved to announce this overdue maintenance release containing a
number of bug fixes and also some improvements from the last few months.
Especially the prosodyctl check
tool which gained some new diagnostic
checks as well as handling of configuration option types the same way
Prosody itself does.
A summary of changes in this release:
Minor changes- core.certmanager: Update Mozilla TLS … ⌘ Read more
The XMPP Standards Foundation: The XMPP Newsletter August 2023
Welcome to the XMPP Newsletter, great to have you here again! This issue covers the month of August 2023.
Many thanks to all our readers and all contributors!
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 projects! Interested in supporting the Newsletter team? Read more … ⌘ Read more
Erlang Solutions: What businesses should consider when adopting AI and machine learning
AI is everywhere. The chatter about chatbots has crossed from the technology press to the front pages of national newspapers. Worried workers in a wide range of industries are asking if AI will take their jobs.
Away from the headlines, organisations of all sizes are getting on with the task of working out what AI can do for them. It will almost certainly do something. One survey pu … ⌘ Read more
Ignite Realtime Blog: CVE-2023-32315: Openfire vulnerability (update)
A few months ago, we published details about an important security vulnerability in Openfire that is identified as CVE-2023-32315.
To summarize: Openfire’s administrative console (the Admin Console), a web-based application, was found to be vulnerable to a path traversal attack via the setup environ … ⌘ Read more
Erlang Solutions: Future-proofing legacy systems with Erlang
Relying on outdated legacy systems often serves as the biggest hindrance to both innovation and optimisation for businesses today. Since many of these systems have been used for years, if not multiple decades, the significant costs involved with replacing a system entirely are rarely within budgets, particularly in today’s business climate.
But that doesn’t mean legacy systems should be left as is. Erlang is a resilient and p … ⌘ Read more
Profanity: Profanity 0.14.0
Apologies for the late blog post.
We have good news though! Two weeks ago we released Profanity 0.14.0!
13 people contributed to this release: Daniel Santos, @DebXWoody, @H3rnand3zzz, @ike08, @MarcoPolo-PasTonMolo, @mdosch, @pasis, @paulfertser, @shahab-vahedi, @sjaeckel, @techmetx11, @thexhr and @jubalh.
Also a big thanks to our sponsors: @mdosch, @LeSpocky, @jamesponddotco and one anonymous sponsor!
We introduced a new /privacy
command which should make it easier to find all pri … ⌘ Read more
The XMPP Standards Foundation: The XMPP Newsletter June & July 2023
Welcome to the XMPP Newsletter, great to have you here again! This issue covers the month of June & July 2023.
Many thanks to all our readers and all contributors!
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 projects! Interested in supporting the Newsletter te … ⌘ Read more
Erlang Solutions: 5 ways Elixir programming can improve business performance
Elixir is a simple, lightweight programming language that is built on top of the Erlang virtual machine. It offers straightforward syntax, impressive performance and a raft of powerful features. It uses your digital resources in the most efficient way.
This is all very well, but what does that mean in practice? Aside from impressing your web development team, what can Elixir do for your business?
In this … ⌘ Read more
Snikket: State of Snikket 2023: The Apps
As promised in our introduction to the series, welcome to the first of our ‘State of Snikket’ update posts! This installment features all the app development news you could wish for.
So what’s new in the world of Snikket apps?
UI/UXIf you’ve been following Snikket development for a while, you might remember that we were receiving UX advice on making our apps easier and more fun to use, thanks to the team at … ⌘ Read more
Snikket: State of Snikket 2023
This is our first blog post for quite a while, and the last few have all been technical updates of various kinds about the Snikket software. In fact it’s been almost two years since the last post that gave a general progress update on the Snikket project itself, so let’s fix that!
You’ll be pleased to hear that Snikket is very much alive, and although there hasn’t been much of a show to see here, a bunch of stuff has been going on backstage.
We plan to catch you up with our progres … ⌘ Read more
The XMPP Standards Foundation: Elbe-Sprint Hamburg 2023: Post-Sprint Summary
Elbe-Sprint 2023: Post-Sprint SummaryIn June the Elbe-Sprint 2023 took place in Hamburg and it was a great first experience after all the pandemic in the past years for many participants.
In this blog post we want to summarize progress we’ve made during the sprint.
First of all, many thanks to the CCCHH and their members for offerin … ⌘ Read more
Erlang Solutions: Blockchain in Sustainable Programming
The benefits of blockchain implementation across multiple sectors are well-documented, but how can this decentralised solution be used to achieve more sustainable programming?
As the effects of the ongoing climate crisis continue to impact weather patterns and living conditions across the planet, we must continue to make every aspect of our lives, from transport and energy usage to all of our technology, greener and more sustain … ⌘ Read more
Erlang Solutions: Ship RabbitMQ logs to Elasticsearch
RabbitMQ is a popular message broker that facilitates the exchange of data between applications. However, as with any system, it’s important to have visibility into the logs generated by RabbitMQ to identify issues and ensure smooth operation. In this blog post, we’ll walk you through the process of shipping RabbitMQ logs to Elasticsearch, a distributed search and analytics engine. By centralising and analysing RabbitMQ logs with Elasticsea … ⌘ Read more
Paul Schaub: PGPainless meets the Web-of-Trust
We are very proud to announce the release of PGPainless-WOT, an implementation of the OpenPGP Web of Trust specification using PGPainless.
The release is available on the Maven Central repository.
The work on this project begun a bit over a year ago as an [NLnet project which recei … ⌘ Read more
Ignite Realtime Blog: Jabber Browsing Openfire Plugin 1.0.1 released
The Ignite Realtime community is happy to announce a new release of the Jabber Browsing plugin for Openfire.
This is a plugin for the Openfire Real-time Communications server. It provides an implementation for service discovery using the jabber:iq:browse
namespace, as specified in XEP-0011: Jabber Browsing. Note that this feature is considered obsolete! The plug … ⌘ Read more
Ignite Realtime Blog: Agent Information plugin for Openfire release 1.0.1
The Ignite Realtime community is happy to announce a new release of the Agent Information plugin for Openfire.
This plugin implements the XEP-0094 ‘Agent Information’ specification for service discovery using the jabber:iq:agents namespace. Note that this feature is considered obsolete! The plugin should only be used by people that seek backwards compatibility with very old and very specific IM … ⌘ Read more
Ignite Realtime Blog: Certificate Manager plugin for Openfire release 1.1.1
The Ignite Realtime community is happy to announce a new release of the Certificate Manager plugin for Openfire.
This plugin allows you to automate TLS certificate management tasks. This is particularly helpful when your certificates are short-lived, like the ones issued by Let’s Encrypt.
This release is a maintenance release. It adds translations. More details are available in the [changelog] … ⌘ Read more
Ignite Realtime Blog: JmxWeb plugin for Openfire 0.9.1 release
The Ignite Realtime community is happy to announce a new release of the JmxWeb plugin for Openfire.
This plugin provides a web based platform for managing and monitoring Openfire via JMX
This release is a maintenance release. It adds translations and fixes one bug. More details are available in the changelog.
Your instance of Openf … ⌘ Read more
Ignite Realtime Blog: Push Notification Openfire plugin 0.9.2 released
The Ignite Realtime community is happy to announce a new release of the Push Notification plugin for Openfire.
This plugin enables clients to register for push notifications.
This release is a maintenance release. It adds translations and a configuration page. More details are available in the changelog
Yo … ⌘ Read more
Ignite Realtime Blog: Search Openfire plugin 0.7.4 release!
The Ignite Realtime community is happy to announce a new release of the Search plugin for Openfire.
This plugin adds features to Openfire that makes it easier for users to find each-other.
This release is a maintenance release. It adds translations. More details are available in the changelog
Your instance of Openfire should automatically … ⌘ Read more
Ignite Realtime Blog: Candy plugin for Openfire 2.2.0 Release 4 now available!
The Ignite Realtime community is happy to announce a new release of the Openfire plugin for Candy.
Candy is a third-party chat client. The Openfire plugin makes deploying it a one-click affair!
This release is a maintenance release. It adds translations and updates dependencies on third-party libraries. More details are available in the [changelog](ht … ⌘ Read more
Erlang Solutions: How IoT is Revolutionising Supply Chain Management
As global supply chains continue to face significant disruptions, many businesses are turning to IoT to access greater visibility, reactivity, and streamlined operations.
Unforeseen geopolitical conflicts, economic pressures due to inflation and severe climate change events have all contributed to an uncertain and cost … ⌘ Read more
Isode: Icon-PEP 2.0 – New Capabilities
Icon-PEP is used to enable the use of IP applications over HF networks. Using STANAG 5066 Link Layer as an interface.
Listed below are the changes brought in with 2.0.
Web ManagementA web interface is provided which includes:
- Full configuration of Icon-PEP
- TLS (HTTPS) access and configuration including bootstrap with self signed certificate and ide … ⌘ Read more
Isode: Cobalt 1.4 – New Capabilities
Cobalt proides a web interface for provisioning users and roles in an LDAP directory. It enables the easy deployment of XMPP, Email and Military Messaging systems.
Listed below are the changes brought in with 1.4.
HSM SupportCobalt is Isode’s tool for managing PKCS#11 Hardware Security Modules (HSM) which may be used to provide improved server security by protecti … ⌘ Read more
Isode: Icon-Topo 2.0 – New Capabilities
Icon-Topo supports Mobile Unit (MU) mobility between HF Networks, enabling application communications over a wider area than can be achieved with a single ground station. It provides a way to schedule the movement from one HF network to another, ensuring that as an MU goes about its deployment the communications network is kept up and running.
The below … ⌘ Read more
Isode: M-Guard 1.5 – New Capabilities
M-Guard is an XML guard that is used at a network boundary to control traffic. An M-Guard instance is an application level data diode, with traffic flowing in one direction only. Commonly, M-Guard instances will be deployed in pairs, one controlling flow in each direction. The following is a list of the new capabilties introduced in version 1.5.
Erlang Solutions: Effortlessly Extract Data from Websites with Crawly YML
The workflowSo in our ideal world scenario, it should work in the following way:
- Pull Crawly Docker image from DockerHub.
- Create a simple configuration file.
- Start it!
- Create a spider via the YML interface.
The detailed documentation and the example can be found on HexDocs here: [https://hexdocs.pm/crawly/spiders_in_yml.html#content](https://hexdocs.pm/crawly/spiders_in_yml.html#c … ⌘ Read more
Mathieu Pasquet: Finding a new home for poezio and slixmpp
After more than a decade of starting the Poezio project, and more than half after starting the slixmpp fork or SleekXMPP, louiz’ does not have any day-to-day involvement in them.
Nonetheless, he has provided us with the space to host repositories and bug trackers (redmine at first, then gitlab), done the required sysadmin work every time it was needed, and has also paid ever … ⌘ Read more
Erlang Solutions: Optimización para lograr concurrencia: comparación y contraste de las máquinas virtuales BEAM y JVM
En esta nota exploraremos los aspectos internos de la máquina virtual BEAM o VM por sus siglas en inglés (Virtual Machine). Y haremos una comparación con la máquina virtual de Java, la JVM.
El éxito de cualquier lenguaje de programación en el ecosistema Erlang puede ser repartido a tres componentes estrechamente … ⌘ Read more
Paul Schaub: Creating an OpenPGP Web-of-Trust Implementation – Knitting a Net
There are two obvious operations your OpenPGP implementation needs to be capable of performing if you want to build a Web-of-Trust. First you need to be able to sign other users public keys (certificates), and second, you need to be able to verify those certifications.
The first is certainly the easier of the two tasks. In order to sign another users certificate, you simply take your own s … ⌘ Read more
Erlang Solutions: How to Manage Your RabbitMQ Logs: Tips and Best Practices
RabbitMQ is an open-source message broker software that allows you to build distributed systems and implement message-based architectures. It’s a reliable and scalable messaging system that enables efficient communication between different parts of your application. However, managing RabbitMQ logs can be a challenging task, especially when it’s deployed on a large cluster. In this article, we’ll ta … ⌘ Read more
Erlang Solutions: The business value behind green coding
Most large businesses – and many smaller ones – now have a sustainability strategy. Measuring Environmental, Social and Governance (ESG) impact has been transformed from a fringe activity into a fundamental differentiator.
That’s partly because organisations want to do the right thing – climate change affects everyone, after all – and also because sustainability makes sound business sense.
B2C businesses are dealing with increasingl … ⌘ Read more
Ignite Realtime Blog: Openfire inVerse plugin v10.1.4-1 release!
The Ignite Realtime community is happy to announce the immediate release of version “10.1.4 release 1” of the inVerse plugin for Openfire!
The inVerse plugin adds a Converse-based web client to Openfire ( Converse is a third party implementation). With this plugin, you’ll be able to set up a fully functional Converse-based chat clients with just a few mouse-clicks!
This update includes an … ⌘ Read more
Isode: Harrier 3.3 – New Capabilities
Harrier is our Military Messaging client. It provides a modern, secure web UI that supports SMTP, STANAG 4406 and ACP 127. Harrier allows authorised users to access role-based mailboxes and respond as a role within an organisation rather than as an individual.
![Harrier Inbox view (behind) showing Military Messaging security label and priority parameters; and Message view (in front).](https://www.isode.com/company/wordpress/wp-content/uploads/2023/06/Harrier-M … ⌘ Read more
Erlang Solutions: IoT Complexity Made Simple with the Versatility of Erlang and Elixir
Part A: Current Context and ChallengesThe world is on the brink of a transformative industrial revolution known as Industry 4.0. This fourth industrial revolution is revolutionising our lives, work, and interactions on an unprecedented scale. The convergence of technology, Artificial Intelligence (AI), and the Internet of Things (IoT) has enabled highly sophisticated and interconnected systems. The … ⌘ Read more
Isode: M-Link 19.4 Limited Release
M-Link 19.4 provides a very significant update and in particular provides the M-Link User Server product. It also provides M-Link MU Server, M-Link MU Gateway and M-Link Edge. It does not provide M-Link IRC Gateway, which remains M-Link 17.0 only.
M-Link 19.4 Limited Release is provided ahead of the full M-Link 19.4 release. M-Link 19.4 Limited Release is fully supported by Isode for production deployment. There is one significant difference with a standard Isod … ⌘ Read more
Erlang Solutions: Unleashing the Power of SNMP: Exposing Your Embedded Elixir/Erlang (Nerves, GRiSP) Apps to the World
Did you know that Erlang/OTP ships with built-in SNMP (Simple Network Management Protocol) support? Using SNMP is a great way to integrate your Elixir or Erlang application into an industrial environment. This will be of particular interest for those working with embedded … ⌘ Read more
Erlang Solutions: Lifting Your Loads for Maintainable Elixir Applications
This post will discuss one particular aspect of designing Elixir applications using the Ecto library: separating data loading from using the data which is loaded. I will lay out the situations and present some solutions, including a new library called ecto_require_associations.
Applications will differ, but let’s look at [this example]( … ⌘ Read more
Erlang Solutions: Lifting Your Loads for Maintainable Elixir Applications
This post will discuss one particular aspect of designing Elixir applications using the Ecto library: separating data loading from using the data which is loaded. I will lay out the situations and present some solutions, including a new library called ecto_require_associations.
Applications will differ, but let’s look at [this example]( … ⌘ Read more
hrxi: Windows support for Dino
Hello, I’m back!
It’s been four years since I participated in my first Google Summer of\
Code. I’m hrxi, a mathematics student from Germany. I got accepted
into this year’s Google Summer of Code program with the XMPP software\
foundation as the mentoring
organisation. I chose the extended\
timeline, so I am
going to work on [ … ⌘ Read more
JMP: JMP is Launched and Out of Beta
JMP has been in beta for over six years, and today we are finally launching! With feedback and testing from thousands of users, our team has made improvements to billing, phone network compatibility, and also helped develop the Cheogram Android app which provides a smooth onboarding process, good Android integration, and phone-like UX for users of that platform. There is still a long road ahead of us, but with so much behind us we’re comfortable saying JMP is ready for la … ⌘ Read more