Most active commenters
  • nickjj(3)

←back to thread

1806 points JustSkyfall | 20 comments | | HN request time: 1.143s | source | bottom
Show context
casq ◴[] No.45285280[source]
Hi, I’m Christina, cofounder of Hack Club. We just announced this news to our community, and this post is from one of the teenagers in Hack Club. It’s an accurate description of what’s happened, and we’re grateful to them for posting. Slack changed the terms of a special deal we were given last year to charge us for staff and volunteers (not for every teenager coding), and we built programs around that special rate. Then this spring they changed the terms to every single user without telling us or sending a new contract, and then ignored our outreach and delayed us and told us to ignore the bill and not to pay as late as Aug 29

Then, suddenly, they called us 2 days ago and said they are going to de-activate the Hack Club Slack, including all message history from 11 years, unless we pay them $50,000 USD this week and $200,000 USD/year moving forward (plus additional annual fees for new accounts, including inactive ones)

For anyone reading this, we would really appreciate any way to contact people at Salesforce to discuss time to migrate because deactivating us in 5 days destroys all the work of thousands of teen coders at Hack Club and alum unnecessarily. We are not asking for anything for free. This was an underhanded process by the sales team to raise our rate exorbitantly from a qualified educational 501(c)(3) charity serving young developers or destroy all their projects, DMs and work forever. If Salesforce’s goals have changed- ok. Give us a reasonable amount of time to migrate- and don’t club us over the head like this. We have had an 11 year great relationship with Slack- and have introduced the company to many many future engineers and founders. My email if you can help us: christina@hackclub.com

replies(13): >>45287173 #>>45287278 #>>45287335 #>>45287354 #>>45287381 #>>45287482 #>>45287510 #>>45287733 #>>45288679 #>>45288933 #>>45288958 #>>45289047 #>>45289244 #
1. taegee ◴[] No.45287335[source]
If you have a bunch of coders, just scrape the data. Then turn your back on this greedy maw.

We recently moved to Mattermost for the same reason. Not looking back.

replies(5): >>45287373 #>>45287708 #>>45287881 #>>45287998 #>>45288316 #
2. cskartikey ◴[] No.45287373[source]
this is what we're doing :)
replies(1): >>45287745 #
3. mattlutze ◴[] No.45287708[source]
Mattermost is great, we've used it at a few places and it's very flexible.

Extensibility and integrations with learning management systems, as well as owning all your data, makes it sound like a great option in particular for an education-oriented organization.

And I imaging the AWS or GCP costs for hosting it won't be as high as what Slack wants.

4. smartbit ◴[] No.45287745[source]
Mattermost adheres to the same tactics as Salesforce: group calls in v10 only with paid tiers whereas free before. Have you considered alternatives?

  - Zulip
  - Matrix/Synapse and Element
  - Mostlymatter [1] without #user limits
See discussions below in this HN thread.

[0] https://old.reddit.com/r/selfhosted/comments/1fp76f0/matterm...

[1] https://forum.mattermost.com/t/solved-is-there-any-limitatio...

replies(2): >>45288061 #>>45288588 #
5. nickjj ◴[] No.45287881[source]
Slack lets you do a full export which even includes DMs depending on which plan you have.

https://slack.com/help/articles/201658943-Export-your-worksp...

When the org I was at moved away from Slack (due to costs) we used this method and wrote a little Python script to convert the main channels' JSON dumps into PDFs so we had a usable backup of channels.

replies(4): >>45288056 #>>45288143 #>>45288349 #>>45289240 #
6. taneq ◴[] No.45287998[source]
Yeah, my first thought was Mattermost, it’s pretty straightforward to set up and then your data’s nobody’s hostage.
7. misiek08 ◴[] No.45288056[source]
Please do not include PDF and usable in one sentence. Setting up some simple Postgres with sonic for fuzzy search would be _usable_, but PDF is like migrating from Slack to Teams.
replies(2): >>45289199 #>>45289403 #
8. jeremy46231 ◴[] No.45288061{3}[source]
We're selfhosting it! If it runs on our infrastructure, we can't be extorted like this again
replies(1): >>45288468 #
9. andruby ◴[] No.45288143[source]
Does that break DM’s privacy or does it only let you export your own DM’s?
replies(2): >>45288195 #>>45288200 #
10. ZiiS ◴[] No.45288195{3}[source]
Admins can break DM privacy on most company accounts.
11. zdc1 ◴[] No.45288200{3}[source]
Well as per the article (and my own experience), the free tier only gives you public channels. The paid tier gives you everything: public/private channels, group chats (called MPIMs), and one-to-one DMs.

So yes, it breaks "privacy" (not that you should expect privacy when using a work Slack account).

12. davedx ◴[] No.45288316[source]
Zulip is awesome too. On prem.
13. raziel2p ◴[] No.45288349[source]
why the extra step of making them into PDFs?
replies(2): >>45288890 #>>45289258 #
14. itfossil ◴[] No.45288468{4}[source]
Microsoft shops from the 90s called in to say: "You're wrong"

It just takes a bit more effort, that's all.

15. taneq ◴[] No.45288588{3}[source]
Is that using Jitsi or whatever it is? I thought that was third party? I actually set that up for work before realising that we all hate voice/video calls and would just prefer to type. :P
16. wffurr ◴[] No.45288890{3}[source]
Human readable format at rest, I assume.
17. boringg ◴[] No.45289199{3}[source]
PDF is the worse, it has its use-cases but is so painful to use programatically.
18. kevin_thibedeau ◴[] No.45289240[source]
I'd bake them into a Sphinx static site. That gives you a free client side search index along with better navigability than sheets of paper. And you can target PDF if you still want it.
19. nickjj ◴[] No.45289258{3}[source]
We had dozens of channels with almost 10 years of business information in them.

Over time the business gravitated towards putting anything long lived into other sources but since migrating off Slack was essentially a kill switch on our data we wanted to make sure we had ways to access this historic data if needed.

There's no way non-developers were going to parse JSON files for text. We wanted a quick and dirty way to attach the archived PDF file for a channel as a file attachment to the new Teams channel. It gave everyone peace of mind that they could find anything later.

It all worked out in the end and was worth the few hours of dev time to make the 1 off script.

Btw I wasn't the one responsible for making the tech choice to use or leave Slack for Teams. I was the one who was tasked to help with the migration and help make things as streamlined as possible for the business to switch.

One of the biggest pain points was going back to a bunch of Google Drive, Jira, Confluence, etc. sources and finding + updating the links to Slack to be screenshots of the conversation. Another one was converting a bunch of Slack app / webhook integrations over. Teams is absolutely horrendous for this compared to Slack.

20. nickjj ◴[] No.45289403{3}[source]
In this case we didn't need a long term solution for searchable data on Slack.

We did the migration in stages, basically this:

    - Provide access to Teams
    - Create all of the new teams / channels there
    - Make Slack read-only but still keep the lights on
    - Allow folks to search and reference historic data as needed with Slack
    - Ensure everyone was moved over to Teams and felt ok enough using it
    - Remove access to Slack
    - Perform Slack export / PDF creation of important channels
    - Attach Slack PDFs to important Teams channels
    - Cancel Slack subscription
In the end, most people never even needed to use the PDFs because they got everything they needed out of Slack before access was removed, but they are there for peace of mind and a last resort.

We also took this as an opportunity to stop using chat as a source of truth for long lived information. Anything that should be stored long term made its way somewhere else (Jira, Confluence, etc.).