Spectrum is joining GitHub
spectrum.chat
spectrum.chat
As I understand it, it means we now have at least three “slack-like”, well-backed, open-source, community-centered chats: - Gitter, now owned by GitLab; - Spectrum, now owned by GitHub; - Mattermost, independent, but fully integrated within GitLab.
That's great to have credible alternatives to the proprietary behemots that are Slack, Discord and others, but I wish they were able to federate somehow, so that as a user, I don't have to have an account and a browser tab on each instance of each platform, with slightly different user interfaces and features (in addition to my IRC client).
I remember there was a suggestion for Gitter to use the Matrix protocol at some point, but it doesn't seem to have gained much traction. That would be so awesome to have all of them using it, so that one could keep all their discussions in the same place (eg. same mobile application, same user-chosen chat client…).
As to federation, the ActivityPub protocol underlying Mastodon, and a bunch of other projects, was originally designed to support it -- but the devil's in the details, particularly regarding finding a common data model (do you have topics within channels, like Zulip does? what do you support within a channel beyond plain text messages? etc)
Isn't Zulip fully open source? That's what they say on their site: https://zulipchat.com/
Riot is being deployed as the govt chat infrastructure for 5 million users in France.
The SaaS version is modular.im (much cheaper than slack)
Is that a done thing ? I haven't heard about it in a while.
Disroot's announcement was before the switch.
The team even talked about it with one of the devs in the latest Matrix Live: https://www.youtube.com/watch?v=Ad3oqEo5leM
It's pretty great. (Not just for mattermost, but most major chat plaforms)
Because as a slack replacement, riot is pretty cool (and there some redesign happening ). Most of the criticism is around its IRC bridging, which I agree is a little unstable. But let's face it - nobody else (slack et al) even tries.
Also, Zulip is full open source, not open core (meant as a response to rst's comment, not the parent...). Mattermost is open core.
You should check on XMPP web solutions such as Movim https://movim.eu/ (P.S. I'm the author).
It's like gelatine salad. It's food but people these days do not have much appetite for it anymore.
However I wish they'd fix their IRC bridge, which has some issues, like not reporting the full list of users, which is driving me insane.
Speaking of Slack-like, the best alternative remains in my opinion good old IRC. I'm a user of https://irccloud.com for always-on presence on IRC and it has better clients than Gitter.
Gitter search UI is the worst, and search itself is useless, often returning no results when you can spend an hour scrolling to find what you want manually.
This is inexcusable when Gitter is your project's de facto Q&A place instead of more structured places like StackOverflow or Github issues.
And so the users are left with a messy stream of collective consciousness that is impossible no search or navigate effectively.
Speaking as a library maintainer, I've got GitHub issue that stayed there for months before I replied. That's because my time as a contributor is very limited and I get fatigue when replying to too many support tickets.
And you'd think, oh wait but there are other people willing to reply. But not really. Forum, email groups, even StackOverflow only work when the projects you're talking about are insanely popular.
This is because of two reasons:
1. people with problems are bad at describing those problems — this is why StackOverflow answers often don't answer the freaking question, but rather try to guess what the author wanted, a trend that's driving me insane, because I often want the answer to the question being asked and not something else; whereas on a chat channel, people have conversations, which helps clarify the intent
2. people are afraid of being wrong; but chat is more casual, so in my experience more people end up participating
Chat has other benefits. You can have off topic conversations, you can make jokes, you can make friends. I do wish Gitter had threaded conversations. They promised it at some point but nothing came of it.
Also, I do like Discourse (https://discourse.org). It does a good job to mix some chat features with forums. Scala has Discourse forums, like for example https://users.scala-lang.org ... but the Scala Gitter channel is way more popular.
And one final thought: I know communities that have virtually no meaningful online presence. You might be annoyed at our choice for using Gitter, but at least you've got some chat channels to go to.
I've never had much satisfactory help from chat. I think I've never quite understood the social element of it. Do I wait for a pause? Do I make friends first? Just ask my question and wait?
Ask a question and hang around for half hour to see if anyone replies?
And in the meanwhile 6 different conversations, statements, off-topic chats and other noise is scrolling past me completely ruining any focus I had.
I find them utterly hateful things when I'm in problem-solving mode. Maybe they are more fun when you're in a "sort of working" mode but that's not when I need help.
Our experiences are wildly different.
On Gitter, on the channels I hang out, I think I got answers to my problems in 99% of cases.
Without the AI tier though scaling this is near impossible as you tend to a "most recent loudest" priority system, certainly if your support case to support rep ratio isn't balanced. Users also have to resort to repeating requests in a chat-only forgetful system.
This is why I ended up investigating hybrid sync/async interaction systems that cater better for not forgetting threads.
Search definitely needs improvement and is on the roadmap. You can track these issues,
- https://gitlab.com/gitlab-org/gitter/webapp/issues/1925 - https://gitlab.com/groups/gitlab-org/-/epics/387
You can track https://gitlab.com/gitlab-org/gitter/irc-bridge/issues/52 for seeing more users in the member list/roster. There is a proposal there to trickle in new users to the list every time a new message comes through the bridge with relevant code linked (merge request welcome).
that said, gitter has many useful features that aren't available on irc: inline code with syntax highlighting, inline images, etc.
If you want to stop email notifications, https://gitlab.com/gitlab-org/gitter/webapp/blob/develop/doc...
You could also adjust your notification settings to "Mute", https://gitlab.com/gitlab-org/gitter/webapp/blob/develop/doc...
But the real problem is that unread item count is coupled to the emails being sent out, https://gitlab.com/gitlab-org/gitter/webapp/issues/1205. So if you have notifications set to "All" or "Announcements" which track unreads, you will get emails for any unread messages in the room which isn't desirable.
Works for: Slack, Zulip, Mattermost, IRC, Telegram, Gitter, Rocketchat, XMPP, Steam, Twitch, Riot, and some others.
Some of the nifty things it supports (to various degrees): - rethreading of Slack messages between instances. (future) interop with Mattermost possible. - edits and deletions going through most platforms. - relaying of "user is typing" messages on Slack. (future) interop with Mattermost possible. - (future) hack to relay emoji reactions via editting a "prosthetic attachment" in Slack. - sync'ing channel topics. - (future) still not generalized, but on a local branch, I've been using an option to set a channel with a language, and have all incoming messages translate via Google Translate.
This last feature I'm pretty excited about. The goal is to allow anyone who finds themselves interested in #un-projet (that's french) to simply create #un-projet-en, and have everything auto-translated to Ye Olde English. If people in #un-projet don't understand your english replies to their french nonsense (ha!), they can create #un-projet-fr and have all your english belligerence translated into their One True Glorious Language.
As stated, this allows bridging between many different services. It's config is via toml file, and not a UI, but I am excited to later build that out. I'm particularly excited to explore how public chat gateways could be offered as a community service, kinda like TravisCI.
Like imagine if someone could send you a link, as a member of a Slack or Mattermost team, and logging in would allow you to join a giant multi-team/multi-platform gateway that others were already using. I feel that this could help un-silo us until we all figure out the one true protocol ;)
Sign up for Spectrum, go to 'sign in with github' as there's no option but to sign up through another system (FB, Google, or Twitter {sigh}), and then get the standard warning on the Authorise page:
"Not owned or operated by GitHub"
No doubt it'll be updated soon.
Very useful for organizations replacing phone workflows, not useful for replacing conferencing and chat workflows.
Amongst others I tried: Mattermost, Rocket.chat, IRC(Cloud), Gitter, Discord, Slack, MS Teams, Twist, Hangouts Chat.
Two stood out, both open source (Spectrum wasn't when I started looking):
Spectrum: https://spectrum.chat/
Zulip: https://zulipchat.com/
These two along with Twist (proprietary) manage to deal with the threading and hybrid sync/async. Both the above also have exceptionally helpful people behind them.
The other special mention goes to Matrix (https://matrix.org/) and Riot (https://riot.im/) as their persistence syncing and federation work is impressive. Their threading and hence async story isn't as well developed yet though (https://github.com/vector-im/riot-web/issues/2349).
Personally I find Zulip to have the nicest implementation of "topic zooming" as it still allows for a global linear view of all activity. Spectrum feels a bit more "channelized" and a bit white-space heavy but prettier.
Zulip's mobile client has come a long way in recent months too.
The hardest part though was trying to convince the community to migrate away from other social platforms. Meetup was (still is) driving me mad with their forums/discussions features which are woeful.
Do any of them allow you to see a list of who's online? That feature broke on Slack. I was told it's a known bug and in the issue queue, but it has already been months without a fix. There isn't a way to see who the regulars are, and the community looks somewhat dead without a way to see who is online.
One thing that Spectrum has that's similar to forum software is a reputation system. Others have admin/moderator status but nothing further.
Discord's mass concurrent voice chat is very impressive, but then they did hone this in 64 man WoW raids and the like. The new screen sharing they added a while back is nice too. Interesting implementation (you can pick which of the nine to watch at any given time).
Video chat is the latest I've been looking into with Zoom starting to stand out above Hangouts and Skype, especially for one to very many and multiple speakers in turn type arrangements. Zulip can hook into Jitsi and Hangouts.
This!
I got a bunch of our community to try out many of the different chat systems out there. Zulip was an interesting one as there were two points that really changed their perception of it as a platform:
1. When they were told there was a "Night Mode" - aesthetics are important! (something Slack arguably got right, IMHO beyond that it's just fancy IRC).
2. After around 5-10 minutes of playing around the penny drops as to why the stream and topic "zooming" is implemented in the way is it. Usually a "Holy Cow" moment.
Once you "get" it, going back to anything else feels like going back in time.
Yes Slack has threads, but they aren't implemented in a way that's conducive to ad-hoc interaction over longer periods of time.
It's my go-to (with https://github.com/Automattic/wp-calypso) to get an idea of how they solved a particular issue in their React app.
I'm really thankful to them for open sourcing their product. I wish more companies would go this way.
Anyway, congratz to Max (also author of Styled Components) and the rest of the team!
Kudos and appreciate the team for open sourcing it too!
« Microsoft is Acquiring Spectrum through GitHub ».
Regardless of what the title says this is what my brain keeps reading.
At first it seems like a nonsense, but after all it makes perfect sense.
Microsoft must repay the inversement in GitHub, it was an expensive acquisition. Best way to do this ? Probably to bundle GitHub Enterprise with Spectrum.
It makes sense as GitLab have Gitter but GitHub has nothing to manage communities.
I would theorize that GitHub enterprise itself may be deprecated with a migration path to "Azure DevOps" and "TFS" for hosted/internal source control respectively, with potentially better integration with public Github over time.
It may be interesting to see Spectrum integrated with MS Teams for those orgs that have internal teams, but need to interact externally, which is a story seriously lacking in Teams currently.
I did find it interesting it's marketed as Github doing this rather than MS. I think MS is trying to distance their influence over Github.
However I don't understand why GitHub would acquire Spectrum: what do they have to win from this? Doesn't GitHub already have their own "forums" for communities per Git org?
I tried to use these git forums/board (https://github.com/orgs/lnug/teams/), sadly it never ever really get going... I also blame GitHub's notification system which is absolutely badly implemented and confuses new-comers.
Back in the day we hyped-up and used Gitter for our community ( https://gitter.im/lnug is where I am at ). Now I wonder, is this why GitHub would want to buy Spectrum? To show GitLab they also can do community threaded discussions a-la-IRC ?
I am confuse, friend.
I was unaware of this product until now, I figured I'd give it a spin to see what was available now and hope for some cool github integration in the future.
However the public-by-default stuff is a bummer. I know there are ways to make things private and perhaps its just me not spending enough time with the product but even if I make a private community it always has a _public_ general thread that I can't delete.
The public general thread is the default for any new thread or conversation so I can see that it will be easy to unintentionally create a thread that was intended to be private as public.
I understand why you want public-by-default, to increase engagement and community building but there are many businesses using Github and could use this tool if they were sure that they could keep stuff buttoned down.
So perhaps you guys could add a "business" or "private first" context that could be used for folks like me to ensure that while operating in that context I am operating as private-by-default.
Also, can you give any hints to what integrations might come?
Anyone on Spectrum can join this channel, post threads and messages, and will be able to see other members. If you want to create private channels, get in touch.
Also, it would be helpful if i could tell at a glance which communities I was in were private vs public. I can't even tell from the communities setting page if I selected private or not on creation (I did, but i'd still like to see that noted)
Thanks, looking forward to seeing how this gets integrated
*I'd love to see documents/media added to threads added to the repos (optionally perhaps)
Spectrum is a real-time chat service where each conversation has a permalink.
1 - https://en.wikipedia.org/wiki/ZX_Spectrum
2 - https://www.google.com/doodles/st-georges-day-the-30th-anniv...
Let's just pretend we're confused.
Is that different from how Slack conversations or Twitter conversations have permalinks, in an interesting way? What starts a new conversation?
The big image at the top of https://spectrum.chat/features is also broken.
Zeit (the company behind `now`) recently killed their 10,000+ member Slack server in favor of Spectrum. Their reasons were (a) Slack isn't designed to support communities, (b) they were having to answer the same questions repeatedly, (c) those answers weren't being indexed by Google, and (d) there is very little abuse prevention in Slack.
Another way of phrasing (d) is that they seemed to want to have greater control in shutting down conversations (for better or worse).
Lopping the head off a 10,000 member community seems like a bad idea, and that was only reinforced by the outcome. People regularly complain about Spectrum on Zeit's spectrum. Threads go unanswered, sometimes for weeks. And every conversation is forced into a threaded model. There's no way to have a single, shared chatroom that everyone is posting to. (Or if there is, it's not the default, and defaults matter.)
The nice thing about Zeit's old Slack channel was that if you were facing a crisis with `now`, you could post in #now and their support staff would take care of the problem almost immediately. But more than that, you could see that other people's problems were being taken care of immediately. That strengthened my brand perception of Zeit and made me want to recommend `now`.
I still recommend `now`, but losing out on real-time support felt like a major blow. When my payment details lapsed, all of my `now` deployments were shut off immediately. I updated my payment details, but the deployments were still offline. I felt somewhat foolish posting a Spectrum thread like "Hey, I know I was supposed to be paying you, but I didn't. Now I did. Will my deployments come back online, or do I have to re-deploy everything?"
I didn't want a conversation like that to be indexed in Google for all time, public for all to see. And while there may be a DM feature in Spectrum, the benefit of Slack is that you can get a sense of who's who right away. It's obvious who the support person is, because they are the ones fielding everyone's questions each day. And you can just shoot them a quick message for one-off questions.
No doubt that gets annoying. But from an outsider's perspective, it's hard to understand why the trade-offs are worth it.
Meanwhile, Discord seems to be gaining traction in the developer space. There are a lot of interesting programming communities springing up, like The Coding Den. Many open source projects are starting to offer a Discord presence by default. And there are a lot of benefits with this model: All the upsides of Slack (and then some), minus some Slack integrations that you might miss (which you can use Slack for anyway), and without forcing every conversation into a threaded async model.
All of that said, please note that this comment is written as an outsider's perspective with relatively little Spectrum experience. Maybe I'm just using Spectrum wrong. But the benefit of the Slack/Discord model is that you end up feeling like a community, rather than a disparate set of posts that are basically tweets.
One thing that often happens in chat is general talk like weather. Would that go in a topic here too?
* The Spectrum product will be merging with the GitHub product in some sense, maybe integrating completely, maybe re-branded with GitHub branding, maybe separate branding but tighter integrations. It certainly doesn't seem like it'll be a separate Microsoft-branded product.
* The Spectrum team (three people) will join the GitHub team, which of course has its own office, culture, vision, etc. Maybe they'll keep working on Spectrum, maybe they'll work on other parts of GitHub, maybe current GitHub folks will join them, but point is, the people they'll work with are the people who work on GitHub, not Microsoft as a whole. It certainly seems unlikely that they're moving to Redmond to work at Microsoft HQ.
Not quite. TWC switched to the Spectrum brand when they were acquired by Charter, because Charter was in the process of rolling out the Spectrum brand for their own services at the time.
(to be fair, you could probably argue that Charter launching the Spectrum brand was "a thin facade to escape their reputation for costumer dissatisfaction", but it's not why TWC switched to the Spectrum brand)
That also helps explain why they stopped offering discounts to new (and determined) customers. With fewer competitors, there's a greater ability to jack up prices and earn monopolistic rents.
Can someone please explain?
Skype was sued in UK for using letters "S,K,Y" by brand "Sky" and lost [1]
https://spectrum.chat/
https://spectrum.im/Subsequent they made a logo from the S alongside the word Skype and registered it successfully.