At GitHub, we faced the same issue when ZenHub [1] came out with their chrome extension. While, Slack is well within their rights to _ask_ you not to modify their user experience, it's short sighted of them to do so.<p>With ZenHub, we worked with them even closer because we saw that our users were happier using GitHub + ZenHub. We made it super clear that UI changes would likely break their app but that would be a risk for them to evaluate. In the end, it worked out well since ZenHub invested alot in their UI and became a long term partner of GitHub's.<p>From a technical level, I'd also take issue with this. You're customizing the output of their services once it's in the browser at the request of the user. If you're still interacting with Slack through the API and being a good platform partner (i.e. respecting rate limits), then I think you should be allowed to keep on. Disclaimer: I'm running a company on the Slack platform [2]<p>[1] <a href="https://www.zenhub.com/" rel="nofollow">https://www.zenhub.com/</a>
[2] <a href="https://geteventbot.com/" rel="nofollow">https://geteventbot.com/</a>
I think you can safely ignore this cease and desist. Just change the name and add a disclaimer so your users know that by using your extension they are violating their acceptable use policy.<p>This is no different than any user writing a Tampermonkey script to modify any website they want to modify. Even further, this is no different than a user opening the Dev Tools console and modifying things there.
Slack has really jumped the shark. Between this and their cutting off their IRC gateway, I don't really see the point of using it. You can't be openly hostile to people who create "hacks" like this if you're claiming to be a communication medium for "hackers."
"we prefer that you do not include the word “Slack” in your product’s name."<p>From the people who had no problems naming their product identical to the colloquial name of the oldest maintained GNU/Linux distribution, thereby confusing the hell out of actual technical people for the longest time with press releases.<p>Also, Bob Dobbs called...<p>(Edit: you can take away my upticks, but you will never take away my slack. "Hacker" news my ass.)
> In order to remedy this, we ask that you please modify your product so that you are not forcing your own code into our services. We have opened a number of channels for the developer community to build tools that improve their experience with Slack. We encourage you to utilize those channels to their fullest extent.<p>Except that these channels make it impossible to really interact with Slack, and they pulled the rug out from under the APIs that used to kinda make this possible (XMPP/IRC integration). If you're going to force people to use your client, then you should allow for users to customize how that client looks and feels. Even more so if you're doing a terrible job at that yourself.
You solved on of my biggest gripes (muting spam) and a few others I didn't even know I had. Thanks for doing this. I grabbed a fork for myself. Definitely a big middle finger from Slack to the developer community and when I'm the one making the decisions, I'll be recommending people skip Slack. They mostly lost me when they killed the IRC gateway but they added another nail to the coffin with this.
Here's a spiffy new fork: <a href="https://github.com/betterlimp/betterlimp" rel="nofollow">https://github.com/betterlimp/betterlimp</a>
From something I wrote in January 2016 (just one concern of many):
"Reasons Not to Use Slack for Free Software Development"
<a href="https://pdfernhout.net/reasons-not-to-use-slack-for-free-software-development.html" rel="nofollow">https://pdfernhout.net/reasons-not-to-use-slack-for-free-sof...</a>
"Slack requires signing up and agreeing with a long Terms of Service (TOS); the TOS can be changed at any time, and historically such TOS have changed for the worse over time for other services once a lot of users adopt the service and become locked in by inertia and interlocking usages with other groups."
I dont see any legal reason why you can't publish the extension under a different name. Your extension is under no legal obligation to follow their acceptable use policy, only the users that use your extension.
Hey g3rv4 sorry to hear the news. Although I personally don't use slack, when I saw your last post (congrats on the double front page btw) I was super impressed by the stuff you'd added, sorry to see it go.<p>So this seems rather unfortunate now but the first thought I had on reading your initial post was "wow, I wish he'd come and do some similar stuff for riot[1], but unless slack shut him down there's no chance." However lo and behold here we are, so I thought I might as well reach out. If you haven't heard of it, Riot can be described as "an open source slack" although I think that's unfair on it, it certainly lacks certain features that slack has (although with its current rate of development this gap is shrinking) but also can do things slack just can't.<p>Full disclaimer I'm not a developer on riot (or matrix[2] the open protocol it implements), just a happy user so I can't speak with true authority but I think they'd be happy for you to make these sorts of changes to riot.<p>So I invite you to come check it out, I hope you find it compelling. At the very least riot has a means of bridging to slack (along with irc, gitter and more) which you might find helpful in dealing with slack (I know I do).<p>Hope your future endeavors so smoother, I look forward to seeing whatever you create next.<p>[1]<a href="https://riot.im/" rel="nofollow">https://riot.im/</a>
[2]<a href="https://matrix.org/blog/home/" rel="nofollow">https://matrix.org/blog/home/</a>
I think it's really dangerous to choose to take Slack's message seriously here. I've been working on a WebExtension recently [0] at my university that's entire existence is staked on continuing to improve on platforms that are slow moving, and to tie together platforms that otherwise wouldn't talk to each other for political reasons.<p>A company making the case that their Terms of Service or definition of Acceptable Use applies to users manipulating the data that is sent once it is in the user's browser is a terrible way to go. We should always have the tools and the means to add features and change the display format of data being sent to us.<p>[0]: <a href="https://homeworkhomie.com" rel="nofollow">https://homeworkhomie.com</a>
This situation all but confirms that Slack has well and truly become a investor-first, user-second company. Which is a shame because I only just finished listening to an episode of "How I Built This" where they interview Stuart Butterfield who founded Slack out of his failed gaming company and it was a great story.<p>When you have Fortune 500 companies using you, you know you're not a startup or company for the common folk anymore. As for hostility towards developers, we only have to look at how well that worked out for Twitter when they turned up hositility to 11 towards their developers. Different situation, but same premise of cutting off developers making your product better.<p>As for Slack, I loved it in the early days. But now, I find is distracting. The numerous bots you can enable on it (most of which are counterproductive) are annoying or distracting (like the Gif bot). I dread opening up Slack because it's not a nicely designed product and it is starting to become dated.<p>We've been using Microsoft Teams where I work and I must say that it is amazing. You get so much out-of-the-box with it without needing to add in bots and it's more customisable.
> Injecting javascript into Slack via Chrome extension can have an impact on the privacy and security of our customers and our product.<p>So can taking screenshots of messages. If injecting JS can possibly affect the security of your platform then that's a vulnerability you should fix, not send a C&D to some developer about.
I wonder how much longer Slack’s web client is going to remain a first class product? Clearly, it was a good way to drive adoption, but seems that at this point they want ever more control.
So it lasted 3 days?<p><a href="https://g3rv4.com/2018/08/betterslack" rel="nofollow">https://g3rv4.com/2018/08/betterslack</a><p>From that post:<p>> I may build an Electron app that patches the Electron app… so far, that’s what makes the most sense to me. But we’ll see.<p>Even if this was against the ToS, could it be stopped? I didn't know one Electron app could target the other.
…or maybe just stop trying to play with the cat tail if you don't want to get scratched.<p>There is plenty of solutions out there to do chat messaging "kinda like" or maybe better than Slack. I'm using Slack daily and I can't find what this platform has something so magical about it.<p>I am personally building a communication client that can do IM, video-conferencing, file sharing, posting articles… all based on XMPP. It works in the browsers and we are proposing now apps for Android and macOS/Windows/Linux. It's way lighter than Slack, can be deployed easily on a VPS or in your company and is fully compatible with many other XMPP clients/bots (Github is proposing a XMPP bot for MUCs for example :)). If you want to try it out or know more: <a href="https://movim.eu" rel="nofollow">https://movim.eu</a>.<p>If you don't like Movim, I still invite you to find open platforms that can be tuned/hacked/adapted to your needs, there's plenty of them in the wild ;)
I just want to say thanks for putting this followup and their email up. I like having these things to point to when I choose alternative services or convince companies to stop doing business with other companies.
As a recipient of many C&Ds for browser extensions I'm off the opinion that you are fine to keep operating your extension, just change the name.
One of the nicest cease and desist letters I've ever seen. I think what they're asking in the name change is more than fair, and providing guidence on changing the functionality to comply with their api seems like a good approach. Kuddos to Slack legal for keeping the matter human and civil.
We canceled Slack in July, let the year run out and didn't renew.<p>Simply wasn't worth it and frankly more of a distraction than just using Trello (and the client on Linux was just a fucking ballache).
This is why you should not use Slack. Open protocols with open servers/clients is what we need such as IRC, Matrix or XMPP. Slack removed the IRC gateway just so they can stop people from using the service as they see fit and instead force on the users what they think it should be.
While I completely understand your decision to pull it; both their decision to flex their legal arm and your decision to not stand your ground are equally disappointing.
How is an acceptable use policy even relevant to the developer of this application? Its the users of the app who would be breaking the policy. At worst they can argue that he broke it while developing it... so they can go ahead and shut down his Slack account. Totally fair.<p>Change the name, obviously. But fuck these companies like Slack who think they run the world and that gives them the power to control what code you run on your computer.
If someone made a Chrome extension which enhanced our users experience of SabreCMS I'd send them a wholehearted thankyou and probably try to hire them.
<i>except to the extent such restrictions are prohibited by applicable law</i><p>...and here is the key. AFAIK reverse-engineering for interoperability is protected in the EU. IANAL.<p>As a long-time user (and developer) of web filtering proxies and related software, I also say you should fight this, because it otherwise sets a bad precedent.<p>Viewing the source code of a webpage is not a crime, nor is changing bits in the memory of the hardware <i>you</i> own.<p>Also, I know it's too late for that now, but sometimes it's better to be pseudoanonymous when releasing software that you think is somewhat in the gray area.
OP: since Slack is saying they own the execution environment running in your browser, send them a hosting bill for running their application in your computers. Multiply it times every user on your instance.
I just release a similar extension that I'd love feedback on <a href="https://news.ycombinator.com/item?id=17877737" rel="nofollow">https://news.ycombinator.com/item?id=17877737</a><p>It's focused on simplifying Slack's interface so that it's easier to focus. It also only uses CSS and doesn't interact with Slack at all, so it is not against their terms of service.
I got into a similar pickle recently and did some press about it: <a href="http://www.thoroughbreddailynews.com/getting-from-cease-and-desist-to-come-work-with-us/" rel="nofollow">http://www.thoroughbreddailynews.com/getting-from-cease-and-...</a><p>I'm also working on a Chrome Extension that modifies the functionality of a website, but this is giving me second thoughts.
All they can do is threaten or terminate your access. And even that is debatable. If I create a new browser with BetterStack as one of its features are they going to mandate which browsers I use? What monetary or image damage can they prove? None.<p>I hope not, but one could argue that the adage that a quality of a product reflects the company that makes is indeed true...
Slack desktop app is Electron, right?<p>This might be a stupid question (it's been downvoted before), but can a user run chrome extensions within Electron apps? Or a debugger?<p>If not, could a simple website wrapper electron app therefore be much more favourable for a company to run whatever scripts, tracking, and adverts than the same website?<p>Can the same be said for Progressive Web Apps for mobile?
I would write back to them very politely, something like this:<p>Hello,<p>Thank you for your email. I initially reacted by pulling the extension, in fear of possible legal consequences. But on reflection I would like to propose a better solution.<p>There are hundreds of extensions that customise websites, in many cases to help 'power users', or to assist people with accessibility problems not provided for by the websites themselves. These extensions are often made by the websites' most avid users. A great example is the Refined GitHub extension, which GitHub itself has embraced as a proving ground and source of inspiration for new official features. [1][2]<p>That said, it is of course vital that people understand that such extensions are unofficial, and that they are unsupported and not endorsed by the website owner.<p>I would like to notify you of my intent to republish my extension with the changes outlined below, which I hope will satisfy your concerns.<p>• New extension title: "BetterSlack: Unofficial customizations for Slack"<p>• Modify store description to include an explicit warning that installation and use of the extension is at your own risk, and is not endorsed in any way by Slack, and that Slack offers no support for it.<p>In the interests of transparency I will publish all of our correspondence on my blog, as I think this is an important issue of interest to the wider community concerning the rights of individuals to control their own computers and customise their own experiences.<p>Best regards,<p>...<p>[1] <a href="https://github.com/sindresorhus/refined-github/issues/1469" rel="nofollow">https://github.com/sindresorhus/refined-github/issues/1469</a>
[2] <a href="https://blog.github.com/2018-08-28-announcing-paper-cuts/" rel="nofollow">https://blog.github.com/2018-08-28-announcing-paper-cuts/</a>
There are already 3rd party Slack clients ( <a href="https://github.com/wee-slack/wee-slack" rel="nofollow">https://github.com/wee-slack/wee-slack</a> <a href="https://github.com/bkanber/Slackadaisical" rel="nofollow">https://github.com/bkanber/Slackadaisical</a> <a href="https://github.com/evanyeung/terminal-slack" rel="nofollow">https://github.com/evanyeung/terminal-slack</a> ). Using the same approach as them would let you have more control.<p>OTOH, like someone else said, please contribute to improving riot/matrix instead.
I totally agree you should conform to their request - remove the extension from the store(s?) and remove Slack from the name.<p>That said, if you can keep the code on GitHub, then everyone can download the zip and load the unpacked extension - you could even go one up and create a (shell?) script with a cron job that checks the diff e.g. once per day and updates the unpacked extension. With our without the script, there's a slight overhead for the end user, but as long as benefits outweigh the overhead, people will use it and everyone will be happy (or at least, not be able to do anything about it :D )
When you're spending more time/money sending cease and desist to people trying to make your product better than _actually making your product better_, you need to re-evaluate your priorities as a business.
really cool approach by slack. create an environment to look nice to open source community, and make it a commercial, and then close itself to open source. great job slack!
After reading this I am quite glad that we made the decision to leave Slack in our company. Moves like these seem either desperate or disconnected from reality to me.
Hmm. Can website acceptable use policies really prevent you from distributing/using browser extensions?<p>Do we really not control our own browsers anymore?
Mirror of the extension: <a href="https://my.mixtape.moe/byutfi.crx" rel="nofollow">https://my.mixtape.moe/byutfi.crx</a>
I hate censorship. This isn't any kind of illegal (though the name I can understand, if not agree with). Hopefully Slack recants for being a bunch of twitbrains.
Could Slack just defend against people doing this? Similar to how companies defend against Ad Blockers, Password Managers etc? Those also allow you to modify/tamper with elements, hide annoying things etc. Do you join lerna and block everyone now?<p>I could agree with the name change, even if to not stir up a hornet's nest
Has anything like this ever been hashed out in court?<p>I'm curious where the line is from a legal perspective? Ad blocker (purposely deny some scripts from running)? Custom user styling? User scripts (greasemonkey/tamper monkey etc), browser "reader views"? Accessibility tools? The browser dev tools?
I've been working on and off on a native macOS slack client. It's showing some promise in terms of speed, RAM usage, it looks prettier because it can use system blurs etc. But yeah i also worry about their lawyers. So i probably won't finish it. Pity.
That's unfortunate, the only feedback I'd have for the creator who did a lot of good and with good intentions too I believe, is to pick a different, less "confrontational" name when doing stuff like this. Slack is now just being defensive.
That's ridiculous. It's your browser running your extension, you're interacting with Slack in a way they allow (downloading their HTML and JS and talking to whatever internal API they use). How in the world they can prevent you from doing that?
Why Slack? Why are their services used by anybody? It is like IRC never happened.<p>I have been on a couple of projects that used Slack and AFAICT there is nothing in their service that accounts for them being a hugely successful business.
I could hardly understand why do people use Slack at all. Once I've read the BetterSlack features list I've came up wit the idea that perhaps it could make Slack useful and I might re-visit it. Such a waste.
This is why you shouldn't use non-free software.<p>Also reverse engineering for the purposes of compatibility is nominally legal in the USA, but like every other so-called right it's pay to play.
That is sad! My condolences. That was a very well written letter from Slack and I completely agree with them, but unfortunate for BetterSlack nonetheless. Always room to pivot!
> It is okay to be descriptive about what your product does, but we prefer that you do not include the word “Slack” in your product’s name.<p>How about BetterSlacker? Or some synonym of Slack.
Personally, I’d change the name and either not respond to them or send a “8====>~~~~” in response and continue.<p>(Maybe change the name to “somewhat less abjectly shitty 90s chat monolith”)
This is such a big shame, especially since the native Slack app is consuming such a lot of processor and battery power and it runs much more efficiently in the browser!
I hate these emails. Why do corporations have to be so heavy handed? How about just a nice message explaining the problem and possible solutions. Love to read about something like that! I now hope someone keeps slack’s legal department busy. The product sucks anyways. It was down yesterday and it’s a poor excuse for a reliable chat platform.