I don't know why a significant amount of the comments are so critical of what seems like a pretty incredible project (and based on contributor statistics, primarily built by _a single person_), but I really like it and prefer the overall UX to Element so far (even though it's basically copied Discord entirely).
Also, the backend is written in _Rust_, I thought you guys LIKED THIS KIND OF THING!
Welcome to Hackernews. Being sour is part of every user here just to spread negativity in the guise of "user feedback". Just ignore those comments and read the positive ones.
It sure helps that the code is open source. However, there are some factors that still make it harder for other people to pick up a project
- a lot of knowledge can be lost how the system works and has to be reverse engineered
- which fork is the chosen one by the community and how will people know about it
- branding might be unclear, can you reuse the name or should you rename your project
This is really nice. Just needs one click joining for voice channels. This is an under-appreciated killer feature of discord that slack missed when implementing huddles. The ability to instantly hop in and out of voice channels is what keeps discord from feeling like any other teleconferencing app. Any friction to this makes it so I am less likely to just casually jump into a call.
As someone who doesn't use voice channels, I can't even count how many times I've accidentally joined them because I mis-clicked. And then I have to find the "end call" button because, of course, it's small and located away from the channel itself. It is so unbelievably annoying.
The best feature Discord added recently was the ability to hide channels, so I can finally, once and for all, forget about voice channels.
I've been using Discord since 2017 and in that time I think I've literally never accidentally joined a voice channel? The app even prompts you if you're sure about joining under some circumstances.
GP is right, frictionless voice channels is a killer feature. Maybe a toggleable prompt or some other feature to prevent accidentally joining can be an opt-in.
> I've been using Discord since 2017 and in that time I think I've literally never accidentally joined a voice channel?
I've also been on Discord since 2017, and I've done it many times. Especially on servers which put voice channels right next to text channels. And I'm not the only one either, judging by another comment[0].
Maybe ask the server admins to make a voice channel category and then not only are text/voice separated/grouped but you can collapse the voice category when not using a voice channel. I really just don't see this problem, it's not even that I haven't done it but also I don't see other people doing it. To be fair though, like half the servers I'm active in organize their channels in this separated way.
Anyway, I think opt-in for some kind of friction makes sense.
Part of the issue here is that historically, audio channels didn't have any association with text channels, and so you'd find setups where people would pair them up and interleave them.
Nowadays each audio channel has an associated text channel, making it a lot easier.
Yeah, it's obvious - just have a user setting: "Join voice channels without confirmation". Requiring confirmation should be the default, to prevent users from accidentally joining.
Any design which removes friction in an application gets my blessing. Having to long press and confirm or approve some benign action is super frustrating. Is accidentally joining a call really that bad?
"Whoops"
*Drop call*
Exposing your microphone to countless strangers could in theory have worse outcomes than “woops” based off numerous factors, such as what you’re doing/talking about/listening to and how long it takes you to notice that you are broadcasting the audio of the room that you’re in.
Friction is not an automatic bad thing. The fact that you have to continue pressing down the button to keep using the feature is friction to stop you from unintentionally using the feature
It's not a huge deal in same sense as exposing parts of your initials, half masked e-mail addresses, or the last 4 digits of credit card numbers are not a huge deal, each of which could allow your adversary recover full details in some cases should they exist.
You just described the appropriate solution to this problem: better visual separation. You don’t need to add friction for people that like voice chats, just make it clear what you’re clicking on so you don’t have an oopsie
When someone clicks a voice channel, prompt the user to confirm that they want to join along with a “don’t ask again” option. Have this option be reconfigurable in user settings if you decide that you do want the prompt later.
Please yes. This is the killer feature. To solve your issue all you need is an otional modal to confirm joining. The idea is that you are joining a room not having a phone call. This enables things like joining by yourself while other participants join.
This was normal back in the days of IRC and Mumble. I should try introducing mumble into our company, come to think of it. I remember not understanding the client-side TLS certificate thing, so like, it had strong encryption way ahead of its time and the UI was basically as smooth as it could be because we all made it onto the server, even if we didn't understand what it was and the server just accepted any cert.
It's a good reminder indeed, I hadn't considered the old gaming toolkit we used as teenagers and I work with 100% technical people that can figure out an apt install mumble
If you drop out for a minute you won't have access to anything that was posted in chat, which makes it useless for anything other than voice only comms, that might suit some business purposes but I've always needed to post links or screenshots in chat during meetings.
I think in the case of Mumble, the chat feature is intended to be used to let people fix sound issues, nothing more.
This sort of is yet another data point related to a conundrum: on one hand, applications that integrate multiple functionalities are convenient but there's always one or more functionality that doesn't fit your needs; on the other hand, applications that focus on one functionality do it well, but you have to hand pick one-by-one to fit all your needs, perhaps add some glue scripts/plugins to make them work nicely together, and this is inconvenient (in particular if you are not alone and not in an organization that "dictates" those choices) and a slow process.
Basically it is Office365/LibreOffice/Emacs or Browsers (with plugins to add chat, email clients, etc.), issue trackers (sometimes feature Wikis and more), Git online front ends (sometimes offer Wikis and issue trackers), versus e.g. raw Git, Vim/Notepad/Nano, bare-bones browsers (Surf, Midori browsers), ...
I favor the dedicate apps for things I do a lot - usually I eventually know them pretty well and I have the know-how to make them interoperate. For more casual stuff, I'm like the random user - the convenience just wins.
But for communication applications, as long as people jump the bandwagon of the latest private service provided "for free", you have to go with the flow or only be the nerd that talks with nerds on obscure networks.
> The sticking point for me is the lack of persistent messages, something the devs strangely think is a privacy plus
This is my complaint about Discord and such as well, though. People seem to love platforms where what you typed last week is never looked at again and isn't searchable/accessible from a regular web search. HN is also moving more and more in that direction: threads always dropped off very fast (matter of up to 3 days if you have a top-of-the-year popular thread) but then, at some point, editing was restricted to only be 2 hours (countless times I run into not being able to add a correction or addition, so posts are now less good/useful in posterity), and last week I noticed I couldn't reply to someone anymore after 18 days (they had replied to me, I had finally gotten around to checking their suggestion, and wanted to reply back ... alas).
Be it bad ears or a pretty rudimentary testing method, but the experience we had at a lan was that we could hear each other through mumble before hearing a shout from across a room.
I know that feeling. For work, I have to do basically everything in a VM, but even on the host the input latency (as measured by 1000 fps camera filming the keyboard with the screen in the background, while I strike a key) is not great or anything. Being used to this latency causes me to feel like the disk encryption boot screen shows the asterisk before I truly typed the letter of the password. (Relevant: https://danluu.com/keyboard-latency/)
I am on my way to bed but, damn, you're getting me curious about the delay that Mumble has versus speed of sound. Knowing it uses Speex ("This is an example of Speex ..." x100) which has a minimum delay of 30ms (https://en.wikipedia.org/wiki/Speex), and that you have <1ms ping on gigabit LAN so ignoring that by comparison (even if you>mumble>someoneelse is 2 hops), sound travels...
That would be the absolute minimum possible (unless modern Mumble switched to Opus and you used that version) for it to be true. But, considering the first paragraph, I am also very ready to accept it just sounds like Mumble is quicker just because it's so contrary to the norm.
If you say it was ~11+ meters (36 ft), I may be curious enough to create a test setup :p. But I'm assuming you mean the person sitting next to you, not someone who put Mumble on huge speakers across a hall.
It would have been five or six meters with someone speaking loudly into the mic and someone else with one headphone cup on. So you'd need another person to test.
It was also in 2009 so it could even have been Celt rather than speed or opus
I used to use Skype about 10 years ago for playing, then raidcall, then I eventually realized I could host a teamspeak server for the server I was hosting, so we got a non-profit license and hosted our TS server.
I played Eve Online and had to use Mumble. Damn, I wish more people used Mumble, it's such a nice piece of software and it's open source! If only we could have text chat mixed with the audio backend from Mumble, all this together in one app, I believe it would be amazing.
It's crazy how collaboration solutions keep missing this. I passionately hate "calls". You don't catch people with a lasso to talk to them in real life.
Not sure I understand. They're called "meetings" IRL right? Just that they're now online, a lot of the time. We use the word call and meeting interchangeably, I'm not really seeing the difference.
(The only difference between before covid and after is that we are more people and have more calls that take longer. Text chatting is a lot more structured and efficient and inclusive because nobody has to wait for a turn while the topic evolves past five persons before it gets to you, but whenever a topic gets more than a handful of messages, invariably $boss will propose to stop wasting time and "plan a meeting" .... but I also have that experience with IRL meetings when there are more than, say, five people involved)
Seeing who is in the channel is the big difference. It's one thing to just phone someone up, potentially disturbing them from whatever they were doing and suddenly demanding their attention through a ring. It's another thing to see they're in an open communication space and hop in to join impromptu. There's significantly less social friction involved.
The problem is that in the real world you can have more than one conversation in a space. With a group call/channel you get exactly one conversation or a bunch of people yelling over each other.
You could probably make that work in VC but the UX is going to be awkward and un-intuitive no matter how you slice it.
So the best option (online/available status and 1:1 calls which is what we have now) is probably the best alternative.
Discords usually have multiple audio channels, solve the "exactly one" issue. If you really want to have two conversations, one group drops down to another one.
Yes however that's no different than just being in multiple calls but just swapping between them (ala skype for business or teams).
It's still exactly one conversation you can be part of at a time. This compares to in person conversation where you can be part of a greater conversation while also carrying on a smaller, secondary conversation with the people immediately adjacent to you.
I've seen some conference software try to address this with a "tables" system where you sit at a table of a few people but are in a greater discussion room. Your table conversation is only heard at the table but the room conversation is heard at all the tables. then the table channel is "open mic" and the room "push to talk" (or both being bound to different "push to talk" buttons).
That kind of addresses the issue but it's awkward and doesn't translate well to anything other than conferences. Maybe a 2d/3d game style environment with range chat would work the best for something like this but I've yet to see an interface for this that isn't miserable outside of actual games. It'd solve the "walk up and talk" issue but it'd add 10 other issues all of it's own.
> that's no different than just being in multiple calls but just swapping between them
Its very different.
Lets log into Discord. We see Alice, Bob, and Charlie are in Room A. Domingo and Ed are in Room B. Francine, Greg, and Hoarice are in Room C. To swap between these three conversations, we just double click on one room or the next. We're instantly swapped between these calls.
Lets say your group of friends has three different calls going on in Skype. How do you quickly see who is talking to who? How do you quickly hop from one conversation to the other? Like in Teams, if a few people are in a call together, how do I know? Sure, I can see Alice and Bob are in a call, but how do I know they're in the same call? How do I know that Charlie is also in there? How do I join their call in progress if not a scheduled meeting? If I'm in the call wtih Alice, Bob, and Charlie, how do I know that Domingo and Ed are talking about the topic of Room B?
The ergonomics of the "call/meeting" versus "room/channel" is vastly different. They both very much have their place, but they're not interchangeable. Forks are good for eating, but it turns out spoons are useful too.
the very first time i went looking for a discord plugin, i was looking for a way to block that after having entered too many chat channels accidentally. it might be a killer OPTION.
I'm not sure, it seems like a corporate thing? I prefer discord personally, unfamiliar with revolt, will say that teams in an academic setting was immensely frustrating.
But I use slack for work and some org's community space is also on slack so I make the best of it that I can.
Nice! I tried but I must be missing something. Is it a setting? Only way I can see to join voice is to click on the channel and then click the voice button?
It took slightly longer than expected for me to track down an explanation of their business model. I think it boils down to "run cheap until we have one".
https://developers.revolt.chat/faq/monetisation
Dunno if this is the case here, but there are use cases for manual timestamps, for example when you want to differentiate between metadata updates / formatting changes and content updates/reviews.
Ah yeah, that's true, last commit to that file was actually on Apr 19th 2022.. https://github.com/revoltchat/documentation/commits/master/d... Too bad the metadata isn't surfaced somewhere so you could kinda discern "last substantial change" vs. "last actual time anyone made an edit of any sort to this file".
What made me choose Revolt over Matrix is the user interface and structure. I vastly prefer the server-with-multiple-chatrooms paradigm that Discord (and by extension Revolt) use, it's a much nicer way to host a hangout with your friends if you have more than a few, so conversations about different things can happen in different places and people can avoid stuff they're not interested in. Matrix kinda has this in that you can group groupchats, but the UI is a lot more awkward. Additionally, Revolt has custom emoji, and you would not believe how reliant you can get on custom emoji if you and your friend group have gotten used to using the samw set for years.
Yes, that was what came to mind for me. My Element UI has organizations (servers) and rooms and people in them, surely Matrix would support all the features this has as well? Perhaps you used it before this was supported.
Or maybe Matrix has some issue I don't know about, which is a more interesting question. Element seems to have both video and audio chat, but leaves a lot to be desired on the UI side sometimes. I can definitely imagine the more the merrier when it comes to open source UIs for open protocols.
I can say a few things as someone who has been running a matrix server as a slack alternative in a company for a while now.
Element does not have an "administration" ui. Synapse has an extensive admin API, but element so far has not created a ui for it. This can make it hard to use for example in a business because a lot of compliance and security related aspects are hard to control and dial in.
Another thing is that quite often, users don't familiarize themselves with the encryption model. They create a key but then lose it and all their chat histories with it (especially non technical users). Well, because everything is encrypted, a server admin can't see or recover their messages when that happens.
There may be some privacy concerns when federation is turned on, such as user profiles leaking or unwanted users joining rooms they shouldn't be able to in a server. Again, these things are all addressed by Matrix/Element but they are an issue because users don't familiarize themselves with it enough.
Element are developing something new called Element Call, which is a Jitsi alternative that uses the Matrix protocol. So far it's in early development and not very usable for self hosted servers yet.
There is not a lot of administrative control really. If two users just spam each other in a room it will fill up storage and of course the server admin can't check what these people are writing.
Another thing that can trip people up or make Element hard to use in a company is that the Element clients have certain defaults. For example, the video calls by default use a pre-defined Jitsi instance. Other aspects also use external service by default, even if connected to a self-hosted server. That is pretty much a nightmare if there are compliance/privacy concerns and a company wants to host everything in house.
What's really pleasant is how verbose and easy to understand the matrix protocol is. It's quite easy to create bots, send messages over the API etc. So it can be easily integrated into other business processes.
The client-server API in Matrix doesn't really allow for the nested "server with channels" paradigm that something like Discord follows.
There's the Spaces [0] API but it's not really meant for creating "servers" (servers as Discord labels it, meaning a top-level room or thing that contains children voice or text rooms) and as such there's no easy way to have any type of per-"server" RBAC or other permissions that Discord's model provides because of the Room + Power Level paradigm Matrix follows.
There's also difficulty with enforcing recursive operations, e.g. in Discord you can just kick/ban somebody and they are removed from the top-level (Server) and all child channels- but there is not really a way to perform any such operations with Matrix without a lot of hacking around and writing custom app services.
Yes I have. Mjolnir is not really suited for the problem I am describing because:
A) you need to create an account for the bot and provide an access token (which is cumbersome to obtain). In Discord that type of moderation of users works ootb.
B) There is no mechanism for role-based permissions. In Discord, you can create a role and assign specific permissions to that role which can control different rooms, etc. in your server. That is not possible in Matrix currently even with Mjolnir or custom app services because of how power level mappings work.
It's a problem I'm interested in solving but it would require MSCs drafted to alter the Matrix spec to create a new permissions model and will have extremely far reaching implications for homeserver implementations.
Does Matrix have the equivalent of voice chat rooms that Discord has? I find as a user of Discord that being able to see who's just hanging out is the killer feature there. (As are things like game streaming and bots, ofc)
I saw this and got excited but no, this isn't discord voice channels. This is an integrated jitsi meet call. It looks like some sort of prototype has been merged to develop though:
What do you mean it's not discord voice channels? Looking at the screenshot[0] their Jitsi Meet integration is identical, because discord voice channels are essentially voice conference calls.
There's still a "join" page every time before you can actually enter a room. And the participants in the room aren't shown as nicely when you're not in it.
Both are very important for replicating Discord's low friction. Opening a full window when it's just a voice channel anyway is also distracting and increases friction.
$5/user/month = no way in hell I can get all my friends on board to use it. Impossible to get network effects going like that, as much as I wanted to try it.
IIRC it doesn't feature encryption and there's no pairing devices via QR or emotes chain as in Element client. Last time I played around Revolt it was very Discord-alike
The next big worry is Github. Moving major open source projects off Github is going to be difficult. But we probably will have to go to architectures where there are multiple synchronized repositories some time in the next few years.
> About the author
Joe Chen is Software Engineer and maintainer of the open source project Gogs, a painless self-hosted Git service. You can chat with Joe on Twitter @jc_unknwon or our community Discord
Just to clarify, we (Gitea) are not crypto shillers, the linked post explicitly mentions not creating some scamcoin.
Beyond that, we also haven't looked further into it as it became increasingly clear it was unwanted.
I'm unsure about the wording on Wikipedia, but I don't recall Lunny ever trying to take all the credit, just that he was an early and frequent committer.
I use OneDev in my homelab to host code, both mine and OSS forks, and run CI jobs. I’m pretty happy with it, except for the limited community/figuring things out on your own vibe to it.
Git, yes. Github, no. Github has many Github-only features such as "continuous integration". Those need to become portable, so you can run your builds on AWS or Hurricane Electric as desired.
It's become dangerous for open source to rely on anyone who can cut off your air supply. Look at the current flap over Red Hat.
I haven't personally done it much, but it seems like moving CI should be relatively straightforward as long as your pipelines are mostly just npm/make/cargo/bash/etc scripts. If all of your actual logic is in your build system, the bit of yaml that defines the infrastructure on a particular CI platform shouldn't be very complicated to move.
"Run this script in this container and cache these outputs."
Projects on Github are more than git. Commits can move, but issues, pull requests, role mappings, wikis, and Actions, are all potentially impossible/difficult to migrate elsewhere.
I'm not sure about that. Microsoft is Commoditizing its Complement. I have a free repository on GitHub that auto-deploys to a paid Azure host. If GitHub wasn't as good as it was, M$ wouldn't have my $.
Your first possibility is rather chilling in its implications. Imagine a bulk install of MS spyware on billions and billions of devices. I bet the TOS allows it.
The trust we hand these silos in exchange for convenience is just ludicrous.
This is cool, but why another chat silo? We have Mattermost, Zulip and most prominently Matrix, which all come with their own big ecosystems already. Why duplicate the work?
Also: How do voice channels work in this thing? I've been thinking for approximately forever about making Jitsi meet more flexible to support channels, but never got around to it (I've done some basic ground work on it, in case anyone wants to pick it up).
I realize it's a rhetorical question - but I think it goes like this: matrix was created to fix issues with jabber/xmpp - both fixed issues with IRC. All three are open protocols.
Zulip was created with a focus on keeping history as usefully as possible - mattermost as another open chat platform.
Except for timing - mattermost and zulip might both have been built on matrix (the servers and clients weren't there yet when theses projects were started).
That might be the case for Revolt too.
Personally I'd love to see more innovation on top of matrix.
And by "strokes" I mean use-cases, design preferences, integration needs, etc.
Personally I'd use RevoltChat if they offered SSO/SAML/OpenID support - I like the UX and the Discord-esque vibe as opposed to the Slack-esque vibe the alternatives you listed carry.
Competition is a zero-sum game, it only makes losers.
With corporation you need to have some competition if you want to keep their power in check, but their shareholders understand that it only weaken them (that's why M&A are so ubiquitous).
> I disagree. Without competition, open source or otherwise, there is very little reason for a popular project to keep improving
This is a very common worldview nowadays, in fact it's probably the core tenet of the contemporary credo[1], but that's also an extremely narrow view of human psychogy: humans routinely seek to achieve the best they can do without any kind of competition.
Worse, with competition people tend to optimize for the specific metric the competition is about, and everything end up looking the same (from movies to retail product, that's the ”ice cream vendor paradox”), if you want to explore the entire problem espace you need to remove competition and let people set their own goals. Competition is also only a stimulation when you're in a good position to win, otherwise the desperation faced when you only have very little chances of winning is very likely to destroy your motivation (the school system is extremely prone to this phenomenon, and so is competitive cycling).
In fact, since there's almost never a reward, the vast majority of open-source products exist solely because their creator wanted it to exist, and they are maintained because their creator just want their creation to be perfect.
Oh, and by the way, biological evolution isn't about competition either, that was just Victorian England elite projecting their worldviews on a biological phenomenon: species don't want to win anything[2], some “packs of genes” just happen to be more suited to persist over time than others.
[1] even above the “myth of Progress”, which is currently being challenged by the "myth of the golden age"/ “myth of Decadence”
[2] “species” don't even exist in the real world, it's just a simplifying (and useful) model of the world (if you're interested in learning more about that, look for “Beefalo” and “pan-genome”.
Since Discord is getting worse and recently added another dark pattern ("Discord Birthday" crap, that always shows a red "1" just to annoy my OCDs) and did not have a good data protection policy anyway, I might take a look at this one. Hoping it will be a good replacement. But then I will have to deal with even worse network effect than back then, when I switched from Skype to Discord.
Discord keeps adding new crap and I always have to update my usercss to hide that crap. I mostly use it from a browser, so it's easy to run custom css/scripts, but the official client can be patched with e.g. OpenAsar[1].
A short (incomplete) list of my git history from the past 1 year:
- May 15 2023 Remove activities ("Discord Birthday" ;))
- May 1 2023 Remove nitro super reaction
- Apr 9 2023 Remove nitro ads
- Dec 22 2022 Remove new features popup
- Dec 22 2022 Remove snows giving seasonal event
- Sep 5 2022 Remove floating unread indicator
- Aug 31 2022 Remove new member badge
I would like to use it in the browser, sandboxing alone is reason enough. However, I had some issues with bad voice quality, when I was using it in the browser and apparently it annoyed people too much. Not sure why it has a problem with voice in the browser. Maybe I should try again.
I actually have my own instance of Revolt set up on my home server for myself and my group of friends to use, the big issue is the lack of good mobile apps. The PWA is janky and unreliable and can't do notifications on iOS, and can't upload images on Android, either.
In theory it should work on iOS, yes, but for some reason the Revolt PWA doesn't let you switch mobile notifications on. Also, PWAs are just slower and more buggy.
Beware projects that demand you sign a CLA. Linux doesn't do this because it's GPL; projects that demand this are leaving the door open to license your work under non-free-software licenses.
I personally won't donate free work to organizations that want the option of releasing nonfree software.
They need to make servers automatically publish onto the web. It’ll bridge that gap between Discord & Reddit wherein discussions can be discoverable. Plus all of that can be indexed and crawled
they should add dedicated q/a, news feed with Reddit post functionality and nested comments for static posts, killer search with bring your own openai key, karma, and maybe better moderation systems than Reddit.
It's funny (or sad?) that many threads here are saying what Revolt should do just to be followed by why they shouldn't, UX-wise. The days of your software being customizable for your own needs are truly gone. We've mostly been conditioned.
Yet another web page pretending to be an app, reimplementing IRC from scratch including the server. Just build on IRC already and add support for your new features to the open source native apps.
IRC is so janky it’s almost definitely worth throwing it out at this point:
- No standard authentication system, you have to go private message someone called NickServ.
- No chat history built in unless you run a bouncer.
- A lot of weird legacy features with multiple ways to negotiate them (CAP, PROTOCTL, ISUPPORT, just assuming you can use something, etc.)
- Inscrutable and incompatible user and channel modes across different IRCds.
- No voice chat unless some client is implementing it via some kind of DCC command, and even then no multi-user voice chat and requires direct IP connection.
- Horizontally scaling IRC is… interesting.
If I were to even think about using IRC as a base, I would overhaul a significant amount of the protocol and break compatibility with a lot of existing applications! None of these are insurmountable problems but to fix then you would be inventing a lot of bespoke parts of the protocol!
No, do not do this. Use Matrix, or...anything else really. I tried building on top of IRC a decade ago and it was a more forgivable mistake back then, but a mistake nonetheless.
Yeah, for things like realtime voice calls as Revolt offers, there's no point in trying to bolt on to IRC.
You can (ab)use IRC as a generic datastore, the same way you can Twitter, SMS, or anything else that allows for data to be stored, but it's a terrible idea, and you'll end up with something overly complicated and without any sort of compatibility with generic IRC clients.
And honestly, complaining about Electron apps is just lazy. It may not be the choice you make when you have unlimited resources and time to write separate native applications for every platform, but it's perfectly accessible for a first iteration. Also a great way to make sure all your platforms can have roughly the same behavior. Would much rather have an Electron Linux app (which is easy to port and costs little to maintain) than no client at all.
1/40th of an average human life isn't really that short. That's 400-700 calendar work days depending on your work ethitcs, possibly thousands of man days.
That's an eternity gone in the blink of an eye, not a short time.
the first COTS videophones appeared > 50 years ago (though very expensive). either that adds to your existential angst or now you can frame this as a leap forward: “50 years without any widely deployed open source video-conferencing stack and suddenly it was rolled out to millions of users in the last 5% of that timeline with the majority of those end users not having to go out of their way for it.”
- The technology was attempted and failed 50 years ago, like so many other things.
- 12 years ago, video calls (1-to-1) became available to everyone
- 4 years ago, for inexplicable reasons, demand spiked for videoconferencing. MS Teams gained an annoying foothold.
- Around the same time, Jitsi Meet usage goes up as an easily accessible open source solution.
- 2 years ago (looks like only 1 when checking), Matrix replaces integration with a native feature, for standalone feature parity with the rest of the space.
I disagree. If something reminds me of what I did six months ago I feel like I am a completely different human than that person. Life isn't short. Our memory is.
Imagine if everyone goes to heaven after they die but the first thing they must do in the afterlife is to watch a perfect recording of their entire life before they enter heaven. How many of those viewers are going to complain that life is too short?
The backend is AGPL-licensed, so worst case you could just selfhost a forked backend and you and your friends could connect to it with a forked client
Open source is friggin great. Some open source game addon manager I was using made a bunch of moves that pissed me off, but it was a breeze to fork it and just maintain my own version with a couple of patches applied
I meant an open source client implementation coded in plain and simple C (nothing related to speed, here, but being able to compile it with a small compiler is paramount, namely not one of the Big Tech compilers, namely gcc or clang). The main reason is independence of the client from the Big Tech web engines (which are honestly and fairly technical "abominations", including their SDKs).
That said, for something discord like, the best small clients for interop would be an IRC bridges augmented with special and specific commands. There are many implementations of IRC clients and, what is very important, it is easy and reasonable to code an alternative (on top of a crypto lib ofc).
Is there any peer to peer video streaming built into it yet? That's one thing I'm really interested in.. even if you pony up for Discord Nitro, the video stream quality is pretty atrocious. I wish I could just fully saturate my home internet connection (or selfhost a private server on a beefy VPS for my friends and I). $20 a month's worth of VPS could go a long way
is the audio mixing as good as Discord's? IMO this is the killer feature, despite being subtle and something no one talks about. The audio mixing in Zoom and Meet is atrocious by comparison: the instant a second person starts talking the audio becomes garbled.
It could be worse - somebody might create a communication website with “hacker” in the name, and I think we can agree that neither of us would ever use that
That’s not the point. Why are people choosing terrible names? “Discord”, “Revolt”, and “Riot” are all basically antonyms if your product is designed to enable communication between people.
There's another actually, along with Ventrilo and TeamSpeak, there was "Mumble," which is precisely what you don't want to do when voicechatting.
So there's definitely a trend.
I guess the idea is that your name stands out precisely for this reason, so people remember it. But yeah once it becomes a trend, hard to keep track & the trend changes.
Revolt and Riot at least require a huge amount of communication to kick off, and Discord requires some large amount of people. Any one person can slack off on their own.
> We don't think federation is beneficial to Revolt and would actively hinder our stance on privacy. In short, federation is prone to leaking your metadata, could make removing your data harder, and we otherwise have no incentive to develop support if it we aren't able to use it for the main platform (revolt.chat).
You should mention the big red warning box above that text:
> Hold on, this article is quite old at this point, just a few things to keep in mind:
> - Federation may end up being part of the project in some capacity in the future, just at the moment it is not part of any feature (at least publicly) on the roadmap.
> - The complexity and time arguments below are still valid but may be necessary to tackle in the future.
> If you have some general ideas on where and how federation could be implemented, feel free to drop into the Lounge #Revolt Development.
Tough love coming then -- then unless we pay you directly, there's no good incentive for anyone to believe that you'll be able to always deliver your claimed advantages over Discord.
It's self-hosted FOSS, you're not paying anyone directly and if you don't feel it delivers something you can write it yourself or pay to have it written.
Anyway, this gets into a philosophical point about the whole Reddit exodus - ID federation and content federation are two different things, and when people talk about the friction of joining a forum vs clicking subscribe on reddit, ID federation is what gives you that, not content federation.
And content federation introduces a lot of scalability problems, and difficulties deleting comments/etc. Yes, someone can notionally always crawl/cache you, but having it on your server is different from intentionally putting it out into a peer-to-peer CDN, or serving it to a bunch of different pods so they can put it in their members' feeds. Some people don't want that part, they want the content to stay on their self-hosted instance.
Identity federation is dead because most apps only support a handful of oauth providers aka Google or Facebook or Apple instead of letting you choose one yourself.
Identity federation also runs into the problem that oauth, etc don't let you have the same account on multiple oauth providers as a backup in case one of them shuts down.
This is disingenuous considering there's plenty of Lemmy servers that aren't federated. Just because a thing supports federation doesn't mean it must be federated.
If Revolt supported federation it would be trivial to just turn that feature off if you had privacy concerns in that regards.
This is for folks that want a self-governed / "no big brother" Discord alternative, it's quite nice for that purpose, but it's lacking the Discord integrations (audio chat, etc.) that make it better for gamers.
Federated identity is pretty important for a seamless experience in the case where chat itself js not federated though. Otherwise you're still going to need to make a new account for every server you join, which is more friction than people want.
Also, the backend is written in _Rust_, I thought you guys LIKED THIS KIND OF THING!