Hacker News new | ask | show | jobs
SAMA – open-source Chat server (github.com)
73 points by khomenkoigor 657 days ago
13 comments

In March 2023, they wrote:

> … provide an alternative solution to the wide spread XMPP messaging protocol (and to be honest — the only wide spread ‘standard’ these days).

Did they miss Matrix for some reason? The spec is at https://spec.matrix.org/latest/

matrix is irc3 (guess 4 now). different tradeoffs.
Hardly. Irc has no federation capability
I would argue that is a feature.

The beauty of IRC is its brutally spartan simplicity.

if you think federations is part of the use case you are missing the entire point of the discussion
What do you mean exactly?
According to the github readme, there is a Discord community group. Why don't they run their own community? According to the list of features, Sama should be a good alternative to Discord (except voice chats).
> Why don't they run their own community?

Because it raises the bar for community participation. Running their own community sounds ideal, but that assumes someone interested in testing the software out and participating in their community would be willing to create a new account on their platform first. I probably wouldn’t create an account just to participate, whereas I already have a Discord account and joining their Discord community doesn’t require too much from me. Plus, nothing stops them from still working to build a community on their platform anyway.

Nah.
Eating their own dog food, as the saying goes.
not too fast, but soon it will work this way
Why do statements like this “ Built with modern technologies” always rub me the wrong way… is it because tomorrow it won’t be modern?
Don't forget "Blazingly Fast!" on every other startup marketing page. (It's so cliche at this point it hurts to read.)
Blazingly fast is open source library lingo, startups are more pretentious.
They usually use the word "performant", not "fast", which makes it worse IMO ...
And by it they usually mean "only half as slow as the competition" - IRC is 1000x less slow but nobody got VC capital for that
For Humans!
It rubs me the wrong way because it means staying on a smaller treadmill.

Linux supports my 9-year-old PC just fine. But once you move outside "last two stable versions of Chrome or Firefox" some websites quit working. Since I only have 16GB of RAM, some hungry apps can't run at the same time.

We've all heard it before, I don't need to say it again. "Modern" means "Pay more to run faster on a shorter treadmill, or we'll shame you"

“Built with modern technology” is either a very good sign or a very bad one.

If it means “we’ve been doing this a long time, we’re up to date, and we had no compatibility burden”, that’s probably coming out really nice.

If it means “tryhard at buzzword bingo”, you know how that’s going. Claude is fucking retarded and it can do that.

It’s probably because you understand that “modern technologies” often means “buzzword-laden blobs of unproven hype”. They’re the words typically chosen by software developers driven by trends who think new is always better and can’t concentrate on any project for long enough to see them through. The type of developer who pursues every shiny thing and sells their souls to VCs.

Meanwhile, serious developers with a proven track record who ship and care about stability and longevity understand that boring technology is best.

https://boringtechnology.club

Toasters have been around for a long time. So has Javascript. I suppose that I can buy a modern toaster or an antique toaster. Still, they both seem unremarkably like toasters to me. Likewise, I can run an old Javascript program or a new one. It feels like being modern isn't really all that special. I wonder if no matter how old the tradition of writing software becomes, we'll always want to associate it with modernness. Will certain software writing ever become artisanal?
I hear there's a programming language called kobold that i would consider artisanal;) https://nextcloud.projectftm.com/index.php/s/kobold

realistically though, i've heard "bespoke, artisanal software" before, so, probably.

Yea, and then you look at sources and see javascript. Thanks, I'll skip
What's wrong with javascript?
Looks like the XMPP adapter hasn't been open sourced so it can't be built

https://github.com/SAMA-Communications/sama-server/tree/main... https://github.com/SAMA-Communications/xmpp-adapter

Also I don't see anything about E2EE support

there are open PRs in both server and client, that's gonna be first release around the corner I guess
New SAMA landing https://samacloud.io
So this is a real open source product where you can see clearly that it is an open source GitHub project and how to host it etc.

Right now, for example there is another company called Nango calling themselves open source and yet for the life of me I cannot see how to self host.

This is such a disgrace to the open source community and really goes against the hacker ethos.

I really wish YC stops funding those types of companies.

Seems interesting! Anyone has any practical experience on how it compares to Zulip?
It doesn't seem comparable to Zulip at all. The idea behind Zulip is all around threads ("topics" in Zulip vernacular), channels just happen to be a way to group the threads.

SAMA seems more alike to Slack, where channels is the main grouping, and threads just happen to be a thing you can create in channels.

Slack threads are a failure imo. They were introduced in Discord too, with the same failure case. The problem is that you silo off communication and make it hard to notice that anything was said at all. The exact opposite of what communication software is for.

Mattermost does it the best imo: "threads" in mattermost are just reply chains that go in the main channel, and you can open them separately too.

I 100% disagree. I love threads in Slack. In fact, we actively encourage their use in our workplace. Not everyone in every channel needs to be involved in every discussion. If someone on my dev team says, "Hey, I'm having a problem with X", one person can respond in a thread and they can have a little discussion that doesn't ping everyone else all the time. However, other people have the option of contributing to the discussion if they wish. In addition, the thread can be found in a search at a later date if someone is having a similar problem.
Sure. And then you try Zulip and realize what could actually be.

Besides Matrix's whole matrix-y-ness (lol been using it 4 years, still have E2EE problems REGULARLY), they also completely, completely fumbled threads. Sadly, Zulip has no ecosystem, and the near universal gut reaction to it's UX is "eww". All around, just a god damn travesty.

I never find old discussions. Total disaster.

And in the Discords I am on it's a disaster too. Every time a beginner uses one it cuts the chance of getting help by a lot. You basically have to get lucky that the first person who responds will solve it, otherwise you're out of luck.

> Slack threads are a failure imo

For me they are the reason I use Slack. They allow us to have a meaningful conversation and not overlook anything important and at the same time allow interested people to dive into more detailed discussions. For comparison, I use Teams for another project and this is madness - people actively avoid discussion in order not to force the other team members to spend too much time scrolling the screen, and search is abysmal. (Note I'm using these for work, maybe if it was for other types of communication I might not care.)

> not overlook anything important

How do you know though? Because...

> and at the same time allow interested people to dive into

Discussions often start out one way and then go off to something else. People can't know ahead of time if they should dive in or not. That's one of the problems.

Threads are good for some conversations and not others.

It does keep it neater but also doesn’t include or invite others into it as easily.

I’ve seen another presentation of chat where the latest few messages are shown threaded in-line inder the message. If it’s a message I’ve clicked into before, it remembers and shows me more of the thread in line.

I think slack could do this well but would be happier if mattermost or something had it first :)

I don't use Mattermost (but use slack and discord), but looking here, they look the same as Slack threads: https://docs.mattermost.com/collaborate/organize-conversatio.... I always thought Slack threads were decent, but I'm interested what could be.
> I always thought Slack threads were decent, but I'm interested what could be

If you're looking for what a platform made around threads/topics could be, then probably Zulip is the most mature and useful solution around today.

Discord has "Forum" channels now which are similar to Zulip, with forced "threads" which they call "posts".
Also a disaster on the one server I'm on that uses it.
Agreed, I run a 100+ member discord server for my WoW guild and so far both threads and forums are total dumpster fires that both go unused despite us trying to make them work. Slack's approach to threads is everything I want for Discord; I enjoy talking with my clients more on their Slack workspaces than I do talking with my guild on Discord just because the experience is so dismal on Discord.
If there's any attempt at encrypted communications here, it's not obvious to me. Can someone point it out?
there are open PRs in both server and client, that's gonna be first release around the corner I guess
What’s wrong with matrix?
nothing wrong, just a different vision I guess
We seem to put a large amount of effort into systems to replace XMPP, I wonder if we could instead put that effort into improving XMPP and its surrounding ecosystem.

If IRC were the only option, its inflexibility would warrant a new protocol, but XMPP is in such a good position with how malleable and deliberately extensible it is. Common gripes all have XEPs, hard stuff like E2EE and Jingle have a huge headstart over greenfield projects, we've got standard compatibility featuresets of XEPs to help with fragmentation, there's a well-founded independent governance structure for the project. It just needs investment and focus to push all this stuff over the edge and get implemented/adopted.

It's hard work. It's harder than starting fresh. But a better XMPP is more valuable than the 20th custom chat app re-implementing the same features as the other 19.

I'm not knocking this project in particular, this is a more general comment about the IM ecosystem, spurred by their blog post mentioning XMPP.

IRC still works great, btw

Update: downvotes, really? what's wrong with IRC?

Of course it still work https://xkcd.com/1782/
This should probably be a "Show HN" if the OP is Igor Khomenko (based on the name I think so).
Who is that?
They're saying the OP is one of the main contributors to the project.