In serverless architectures, application logic is often powered by short-lived execution environments. But what does this mean for long-lived connections? After all, many applications today depend on persistent WebSocket or SSE connections in order to exchange data in realtime.
The answer is unsurprising: either the execution limitations must be tolerated, or long-lived connections must be handled by a separate component. We’ll go over these approaches below.
Free Software is a substantial part of my life. I got introduced to it by my computer science teacher in middle school, however back then I wasn’t paying that much attention to the ethics behind it and rather focused on the fact that it was gratis and new to me.
Using GNU/Linux on a school computer wasn’t really fun for me, as the user interface was not really my taste (I’m sorry KDE). It was only when I got so annoyed from the fact that my copy of Windows XP was 32 bit only and that I was supposed to pay the full price again for a 64 bit license, that I deleted Windows completely and installed Ubuntu on my computer – only to reinstall Windows again a few weeks later though. But the first contact was made.
Back then I was still mostly focused on cool features rather than on the meaning of free software. Someday however, I watched the talk by Richard Stallman and started to read more about what software freedom really is. At this point I was learning how to use blender on Ubuntu to create animations and only rarely booted into Windows. But when I did, it suddenly felt oddly wrong. I realized that I couldn’t truly trust my computer. This time I tried harder to get rid of Windows.
Someone once said that you only feel your shackles when you try to move. I think the same goes for free software. Once you realize what free software is and what rights it grants you (what rights you really have), you start to feel uncomfortable if you’re suddenly denied those rights.
And that’s why I love free software! It gives you back the control over your machine. It’s something that you can trust, as there are no secrets kept from you (except if the program is written in Haskell and uses monads :P).
My favorite free software projects for this years I love free software day are the document digitization and management tool paperwork, the alternative Mastodon/Pleroma interface Halcyon and the WordPress ActivityPub Plugin. These are projects that I discovered in 2018/2019 and that truly amazed me.
I already wrote two blog posts about paperwork and the fediverse / the ActivityPub plugin earlier, so I’ll focus mainly on Halcyon today. Feel free to give those other posts a read though!
I’m a really big fan of the fediverse and Mastodon in particular, but I dislike Mastodon’s current interface (two complaints about user interfaces in one post? Mimimi…). In my opinion Mastodons column interface doesn’t really give enough space to the content and is not very intuitive. Halcyon is a web client which acts as an alternative interface to your Mastodon/Pleroma account. Visually it closely resembles the Twitter UI which I quite like.
As a plus, it is way easier to get people to move from Twitter to the fediverse by providing them with a familiar interface
There are some public instances of Halcyon available, which you can use to try out Halcyon for yourselves, however in the long run I recommend you to self-host it, as you have to enter your account details in order to use it. Hosting it doesn’t take much more than a simple Raspberry Pi as it’s really light weight.
I know that a huge number of free software projects is developed by volunteers in their free time. Most of them don’t get any monetary compensation for their work and people often take this for granted. Additionally, a lot of the feedback developers get from their users is when things don’t work out or break.
(Not only) today is a chance to give some positive feedback and a huge Thank You to the developers of the software that makes your life easier!
ProcessOne curates two monthly newsletters – tech-focused Real-time Stack and business-focused Real-time Enterprise. Here are the articles concerning business aspects of real-time development we found interesting in Issue #19. To receive this newsletter straight in your inbox on the day it’s published, subscribe here.
ProcessOne is a company deeply invested in building the Open Internet. We build ejabberd, a leading Open Source product, implementing the XMPP protocol, an IETF standard.
The Web is built by people. Authors are producing content that makes the web as it is. They write blog posts, microblog entries, share pictures and videos, etc. And people have typically profile pages to introduce themselves and showcase their work.
Facebook and Twitter both chose to use RDFa for their “optimized link sharing” metadata formats. Well, it would seem Twitter didn’t realize that what they had done until a later stage.
At this time, size of tweets were limited and it was useful to use URL shorteners to be able to squeeze more text into your posts. The habit of shortening links started at that time and somewhat persisted until now.
Speak to anyone who owned a domain in the early days of the web and they will burst with nostalgia at the promises that the now popularized information space was meant to bring.
Solid is an exciting new project led by Prof. Tim Berners-Lee, inventor of the World Wide Web, taking place at MIT. The project aims to radically change the way Web applications work today, resulting in true data ownership as well as improved privacy.
In the early 1990’s the WWW revolutionized information. 10 years later, the Internet became more mature & programmable. We saw the rise of the so-called Web2, which brought us social media and e-commerce platforms.
The Web is a key space for civic debate and the current battleground for protecting freedom of expression. However, since its development, the Web has steadily evolved into an ecosystem of large, corporate-controlled mega-platforms which intermediate speech online.
ProcessOne curates two monthly newsletters – tech-focused Real-time Stack and business-focused Real-time Enterprise. Here are the articles concerning tech aspects of real-time development we found interesting in Issue #19. To receive this newsletter straight in your inbox on the day it’s published, subscribe here.
In the last twenty years, we have seen protocols and services come and go, but XMPP, an IETF standard, is here to stay. It is backed by an international community of developers, does not depend on a single company, and is enhanced continuously by the XSF.
Using a proprietary protocol that doesn’t allow any form of federation is a dangerous way to build a global community. While Slack reverted this decision, other users weren’t so lucky.
ESP-12F as a stand-alone module is of no use unless mounted on a base board like wemos-d1-mini. This blog explains how to use ESP-12F module without the need of a base board but with minimal set of components.
New research from security firm Trend Micro has discovered major design flaws and vulnerable implementations related to two popular machine-to-machine protocols used in IoT devices, Message Queuing Telemetry Transport (MQTT) and Constrained Application Protocol (Co2P).
This article describes how to configure HAProxy and ejabberd together. If you are using a proxy in front of ejabberd, the support for proxy protocol is a new feature allowing the XMPP server to know the real IP addresses of the connecting client instead of seeing just the IP used by the proxy server.
This is the Swift Army Knife that let you take back control of your online data. Thanks to GDPR, online providers now have to offer takeout features for your data. This is a great opportunity to get back your data.
Today, we are rebranding and expanding our well-received ejabberd SaaS platform!
The new name is Fluux, supporting both XMPP & MQTT, in the cloud, as a single service with a unique and simple business model.
ejabberd SaaS was launched five years ago. It was one of the first XMPP software-as-services and still is the reference today. Five years later, it runs very reliably in production for many customers, providing service to millions of concurrent online users every day.
When we launched, it was the perfect tool to run a highly reliable, highly scalable mobile chat service for a great price. You received your dedicated servers, managed by ProcessOne, developers of ejabberd, with all the features provided by our Business Edition. You could even develop your own backend API to store most of the data on your own private servers and just enjoy ejabberd, the realtime service, in a “stateless” fashion, no strings attached.
Over time, however, our customers have been using the platform to go further than chat. We have helped them build game services with ejabberd. We have also seen customers using it to connect devices and build large scale Internet of Things projects.
We soon realized that both, our service and ejabberd, needed to look beyond just XMPP. We put a lot of effort and our skills from building a large scale messaging platform, to develop a clustered high performance MQTT server based on the core building bricks of ejabberd. We support geoclustering and the brand new MQTT 5. Our open test server is already widely used for home-made IoT. You can learn more in our MQTT server announcement.
The next natural step was to offer MQTT as part of our software-as-a-service platform. Today, we are ready to announce that MQTT is available on all our new instances, and upon request for our existing customers.
However, ejabberd name was always associated with XMPP. Jabber is the former name of the XMPP protocol. So, it also made sense to rebrand our ejabberd SaaS platform to a name that shows the support to a wider variety of realtime protocols. That’s why, starting today, ejabberd SaaS is called Fluux.
The business model remains the same one that our customers love. No per-user costs that end up very expensive. You pay for what you consume, measured in “Jabs”. For MQTT, it is even more straightforward, with fewer rules:
And the greatest part? You can build hybrid projects using both XMPP & MQTT on the same platform and the same pricing plan. This is great for both gaming, IoT and mobile projects, using the best of both protocols to fit a use case.
Fluux is feature-full and future-proof:
You can start using MQTT, XMPP or both on Fluux today. Welcome to your new standard-based realtime platform!
While submitting Monal for review, I have discovered that with OMEMO, I can’t distribute Monal in France without government approval there. There is no point in holding up this release for the rest of the world, so I will be removing it from the French store while I file the paperwork for a future release. Something tells me this is probably not the last time this happens.
Chatsecures version of the same issue
Day one and two of my stay in Brussels are over. I really enjoyed the discussions I had at the XMPP Standards Foundation Summit which was held in the impressive Cisco office building in Diegem. It’s always nice to meet all the faces behind those ominous nicknames that you only interact with through text chats for the rest of the year. Getting to know them personally is always exciting.
A lot of work has been done to improve the XMPP ecosystem and the protocols that make up its skeleton. For me it was the first time ever to hold a presentation in English, which – in the end – did not turn out as bad as I expected – I guess
I love how highly internationally the XSF Summit and FOSDEM events are. As people from over the world we get together and even though we are working on different projects and systems, we all have very similar goals. It’s refreshing to see a different mind set and hear some different positions and arguments.
I’ve got the feeling that this post is turning into some sort of humanitarian advertisement and sleep is a scarce commodity, so I’m going to bed now to get a snatch.
After a long development period Tigase team is proud to present you release candidate of a new major release of Tigase XMPP Server packed with many new features and improvements.
I have posted what I hope are the final beta for the next iOS client the Mac one will come soon afterwards. These will be what I plan to ship to the App Store barring any serious bugs. This will be my first production release of OMEMO. I have tried to debug this quite a bit over the past few months. Theres still a lot to do but as usual I would prefer to do more frequent releases rather than large ones. I am sure as more people use these new clients there will be more bugs and I will fix them in weekly releases in Feb.
a small note to say that I'll be present at FOSDEM this week-end and I'll do 2 talks:
I'll often be at the "XMPP lounge", but I'm also planning to attend some talks and meet people at other booths, so don't hesitate to ping me on the SàT XMPP room email@example.com (also available from this link) if you want to talk and/or have a demo.
Salut à Toi is in stabilisation phase, and the incoming 0.7 release will bring a new desktop/mobile(Android) frontend, advanced file sharing, events, the basis of a decentralised code forge (tickets and merge requests), OMEMO end to end encryption, etc.
A major thing is also the new decentralised web framework, the only one of its kind, which allows you to create website naturaly decentralised, by linking XMPP and Python.
See you there!
Salut à Vous,
une petite note pour vous indiquer que je serai présent au FOSDEM et que j'y ferai 2 conférences:
Je serai régulièrement au « XMPP lounge », mais je compte aussi voir certaines conférences et autres stands, aussi n'hésitez pas à me pinguer sur le salon XMPP firstname.lastname@example.org (accessible également via ce lien) si vous souhaitez discuter et/ou une démonstration.
Salut à Toi est en cours de stabilisation, et la version 0.7 à venir verra l'arrivée de la nouvelle interface bureau/appareils portables (Android en particulier), du partage de fichiers avancé, des événements, de la base d'une forge décentralisée (tickets et « merge requests »), du chiffrement via OMEMO, etc.
À noter aussi l'arrivée d'un cadriciel (framework) web unique en son genre, puisqu'il permet de créer des sites naturellement décentralisés en liant XMPP et Python.
Au plaisir de vous voir !
I am still trying to chase down the bug that shows duplicated contacts for some people. At this point I suspect it is several different bugs that all look the same. I have posted new iOS and Mac betas that attempt to address this. Let me know is the betas solve the problem for your or not.
We are on our 13th beta. It has been a lot of iteration and improvement (thank you for helping test) and we are marching towards a good release. There are a couple of more issues I want to address and then we are going to ship this off to the App Store. I am eager to have a reasonably stable, modern XMPP client with OMEMO available on the Mac. It has been too long.