Welcome to the NGI Zero podcast where we talk to the people who are building the next
generation internet.
Hi, I'm Ronny Lam.
And I'm Tessel Renzenbrink.
We both work for NLnet, a foundation which financially supports people working on free
and open source technologies.
Our guest today is Jérôme Poisson, also known as Goffi.
He is a free software developer who has been active in the XMPP community for over 15 years.
He is the initiator and main developer of Libervia, a communication ecosystem based on XMPP.
Libervia has received several NGI Zero grants and we'll be talking about the project today.
Hi Jérôme, it's really nice to have you here.
Hi, Tessel and Ronny, and thank you for the invitation.
It's really nice for me to be here too.
Did we miss anything in our introduction?
No, no, that looks correct to me.
Okay, to get to know you better, we devised a list of three quick questions and hopefully
your answers will give us a little insight into who you are.
So the first one is, tabs or spaces?
The usual question, I'm a Python developer so I'm more into spaces but honestly I don't
care, you can use whatever you want.
That's very generous of you.
Beer or wine?
Beer, definitely.
I'm from North of France and we have a culture similar to Belgium so I like strong
Belgian beers.
Great, yeah.
Asterix or Marsupilami?
Marsupilami, I'm a big fan of Franquin and Marsupilami, Gaston Lagaffe and everything.
Okay, that says all a lot about you.
Thanks for answering those questions.
Thanks for those nice questions.
So then we go to the project.
You work on communication systems.
What key issues do you see in this field?
Well, there are a lot of issues in communication.
Let's start by the most obvious.
Today there are big companies like GAFAM, Google, Apple, Facebook, Amazon, etc. which
have a monopoly on the Internet and that's caused a lot of trouble.
First, I see a lot of high profiles like politicians or influencers, celebrities, even governments
which are using this platform and notably X formerly Twitter for their main communication.
So that means that you need an account on this platform to follow them.
That means also that they have control on the visibility of your publications.
They can do censorship.
They can influence who is visible.
There is also the issue of surveying who you are reading, who you are following, which
can give a lot of information of your political views, sexual orientation, and this kind of
things.
So that can be dangerous.
Another point is I see a lot of companies, schools, NGOs, etc. which are using private
services, online services like Software as a Service to store their data and do their
internal communication.
So I'm thinking about Google Docs, Slack, Dropbox, these kind of things.
That means that we have a lack of control on our data.
That means there can be spying by other companies or by government.
Also, there is an issue.
The company or the server can be in a foreign jurisdiction.
So if you need to go up to a trial, it can be a big trouble.
Also, in general, there are a lot of problems, especially in the last few years, about misinformation
and devaluation of work of journalists, which is a really important job in my eyes, to do
fact-checking and explaining things.
And of course, issues with harassment, bullying, and these kind of things.
How does Libervia contribute to addressing those issues?
We don't address all these issues because some of them are societal issues and there
are also different kinds of projects to address these issues.
But in Libervia, there are many important things.
First, it's decentralized.
That means that it's independent from any corporation.
It's even independent for the developers.
So you can install your own instance and it can communicate with other instances.
Of course, it's free software, so that means that you can verify it, install it, modify
it, install it everywhere and do whatever you want basically with it.
There is state-of-the-art end-to-end encryption, not only for chat but also for file sharing
and for event blogging and events, optionally, if you want calendar events kind of things.
Also, we have strong ethics in the DNA of the project.
We have written a documents that you can check on the official website, libervia.org,
which is called a social contract and where we explain our view that we want to stick
with free software, we want to do decentralization, we take into account a lot of importance on
accessibility and these kind of things.
Of course, we work with standards, so with XMPP notably, a communication standard which
is mainly known for instant messaging but I can actually do a lot more.
So we use it also for blogging, for file sharing and for these kind of things.
I've been working on gateway to other protocols, notably ActivityPub, the protocol behind
Mastodon, Peertube, Mobilizon, etc.
So that's the kind of thing we try to do with Libervia to tackle those issues.
Can you explain what Libervia is and a bit more about what XMPP is?
Alright, so XMPP stands for Extensible Messaging and Presence Protocol.
So protocol is basically the language you use to talk with other software.
So the goal of XMPP is we work on the same protocol so we can have different software
from different people and they work together and we explain how to do everything like how
to send a message to one people, how to send a message to a group of people, how to do
encryption, how to share files, how to publish blogs and these kind of things.
So yeah, basically that's a way to communicate together and stay on the same page.
So about Libervia.
Libervia is an all-in-one communication tool.
So it's doing several things.
So it's doing instant messaging, of course, state of the art end-to-end encryption as
I said before, but it's also doing blog.
My own blog is made with it.
I'm working at the moment on audio/video calls.
So not only one-to-one calls but also multi-party calls and even remote desktop control.
For sharing photo albums, calendar events, there is even a feature of all kinds of lists
you may use like grocery lists, to-do lists, these kind of things because you may want
to share them with your family for instance.
So it's interesting to have them in communication tools.
So it's aimed to be a comprehensive solution for all major communication needs.
And so you have common interface that you have to learn once and the goal is to work
on all platforms, web, desktop, command line, mobile and it can be also used for scripting,
for automating tasks, for these kind of things.
And so to integrate with other protocols and I have also some plan to create a service
that people can subscribe to, to have everything pre-installed and these kind of things.
You mentioned that you also introduced an ActivityPub as a protocol.
Is that as a gateway or how does it work and what does it bring you?
Yes, that's one of the projects which has been financed by NLnet and NGI Zero from the
European Commission, Next Generation Internet.
Yes, so the gateway is basically, we call it a component.
It's a kind of universal plugin you put on your XMPP server and it's doing the translation
basically between XMPP and ActivityPub, the protocol which is used by Mastodon, Pixelfed, etc.
So when you write a blog post on XMPP, there is an actor handle, the one you use on Mastodon
for instance and you can use it and you can see the blog from Mastodon directly.
And it works in both directions, that means that people in XMPP can also check blogs
or events on Mobilizon, it's also working with events from XMPP.
It's quite impressive how much you built on this one platform, Libervia.
Thank you.
Because most people know XMPP for instant messaging, why did you get the idea of how
did you get the idea and why did you want to build so much on XMPP?
Well, the thing is, it's known for instant messaging but even before I started the project
in 2008, so it's more than 15 years, there were already what we call XEP, it's XMPP
extension protocol, they said it's extensible protocol, so there are XEP which are specifications
which explain how to do other things and there were already at the time specifications explaining
how to do blogging or how to share files, so I didn't invent that, it was already there.
The thing is, I wanted to use the full potential of XMPP and I think the way also the protocol
is done because there is an organization around which is called XMPP Software Foundation
and there is a mailing list to discuss things and we have people with different kind of
experiences and we have meetings often, we will have a meeting in Berlin this weekend
by the way.
So these kind of things, it's a good way in my opinion to build specifications and
to do things and I wanted to use the full potential of XMPP.
So, yeah, when I started to do that, I was thinking why just staying on instant messaging
when we can do so much with it and another interesting point is when you have built something,
it can be reused for other features.
For instance, if I create a way to do comments for my blog, I can use also the comments when
I do calendar events, I use the same comment when I'm doing forum, forum is basically a
special specific view of a blog post.
When I do end-to-end encryption, I can reuse this brick for everything, not only for instant
messaging.
So it seems a lot but actually when you do all these features and you do it in a way
you can reuse them, you can do a lot with this.
So, yeah, that's what I wanted to do.
You have also worked on end-to-end encryption for XMPP Pub/Sub.
Can you explain what Pub/Sub is and what and about adding end to end encryption?
Yes, so Pub/Sub stands for Publish/Subscribe.
So for developers, I can say it's observer observable pattern.
So basically it's a way that you have what we call a node.
It's a collection of items actually, and you can subscribe to get updates.
So it looks a bit complicated like that.
But basically it's like a blog feed, a blog feed.
So that can be a Pub/Sub collection.
And when you subscribe, you get updates of the feed.
So that means that when there is a new blog post, you get notification and you know, you
know that there is something new.
So, yeah, that's basically it.
That's showing a list of things and getting updates when something is new or removed or updated.
And by adding end-to-end encryption to it, that means that you can encrypt everything,
basically everything, because so far we can encrypt chats, but sometimes you want to
have a private blog only for a few people.
And you may want to use a blog because it's more adapted to the kind of announcements you want to do,
these kind of things.
And you may not want to have it public.
And in this case, it's good to have end-to-end encryption.
It can be the same thing if you want to organize an event.
If you want to organize a private event, it may be interesting that nobody besides the people,
the guests can see what this event is about.
So by adding end-to-end encryption to Pub/Sub, it's actually adding end-to-end encryption to basically
any feature we can imagine.
And this is also what you talked about earlier, that if you have end-to-end encryption developed once,
you can use it again for the different features.
Exactly.
And you did even more features because you also did email to XMPP.
Can you say something about that?
I have a grant for that, but I haven't started yet because I'm still finishing the one about audio/video calls.
I'm on the last few weeks on audio/video calls implementation.
But the goal is to have a gateway to email.
So not only to have email, to have all your communication in the same place.
So you can have instant messaging, email and everything.
And also to work on the UI and user experience so you can do filtering or show email in a nice way, a readable way.
But the goal is also to work on the newsletter and mailing list so you can have them shown like a forum.
And basically having a kind of discourse that is decentralized and on top of XMPP,
where your mailing list will be with a nice user experience and you could add also automatically tagging or this kind of thing.
So it can be nicer to use the ROS mailing list.
You mentioned blog a couple of times.
In my mind, I connect a blog to something that can be read from a web browser.
But I expect this is not the way it is in Libervia.
The blog is managed with the Pub/Sub system I've talked about before.
So the blog, you can access it by XMPP.
So you do a Pub/Sub request and you get the HTML or text version of the blog you want.
But in the web interface, I have also a rendering of the blog.
So you can check it with a browser like any blog.
There is also Atom feed.
So you can, if you don't want to use XMPP, you can also subscribe to it with an aggregator without problem.
And with the ActivityPub gateway, you can also access the blog from Mastodon or other ActivityPub projects.
So the idea is if you publish your blog and you can access it from basically anywhere.
Wow, I'm really impressed.
Thank you.
Yes, so am I and I wanted to ask you because you said you started in 2008 with this already and you built a lot.
Where do you get this enthusiasm?
How do you stick to it for so long?
Yes, it's a long story.
Initially, I wanted to start a big project at the time to improve my competencies in Python that I was starting to learn at the time.
And I was not fully satisfied with XMPP client I was using.
So I said, OK, let's try to make my own like a lot of people do.
It's a common thing with IRC or XMPP.
And with time, I saw the potential, but I was working.
So it was on my free time.
And so I've continued and I just had ideas and I wanted to improve it.
So little by little, I just added things one after the other.
And at some point, also, I've been working at some point full time on it because I had some some free time because of life, because of life basically, but couldn't find the way to finance it.
So I had to find a job again and et cetera and a long story short
at the end, I've tried with NLnet.
I've heard about NLnet and I tried to propose my project.
So they they accepted one of the projects.
And after another one, I decided to work full time on it.
And now I'm trying to work on the sustainability of that.
And I'm trying to create a company.
And my goal is to build on the medium- to long-term a team of fully, decently paid people to work full time on it.
And do you work alone on it or are there other other developers working with you?
Is there a community behind you?
There is a community. I've been mostly alone.
I have had a really good friend which worked with me for a year in this time where I was working full time on it, but we couldn't find a way to sustain it.
So he had to stop.
I had some contribution.
The end-to-end encryption part with OMEMO was a contribution from somebody who is a really good developer and specialized in end-to-end encryption.
And yes, so but besides that, I've been mostly alone.
I've made some mistake about that. Like I didn't follow the publish early publish often.
I was mostly working like on my own and doing not so often a release because it's a lot of work to do release.
And so I have a lot of stuff packed in the project.
But I need now to work on UI and user experience and notably to make installation easier.
So that's my short-term goal to make this thing nicer and easier to install and to use and hopefully to grow the community.
But there are a few people following the project, doing also the packaging for Arch Linux or Debian and following for years.
So yeah, I can say there is a little community around the project.
That's always good. And are there many users?
Well, the thing is, I think there are users notably of the command line tool because it's packaged in Debian.
So it's easier to install and some people are using it.
But yeah, I have not been working enough on installation and ease of use.
And a lot of people would say: "interesting" and follow from time to time.
But often it's a bit too complicated to install a bit too coarse at the moment.
And the thing is, because I'm working on many things at the same time and notably now on audio/video calls,
it's hard to find time to make things smoother and easier to install.
So yeah, that's really something I need to work.
And so there are not so many users at the moment.
But I expect that it will grow steadily probably after the summer because I have good hope after I will work on installation procedure and UI.
I'm looking forward to it.
You said earlier that you have a social contract for Libervia.
Can you say a little bit more about that?
Why do you think it's important to have something like that?
Yes, I think everything we do is more or less political.
And the way you design a tool will influence a lot the way it will be used.
So from the beginning, the early days, we want to document this social contract where we say to the user what this project is about.
So we want to stick to free software, we want decentralization, we want to avoid censorship.
But this is one point we have modified with time because we saw during the last year that people saying we don't want censorship is often an excuse to do a lot of harassment.
So we have updated the way it's said to say we want to avoid political censorship, but we want also to protect people from harassment and these kind of things.
And also accessibility is one of the major points of the project.
So we thought it was important to write this kind of thing so people know who we are and what we want to do.
So it's influenced both the way we design the project, but also if we have services, the way we run the service.
And also we have made a French association around the project for the governance of it.
And every year we do a meeting and we explain what happened, what we want to do.
And if we want to change the social contract, we need to talk about it and to have a consensus, so we don't change social contract jus like this.
We need to have a consensus between the people in the association to change it.
And so, yeah, we try to be transparent and to explain who we are and what the project is about.
That's why I think it's a really important part of the project, this social contract.
Do the recent election results have an impact on that?
Are you talking about European or French ones?
The French ones.
Yeah, this story is a bit crazy.
Nobody was expecting election after the European, but anyway.
And we can cut it out maybe, by the way.
Sorry?
We can cut it out.
To not make it too political.
Yeah, yeah.
But I think everything is political and of course it's a major issue because it was a big danger.
Actually, I think it was the most important election in France.
Since maybe World War II.
It was really, really important election.
And we were literally scared because the result could have a big impact on, not me directly because I am lucky to be privileged,
but a lot of people with different stories, different sexual orientation, coming from immigration, etc.
Could have been impacted.
And in this case, it's really important to have good end-to-end encryption in your communication tool.
And yeah, so that has a big impact on what we do and that shows why it is important to do that.
Because tomorrow everything can change because there is a new government.
And yeah, that's really something important.
Just one point.
I'm talking about people.
It can be also like people who raise alerts or people which are in countries,
where they're in danger because of political views or sexual orientation or everything.
At the moment, Libervia had a security audit from NLnet, but end-to-end encryption has not been included.
So I would recommend more to use something which has a good audit from third party.
So if you are in danger, just use a tool which has been audited and that's it.
But the goal is to have this in Libervia in the future and to have something which is secure to protect people as much as we can.
Thanks. That's really interesting what you're saying there.
To say, to acknowledge that all technology is inherently political and then to make it explicit what your political views are by making this social contract.
I find that, yeah, I think that's really a good thing.
Yeah, actually, at some point we had a sticker with a motto, technology is not neutral.
Because it's something you often hear like, oh, technology is neutral and blah, blah, blah.
But I think everything is political.
The way you design your tool, it influences a lot the way you use it.
Of course, with a gun you can use it as a tool just like a hammer, but a gun is meant to kill.
So, yeah, that's technology is not neutral.
The way it's designed, it's influenced the way it will be used.
Yeah, and it's good to see that the people who make it acknowledge that.
And then as a second step also just say like, okay, so these are the principles that we built our technology on.
And then people can just say, oh, I agree with that, so I'll use your technology or not and then not use the technology.
So it's really good for the awareness as well of people that technology is political.
And talking about politics, I was wondering recently in March, the European Union's Digital Markets Act came into force.
And one of the rules in it is that at least chat programs that are from big gatekeepers like Facebook or Google,
they have to become interoperable with other chat applications.
And I was wondering, do you see a role there for XMPP or Libervia or both?
Yes, there is a role definitely.
But the thing is, I see also gatekeepers, so-called gatekeepers is a big company.
They are Facebook for WhatsApp and Facebook Messenger, Google, et cetera.
They will do everything they can to work around the legislation and to make the thing complicated.
So I think for WhatsApp, you need to sign something if you want to be compatible with them and they use their own protocol.
So it will be anyway difficult for... if you have a big company and you can afford that.
OK, but like a small project - well not small, I think the product is quite big actually -
but small teams can't really work on that and follow the changes and everything.
So I think it's important to be able to communicate.
And we have a nice project, Slidge, which is a recent project in XMPP,
which does gateway with proprietary protocols like WhatsApp, Slack, et cetera.
So I think it's important to have that.
But in my case, I want to focus on open protocols. First because it's more stable.
You don't have to follow and change and it won't break one day after the other just because the company wants full control.
And yes, so I'm focusing mostly on open protocols.
And I think it's important to communicate with other protocols like Activity Pub, email and other messaging software.
What are the next steps for your project?
Well, right now I'm finishing grants on audio/video.
So thanks to NLnet, there was first one-to-one audio/video calls, then multiparty in what we call a mesh network, then remote desktop control.
And now I'm working on the multiparty call with a lot of participants, something similar to Jitsi, Google Meet, et cetera.
So first that, then I will have another grant to work on email gateway.
But also in parallel, I need to work on the UI on user experience.
I need to stabilize the project and also I'm trying to set up a company. I will in a couple of months launch a service with an abonnement for people.
People can still of course install by themselves.
If people want to use it, I am thinking notably about schools, associations, companies, et cetera, as internal communication tools.
And yeah, trying to make it sustainable so people can... so we can have a paid team and we can go further with the project.
Yeah, it would be really great if you can make your product sustainable because that's also of course something that's that's often hard in open source to find a way to keep the project going without people having to sacrifice their free time forever, you know?
Yeah, it's difficult. I am lucky to have funding from NLnet right now, but even then it's not so stable.
And yeah, I need to find a way to have a stable life.
And at the same time, if I can work on this project and make it useful for a lot of people, I will be happy.
Yes, that would be really nice.
And so maybe, I don't know if you know about this, but so NGI Zero doesn't just give financial support, but also practical support.
And recently we had a lot of new support services which are helping people to set up, for instance, their company or find another sustainable model for their project.
And so for instance, you could get mentoring or advice or first steps or starting up your governance.
Did you know about that?
Yeah, I have I have known about extra services because I have used some of them.
I have heard in a podcast, I think a French podcast with somebody from NLnet about this help to make it sustainable.
So, yeah, I'm definitely interested and I will probably try to contact NLnet to see if I can get some some help on this side.
Yeah, Ronny can help you with that.
Yes, of course. No problem.
Great.
So, well, you did mention how NGI Zero is helping you already a lot.
Yes.
What what advice do you have for other people that want to go this route?
Yeah, for people who want to apply.
So first, don't be discouraged if you have a rejection.
I have had two rejections before my first grant has been accepted.
So don't be discouraged.
Try to present your project clearly and show why it is useful and who it will benefit.
Try to focus on projects which are helpful for other projects and most people. Notably, if you can promote a standard. I know that NLnet love ActivityPub and XMPP.
And also if you work on end-to-end encryption, it will help a lot.
And yeah, in general, try to work on a broad ecosystem.
Be patient because every two months... if you have been rejected once you can try two months after but it takes approximately four months to get an answer.
So be patient. And don't hesitate to contact them.
The team is really nice.
I've met in person several times at FOSDEM or other conferences and they were really, really nice people.
And easy to talk with and they can give advice. And if you are accepted and you start and if you do like me and you want to be full time of it, you have to be really careful of the scheduling. Because you have steps.
But you are paid when a step is done.
So if you under-evaluate the time, which happened to me a lot of the time, the time it takes to do something that means that it will take longer than you expect to get paid.
And after it can take sometimes up to three weeks to get the payments.
So if you are dependent on this, you need to be really careful with your scheduling and try not to do too much because you can still do it out of the grant.
Try to do what is necessary and to organize a not too big a task.
And I know it's difficult in computer science, but try to not underestimate the time it will take to do something.
Thank you.
That's really, really concrete advice.
I think that would really help a lot of people to picture how to make this application and also how to, if they get it, how to organize it internally.
So that's really good advice.
Thanks for that.
Welcome.
I was wondering.
So for me, you made it really clear why XMPP and Libervia are important.
You said at the beginning about Big Tech having a monopoly on our communication systems and gave a lot of reasons as to why we shouldn't want that.
And my question would be, so the people who are listening now, how could they contribute to bringing Libervia further and more generally open communication systems?
For Libervia in general, join. Just join us, notably on the chat.
Libervia, the XMPP address is Libervia at chat.jabberfr.org.
But you can check on the website and you can you can talk, you can contact us if you want to help.
There are many things to do.
There's a project even it's a bit rough still, but it helped to improve.
If you try to install and say what what is difficult and what we can improve.
You can contribute code, of course, but also translation, design, we have a lot of work on the design.
So every design advice is more than welcome.
Or TEM or any other skill.
And when I will start service, if you want to support us, maybe try to subscribe to the service if you can.
And yeah, just send feedback as long as the feedback is nice.
Even if it's a critique, it's always nice to get feedback and to see how people use the project and what they want to do with it.
So yeah, just stay in touch with us.
And in general about communication tools.
Well, maybe try not to create yet another project. Because I see a lot of people doing that, especially in XMPP.
There are already a lot of nice projects.
So choose the one which match yourself better and try to contribute on existing stuff and talk to people.
People often easy to talk to and can be helpful.
So yeah, just just try to talk to people that's the best way.
So what you're saying is not to do what you did and try to learn Python, build your own XMPP project and yeah, for learning.
I would say for learning, it's a special case because if you want to learn, for instance, you see people trying to make another,
let's say, kernel. Of course, you won't make Linux by yourself.
But for learning purposes, it's interesting.
So in this case, it makes sense to start something from scratch.
No, but I really understand what you say.
Like it may be better to start contributing to existing projects than start up yet another one.
Yeah. And just a remark.
I forgot to say about Libervia.
The project is really modular.
It's made with a backend and several frontend and plugins.
So the goal is to make it really flexible. So you can make something absolutely different with a totally different interface or something really original without problem.
Even in something else than Python, because the front end can be in any language and you can build this on top on Libervia and all the hard parts,
the XMPP parts, audio, video, because everything is already made in the backend.
So you won't have to do it and you can just concentrate on your ideas.
So you don't have to be a full stack developer to help with Libervia?
No, definitely not.
And anyway, you can ask questions and I can try as much as my free time allows.
What is left of it, of course.
Yes.
Well, thank you very much for this conversation.
I think you really helped our community.
Is there anything that we missed or that you would like to add to our conversation?
Well, I think, thank you very much for the conversation.
It was nice from my side too.
We were talking, maybe, about what can be done in general.
I think we have about the concentration of media on the Internet and not only on the Internet, by the way.
It would be great also if... I think we need legislation.
I'm looking for my words.
I think we need legislation for that and the ability to tackle the concentration of power. On this side,
Europe, the European Union can be an ally, like we have seen with interoperability, of neutrality of Internet, which has been in a law.
But it can be sometimes a danger.
Like we have seen recently, there was some attack on end-to-end encryption.
They want always for the same excuse, saying it's against terrorism and pornography, et cetera, but pedopornography.
But if people want to do an attack, they will find a way anyway to encrypt their communication.
And so they try to force people to use backdoors, those kind of things in end-to-end encryption.
And if we do that, it's a big danger, especially as we have seen recently with the election, government can change quickly.
So, yeah, we need to maybe try to influence people to do the right legislation.
And yes, and also, yeah, we need also open protocols to communicate together.
XMPP, ActivityPub, Matrix, all the other protocols.
And it's really important to think about the design of projects. To think about accessibility and trying, maybe, not to clone commercial because I see a lot that we're trying to clone commercial platforms.
We need to find our own way and to think by yourself how to do the stuff and the influence it will have on people.
And I think this also shows the power of open source.
I mean, the Big Tech can be forced to to build in backdoors, but within open source.
Well, even if they force us to, I mean, you can see that the backdoors are there and therefore not use it.
Yeah, but it's still a danger because most of people have not the technical knowledge to do it.
So if we are forced by the law to do that, it will be difficult to get rid of it.
True.
That's also what you said about the open standards, what we talked about earlier, this interoperability between different chat applications that even if these big companies are forced to do it,
they will still try to keep as much power over it as possible and try to delay stuff or make it really difficult.
Whereas if everybody just uses open standards and maybe even is just forced to use open standards, then that kind of power is taken away from them.
So there's definitely a lot to say for using open standards.
Yes, and open source community free software.
I like more the term free software than open source by the way.
It's really capable.
We can see like software like Blender, for instance, is even better than commercial alternatives.
And open free software community has achieved a lot and is really capable of doing a lot of nice things.
Also, one practical point, if we use open platforms, we don't need to have like 10, 20 different apps with different accounts and to switch all the time.
So from a practical point of view, it's better to use free software.
There's actually no reason not to use free software.
Yes, exactly.
And on that note, I would like to say thank you very much.
And yeah, this really was an insightful conversation, I think.
Thank you very much. It was really nice for me to.
Thank you.