Difference between revisions of "XMPP"

From LibrePlanet
Jump to: navigation, search
(Added JMP's list of suggested XMPP servers)
(Add references.)
Line 8: Line 8:
  
 
== Simple arguments ==
 
== Simple arguments ==
 +
[[#How to use it?|Jump to: How to use it?]]
  
 
; "open standard" : basically, means:
 
; "open standard" : basically, means:
Line 15: Line 16:
 
; "federated" : everyone can communicate and interact fully with each other that has a contact point/address which complies with the XMPP standard. <br /><br />
 
; "federated" : everyone can communicate and interact fully with each other that has a contact point/address which complies with the XMPP standard. <br /><br />
 
: In other words, you can create a XMPP account with any provider that offers such service and from there on you can be sure that you will be able to contact other people who use XMPP provided you respect the service provider's agreement. <br /><br />
 
: In other words, you can create a XMPP account with any provider that offers such service and from there on you can be sure that you will be able to contact other people who use XMPP provided you respect the service provider's agreement. <br /><br />
: Socially, federated (and also the distributed) open standards change the "reference point" of society's way of expressing their methods of communication[http://cdn.media.ccc.de/congress/2015/webm-hd/32c3-7403-en-de-A_New_Kid_on_the_Block_webm-hd.webm]. Exactly like email, while in email you don't ask if someone has a ExampleA.com account and instead ask if they have an email, for XMPP you also don't ask if said person has a ExampleB.com account. Also, just like email, if you don't like the service made by the provider, you can change providers and continue communicating with your contacts after telling them about it, and they '''don't''' need to make yet another account. <br /><br />
+
: Socially, federated (and also the distributed) open standards change the "reference point" of society's way of expressing their methods of communication<ref name="Nocun-2015" />. Exactly like email, while in email you don't ask if someone has a ExampleA.com account and instead ask if they have an email, for XMPP you also don't ask if said person has a ExampleB.com account. Also, just like email, if you don't like the service made by the provider, you can change providers and continue communicating with your contacts after telling them about it, and they '''don't''' need to make yet another account. <br /><br />
 
: If you have the interest and skills, you can also act as a XMPP service provider, either for yourself, your family, a given group of people, payers (all of these types are closed registration) and for the general public with or without limitations (open registration).
 
: If you have the interest and skills, you can also act as a XMPP service provider, either for yourself, your family, a given group of people, payers (all of these types are closed registration) and for the general public with or without limitations (open registration).
 
; Humans are social beings, but some people misuse this need : the vague, closed, non-standardized and centralized nature of some popular communication technologies make socialization harder for other people.
 
; Humans are social beings, but some people misuse this need : the vague, closed, non-standardized and centralized nature of some popular communication technologies make socialization harder for other people.
; Various client software : XMPP has various software that can be used as clients. Browse the Free Software Directory[https://directory.fsf.org/wiki/Category/Protocol/xmpp] for a partial list of client and server software for general computers and F-Droid[https://f-droid.org/packages/#q=xmpp] for a list of client software for mobile devices.
+
; Various client software : XMPP has various software that can be used as clients. Browse the Free Software Directory<ref name="FSD-Category-XMPP" /> for a partial list of client and server software for general computers and F-Droid<ref name="F-Droid" /> for a list of client software for mobile devices.
; Various service providers : some with additional features and extensions. This guide won't give recommendations of service providers because doing so in federated communications isn't good[https://media.libreplanet.org/u/libreplanet/m/the-surreptitious-assault-on-privacy-security-and-freedom/][https://gitlab.com/dustyweb/talks/raw/master/activitypub/rwot/even_more_distributed_activitypub.pdf], but there is a list of '''public''' service providers at [https://jmp.chat/suggested_servers.html][https://xmpp.org/getting-started/][https://list.jabber.at/].
+
; <span id="Various-service-providers">Various service providers</span> : some with additional features and extensions. This guide won't give recommendations of service providers because doing so in federated communications isn't good<ref name="Gerwitz-2017" />, but there is a list of '''public''' service providers: the ones suggested by JMP<ref name="JMP-Suggested-XMPP" /> allow you to register from your own client and also are known for providing a the most basic features of XMPP, there are also other ones listed at xmpp.org<ref name="XMPP-Org" /> and list.jabber.at<ref name="List-Jabber-At" />.
 
; Extensible : While the basic feature of text messaging is always available for online users, the XMPP standard has extensions (abbreviated as "XEP", plural: "XEPs"). With extensions, it's possible to: chat in groups, have end-to-end encrypted messages, participate in client-to-client video or audio calls, recover chat history even after being absent from a group, receive important news and share files directly with someone or relying on the service provider to store the file temporarily (and automatically give a link to it).
 
; Extensible : While the basic feature of text messaging is always available for online users, the XMPP standard has extensions (abbreviated as "XEP", plural: "XEPs"). With extensions, it's possible to: chat in groups, have end-to-end encrypted messages, participate in client-to-client video or audio calls, recover chat history even after being absent from a group, receive important news and share files directly with someone or relying on the service provider to store the file temporarily (and automatically give a link to it).
 
:* Each extension has an official number or an official friendly name. Some extensions only need to be supported and enabled in the client software, while other extensions need both client software and service provider to enable them, there are also those which only need service provider intervention.
 
:* Each extension has an official number or an official friendly name. Some extensions only need to be supported and enabled in the client software, while other extensions need both client software and service provider to enable them, there are also those which only need service provider intervention.
Line 28: Line 29:
  
 
== Advanced arguments ==
 
== Advanced arguments ==
 +
 +
[[#How to use it?|Jump to: How to use it?]]
  
 
=== Economics ===
 
=== Economics ===
  
* In the contemporary economic studies, it has been proven[https://unglueit-files.s3.amazonaws.com/ebf/d6bbf7d8d427f67ae390ac0a406181df.pdf][http://unesdoc.unesco.org/images/0022/002245/224531E.pdf] that "public goods" made from knowledge and information, and which are put under control structures made for non-public goods, result in a "gridlock" effect where people who want to join in are afraid to because of a possible litigation, and those which are already in are afraid of leaving due to the possibility of losing the progress made.
+
* In the contemporary economic studies, it has been proven<ref name="De_Rosnay-2012" /><ref name="Mansell-2013" /> that "public goods" made from knowledge and information, and which are put under control structures made for non-public goods, result in a "gridlock" effect where people who want to join in are afraid to because of a possible litigation, and those which are already in are afraid of leaving due to the possibility of losing the progress made.
 
**; "public good" : in economics sense, not public management. Things which are non-rivalrous and non-excludable.
 
**; "public good" : in economics sense, not public management. Things which are non-rivalrous and non-excludable.
  
 
=== Others ===
 
=== Others ===
  
* The main goal of such gridlocks and centralization seems to be tied with tracking[https://media.libreplanet.org/u/libreplanet/m/the-surreptitious-assault-on-privacy-security-and-freedom/], behavior collection and psychological manipulation[https://downloads.softwarefreedom.org/2017/conference/0-keynote.webm]. With only a few big centralizers and with more people being discouraged from self-hosting or self-providing services either to particular people or to the general public, it becomes very easy to do the things described in start of this paragraph. But with more players, and no standard for interaction between people affected by the players, then communication becomes almost impossible without having to make various accounts.
+
* The main goal of such gridlocks and centralization seems to be tied with tracking<ref name="Gerwitz-2017" />, behavior collection and psychological manipulation<ref name="Benkler-2017" />. With only a few big centralizers and with more people being discouraged from self-hosting or self-providing services either to particular people or to the general public, it becomes very easy to do the things described in start of this paragraph. But with more players, and no standard for interaction between people affected by the players, then communication becomes almost impossible without having to make various accounts.
  
 
= How to use it? =
 
= How to use it? =
  
# Compare and select a service provider. Make sure to check if their terms of service aren't bad for you or the others.
+
# [[#Various-service-providers|Compare and select a service provider]]. Make sure to check if their terms of service aren't bad for you or the others.
 
#* Don't expect for the perfect solution.
 
#* Don't expect for the perfect solution.
 
#; Advanced user : make sure that the provider has all the extensions you want enabled.
 
#; Advanced user : make sure that the provider has all the extensions you want enabled.
Line 50: Line 53:
 
= Why not recommend other XMPP non-compliant instant communication solutions? =
 
= Why not recommend other XMPP non-compliant instant communication solutions? =
  
* From [https://media.libreplanet.org/u/libreplanet/m/the-free-software-movement-in-the-age-of-trump/] one can draw the consideration that there is need for things that work in a reasonable basic level, which are stable, standardized and get the basic job done even in the most limited environment. From the same reference, there is no longer time to recommend an incomplete solution and say that it will get better as "we" thinker with it and that people should just "massively use it already". This is not to say that the development of other solutions must be abandoned. What should be done is instead to recommend already stable solutions to the general public, and leave the unstable ones to people who really get interested on helping out.
+
* From Moglen (2017)<ref name="Moglen-2017" /> one can draw the consideration that there is need for things that work in a reasonable basic level, which are stable, standardized and get the basic job done even in the most limited environment. From the same reference, there is no longer time to recommend an incomplete solution and say that it will get better as "we" thinker with it and that people should just "massively use it already". This is not to say that the development of other solutions must be abandoned. What should be done is instead to recommend already stable solutions to the general public, and leave the unstable ones to people who really get interested on helping out.
 +
 
 +
= References =
 +
<references>
 +
<ref name="Benkler-2017">BENKLER, Yochai. [https://downloads.softwarefreedom.org/2017/conference/0-keynote.webm Degrees of freedom, dimensions of power]. 2017. [http://creativecommons.org/licenses/by-sa/3.0/us/legalcode CC BY-SA 3.0 US] ([https://softwarefreedom.org/events/2017/conference/video/ proof]).</ref>
 +
 
 +
<ref name="De_Rosnay-2012">DE ROSNAY, Melanie Dulong; DE MARTIN, Juan Carlos. [https://unglueit-files.s3.amazonaws.com/ebf/d6bbf7d8d427f67ae390ac0a406181df.pdf The digital public domain]: foundations for an open culture. 2012. [https://creativecommons.org/licenses/by/3.0/legalcode CC BY 3.0].</ref>
 +
 
 +
<ref name="F-Droid">[https://f-droid.org/packages/#q=xmpp].</ref>
 +
 
 +
<ref name="FSD-Category-XMPP">[https://directory.fsf.org/wiki/Category/Protocol/xmpp].</ref>
 +
 
 +
<ref name="Gerwitz-2017">GERWITZ, Mike. [https://media.libreplanet.org/u/libreplanet/m/the-surreptitious-assault-on-privacy-security-and-freedom/ The surreptitious assault on privacy, security, and freedom]. 2017. [https://creativecommons.org/licenses/by-sa/4.0/legalcode CC BY-SA 4.0].</ref>
 +
 
 +
<ref name="JMP-Suggested-XMPP">[https://jmp.chat/suggested_servers.html].</ref>
 +
 
 +
<ref name="List-Jabber-At">[https://list.jabber.at/].</ref>
 +
 
 +
<ref name="Mansell-2013">MANSELL, Robin; TREMBLAY, Gaëtan. [http://unesdoc.unesco.org/images/0022/002245/224531E.pdf Renewing the knowledge societies vision for peace and sustainable development]. 2013. Informal license allowing use, adaptation and redistribution, with adaptations under similar terms.</ref>
 +
 
 +
<ref name="Moglen-2017">MOGLEN, Eben. [https://media.libreplanet.org/u/libreplanet/m/the-free-software-movement-in-the-age-of-trump/ The free software movement in the age of Trump]. 2017. [https://creativecommons.org/licenses/by-sa/4.0/legalcode CC BY-SA 4.0].</ref>
 +
 
 +
<ref name="Nocun-2015">NOCUN, Katharina. [http://cdn.media.ccc.de/congress/2015/webm-hd/32c3-7403-en-de-A_New_Kid_on_the_Block_webm-hd.webm A new kid on the block]: conditions for a successful market entry of decentralized social networks. 2015. [https://creativecommons.org/licenses/by/4.0/legalcode CC BY 4.0].</ref>
 +
 
 +
<ref name="XMPP-Org">[https://xmpp.org/getting-started/].</ref>
 +
</references>

Revision as of 07:39, 31 January 2018

XMPP en en


What is it?

It's an open standard for federated instant communications which by default allows people to send text messages, but has extensions to do things such as: video/audio conferences, group chats, end-to-end encryption, group chat history and news services. It also allows people to to have "bridges" between XMPP and some instant communications techniques.

Why should you use it?

Simple arguments

Jump to: How to use it?

"open standard" 
basically, means:
  • there is more than one group of people who define how it works;
  • the decisions can be read by anyone because everything is documented;
  • chances are that even you can join given group and influence the decisions.
"federated" 
everyone can communicate and interact fully with each other that has a contact point/address which complies with the XMPP standard.

In other words, you can create a XMPP account with any provider that offers such service and from there on you can be sure that you will be able to contact other people who use XMPP provided you respect the service provider's agreement.

Socially, federated (and also the distributed) open standards change the "reference point" of society's way of expressing their methods of communication[1]. Exactly like email, while in email you don't ask if someone has a ExampleA.com account and instead ask if they have an email, for XMPP you also don't ask if said person has a ExampleB.com account. Also, just like email, if you don't like the service made by the provider, you can change providers and continue communicating with your contacts after telling them about it, and they don't need to make yet another account.

If you have the interest and skills, you can also act as a XMPP service provider, either for yourself, your family, a given group of people, payers (all of these types are closed registration) and for the general public with or without limitations (open registration).
Humans are social beings, but some people misuse this need 
the vague, closed, non-standardized and centralized nature of some popular communication technologies make socialization harder for other people.
Various client software 
XMPP has various software that can be used as clients. Browse the Free Software Directory[2] for a partial list of client and server software for general computers and F-Droid[3] for a list of client software for mobile devices.
Various service providers 
some with additional features and extensions. This guide won't give recommendations of service providers because doing so in federated communications isn't good[4], but there is a list of public service providers: the ones suggested by JMP[5] allow you to register from your own client and also are known for providing a the most basic features of XMPP, there are also other ones listed at xmpp.org[6] and list.jabber.at[7].
Extensible 
While the basic feature of text messaging is always available for online users, the XMPP standard has extensions (abbreviated as "XEP", plural: "XEPs"). With extensions, it's possible to: chat in groups, have end-to-end encrypted messages, participate in client-to-client video or audio calls, recover chat history even after being absent from a group, receive important news and share files directly with someone or relying on the service provider to store the file temporarily (and automatically give a link to it).
  • Each extension has an official number or an official friendly name. Some extensions only need to be supported and enabled in the client software, while other extensions need both client software and service provider to enable them, there are also those which only need service provider intervention.

Curiosities

  • WhatsApp uses a variant of XMPP, called FunXMPP. However, no known "bridge" exists between real XMPP and WhatsApp. Morever, it must be noted that no further evaluation was made on possible legal issues of implementing such "bridge" or if the communication can happen without having to make another XMPP account. In all cases, indirect usage of WhatsApp and FunXMPP makes more people use non-free/non-libre software, even if one tells people to do so "but make sure to do X...", because people won't remember.

Advanced arguments

Jump to: How to use it?

Economics

  • In the contemporary economic studies, it has been proven[8][9] that "public goods" made from knowledge and information, and which are put under control structures made for non-public goods, result in a "gridlock" effect where people who want to join in are afraid to because of a possible litigation, and those which are already in are afraid of leaving due to the possibility of losing the progress made.
    • "public good" 
      in economics sense, not public management. Things which are non-rivalrous and non-excludable.

Others

  • The main goal of such gridlocks and centralization seems to be tied with tracking[4], behavior collection and psychological manipulation[10]. With only a few big centralizers and with more people being discouraged from self-hosting or self-providing services either to particular people or to the general public, it becomes very easy to do the things described in start of this paragraph. But with more players, and no standard for interaction between people affected by the players, then communication becomes almost impossible without having to make various accounts.

How to use it?

  1. Compare and select a service provider. Make sure to check if their terms of service aren't bad for you or the others.
    • Don't expect for the perfect solution.
    Advanced user 
    make sure that the provider has all the extensions you want enabled.
  2. Register an account there. Most service providers allow you to do so using the client software.
  3. Compare and select the client software. Use free/libre software.
    Advanced user 
    make sure that the software has all the extensions you want, and that you get them all enabled.
  4. Spread the importance of free/libre software and of XMPP! Invite other people! ;)

Why not recommend other XMPP non-compliant instant communication solutions?

  • From Moglen (2017)[11] one can draw the consideration that there is need for things that work in a reasonable basic level, which are stable, standardized and get the basic job done even in the most limited environment. From the same reference, there is no longer time to recommend an incomplete solution and say that it will get better as "we" thinker with it and that people should just "massively use it already". This is not to say that the development of other solutions must be abandoned. What should be done is instead to recommend already stable solutions to the general public, and leave the unstable ones to people who really get interested on helping out.

References

  1. NOCUN, Katharina. A new kid on the block: conditions for a successful market entry of decentralized social networks. 2015. CC BY 4.0.
  2. [1].
  3. [2].
  4. 4.04.1 GERWITZ, Mike. The surreptitious assault on privacy, security, and freedom. 2017. CC BY-SA 4.0.
  5. [3].
  6. [4].
  7. [5].
  8. DE ROSNAY, Melanie Dulong; DE MARTIN, Juan Carlos. The digital public domain: foundations for an open culture. 2012. CC BY 3.0.
  9. MANSELL, Robin; TREMBLAY, Gaëtan. Renewing the knowledge societies vision for peace and sustainable development. 2013. Informal license allowing use, adaptation and redistribution, with adaptations under similar terms.
  10. BENKLER, Yochai. Degrees of freedom, dimensions of power. 2017. CC BY-SA 3.0 US (proof).
  11. MOGLEN, Eben. The free software movement in the age of Trump. 2017. CC BY-SA 4.0.