THE OPEN SOURCE POSITIVE FEEDBACK LOOP
or
The history of Rocket.Chat
WHY?
Why not?
+
BOOM!
BUT people liked it
THE AWESOME
Community STARTED
CONTRIBUTING
Official Docker Repo
100% done by contributors
electron APP
Massive help from
community
Unread counter
Easy way to know how much of the conversation you have missed.
Mentions Marker
Easy way to find messages that you have been mentioned
Hubot Integration
=
Also known as Rocket.Cat
Stars on GitHub
+400k servers
10M users
WE ARE
ONTO
something
OF CHATS!
NEW UX
Once in a decade
paradigm shift
FEDERATION
No gatekeepers!
REINVENTING
THE WHEEL?
Why has no one done this before?
There have been several attempts including SIP, XMP, RCS.
All of these have had some level of success, but many different technological, usability, economic factors have ended up limiting their success.
Unfortunately, we've not ended up in a world where everyone has a SIP URI or Jabber ID on their business card or a phone that actually uses RCS.
IRC limitations
- Text only
- Fragmented identity model
- Disruptive net-splits
- No history
- No multiple-device support
- No presence support
- No open federation
- Non-standardised federation protocol
- No built-in end-to-end encryption
- Non-extensible
- No standard APIs
just a rather limited TCP line protocol
XMPP is more of a message passing protocol
- It still largely resembles a synchronous protocol with limited support for rich media, which can’t realistically be deployed on mobile devices.
- But it is so extensible, why haven’t those extensions quickly brought it up to speed with the modern world? Sparse Adoption
Stuck in time
We got to HTTP version 1.1 in 1997, and have been stuck there until now. Likewise, SMTP, IRC, DNS, XMPP, are all similarly frozen in time circa the late 1990s.
Once you federate your protocol, it becomes very difficult to make changes
break to keep moving
It’s what Slack did with IRC, what Facebook did with email, and what WhatsApp has done with XMPP.
In each case, the federated service is stuck in time, while the centralized service is able to iterate into the modern world and beyond.
Here come the Matrix.org
- Matrix can be thought of as an eventually consistent global JSON db with an HTTP API and pubsub semantics.
- Matrix has a deliberately extensive 'kitchen sink' baseline of functionality.
I LIKE
The Architecture
Bridges
JSON Payloads
End-to-End encryption, with no decryption or reading performed on the server.
I DONT LIKE
Matrix user IDs (MXID) are unique user IDs.
Third-party IDs (3PIDs)
IDs from other systems or contexts, such as email addresses, social network accounts and phone numbers.
The TRUTH is
The whole area of XMPP vs Matrix vs Rocket.Chat is quite subjective. Rather than fighting over which open interoperable communication standard works the best, we should just collaborate and bridge everything together.
The more federation and interoperability the better.
So let's be friends
Service record (SRV )
A Service record (SRV record) is a specification of data in the Domain Name System defining the location, i.e. the hostname and port number, of servers for specified services.
# _service._proto.name. TTL class SRV priority weight port target.
_chat._tcp.example.com. 86400 IN SRV 10 60 3000 chat.example.com.
_chat._tcp.example.com. 86400 IN SRV 10 20 3000 chat1.example.com.
WE ARE ONTO something
+
- Awesome UX, build for orgs & communities
+
+
+
- Zero investment to start participating
- Build an ecosystem of BOTs and services
- Open Source and optimize for flexibility
- Distributed and universally adopted
=
CORE TEAM
WE
WANT
YOU
drupalchat.me
Come
to talk
to me
To WIN
T-shirts
AND THANK YOU
more details at
Decentralized Dynamic Federation of Rocket.Chat Servers
By Gabriel Engel
Decentralized Dynamic Federation of Rocket.Chat Servers
Gabriel Engel, founder of Rocket.Chat, explores the design challenges for a new federation protocol that can dynamically unite these thousands of de-centralized servers on-demand, forming a world-scale collaboration, communications, and value sharing/exchange fabric for millions of users without the downside risk of user information lost and control.
- 2,988