New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implement kite promotion? #588

Closed
bindlock opened this Issue Apr 27, 2017 · 127 comments

Comments

Projects
None yet
@bindlock

bindlock commented Apr 27, 2017

Hello.

16c11d8
Could you add the way to disable it?

@bfis

This comment has been minimized.

Show comment
Hide comment
@bfis

bfis Apr 27, 2017

As I understand the function of this package, it should not even be in there at all.

bfis commented Apr 27, 2017

As I understand the function of this package, it should not even be in there at all.

@neumond

This comment has been minimized.

Show comment
Hide comment
@neumond

neumond Apr 27, 2017

Time for adblock for atom 🤦‍

kite-minimap-wrapper > div {
    display: none;
}

neumond commented Apr 27, 2017

Time for adblock for atom 🤦‍

kite-minimap-wrapper > div {
    display: none;
}
@d4rr3ll

This comment has been minimized.

Show comment
Hide comment
@d4rr3ll

d4rr3ll Apr 27, 2017

Even with the above css tweak this still leaves the minimap gutter behind. Definitely needs a disable option. Disabled the whole package for now.

d4rr3ll commented Apr 27, 2017

Even with the above css tweak this still leaves the minimap gutter behind. Definitely needs a disable option. Disabled the whole package for now.

@krzysztof-sikorski

This comment has been minimized.

Show comment
Hide comment
@krzysztof-sikorski

krzysztof-sikorski Apr 27, 2017

"Toggle minimap" command leaves the advertisement visible and any further toggling just duplicate the advertisement without showing the actual minimap 😡

I would not mind the promotion if it was implemented correctly (for example disabled by default and with customizable position and max size), but right now the behaviour is simply obnoxious 👎

krzysztof-sikorski commented Apr 27, 2017

"Toggle minimap" command leaves the advertisement visible and any further toggling just duplicate the advertisement without showing the actual minimap 😡

I would not mind the promotion if it was implemented correctly (for example disabled by default and with customizable position and max size), but right now the behaviour is simply obnoxious 👎

@krzysztof-sikorski

This comment has been minimized.

Show comment
Hide comment
@krzysztof-sikorski

krzysztof-sikorski Apr 27, 2017

And now the editor just freezed after I comitted code changes via commandline 😡

I do not have time nor patience to investigate whether the cause was this package, minimap-git-diff, or some other junk - I may revisit this package in the future, but right now I consider it broken and worth only uninstalling 🔥

krzysztof-sikorski commented Apr 27, 2017

And now the editor just freezed after I comitted code changes via commandline 😡

I do not have time nor patience to investigate whether the cause was this package, minimap-git-diff, or some other junk - I may revisit this package in the future, but right now I consider it broken and worth only uninstalling 🔥

@erikgeiser

This comment has been minimized.

Show comment
Hide comment
@erikgeiser

erikgeiser Apr 27, 2017

For now you can use this workaround:
apm install minimap@4.27.1

It's just insane that someone would consider it to be a good idea to shove adds in (almost) every atom user's face.

erikgeiser commented Apr 27, 2017

For now you can use this workaround:
apm install minimap@4.27.1

It's just insane that someone would consider it to be a good idea to shove adds in (almost) every atom user's face.

@stevenafranklin

This comment has been minimized.

Show comment
Hide comment
@stevenafranklin

stevenafranklin Apr 27, 2017

After wasting time with this broken package I closed Atom and opened Sublime Text. If this advertisement is still here on Monday morning I'm uninstalling Atom.

stevenafranklin commented Apr 27, 2017

After wasting time with this broken package I closed Atom and opened Sublime Text. If this advertisement is still here on Monday morning I'm uninstalling Atom.

@iron0012

This comment has been minimized.

Show comment
Hide comment
@iron0012

iron0012 Apr 27, 2017

This is not cool at all. Kind of crazy that anyone would think this is okay.

iron0012 commented Apr 27, 2017

This is not cool at all. Kind of crazy that anyone would think this is okay.

@cbarrick

This comment has been minimized.

Show comment
Hide comment
@cbarrick

cbarrick Apr 27, 2017

I see how this can be a useful feature for some. However, I do not want it. This feature should be an external plugin.

Additionally, this feature does not work with minimap-autohide, which is a real bug and reason enough to revert the change.

@abe33 Why does this feature live here instead of kite/atom-pugin?

cbarrick commented Apr 27, 2017

I see how this can be a useful feature for some. However, I do not want it. This feature should be an external plugin.

Additionally, this feature does not work with minimap-autohide, which is a real bug and reason enough to revert the change.

@abe33 Why does this feature live here instead of kite/atom-pugin?

@bindlock

This comment has been minimized.

Show comment
Hide comment
@bindlock

bindlock Apr 28, 2017

Looks like @abe33 made new release (4.28.1) with button which hides the docs.
a4dc07b

Click on button updates config.cson:

minimap:
    ...
    disablePythonDocLinks: true
    ....

bindlock commented Apr 28, 2017

Looks like @abe33 made new release (4.28.1) with button which hides the docs.
a4dc07b

Click on button updates config.cson:

minimap:
    ...
    disablePythonDocLinks: true
    ....
@krzysztof-sikorski

This comment has been minimized.

Show comment
Hide comment
@krzysztof-sikorski

krzysztof-sikorski Apr 28, 2017

This is still opt-out instead of opt-in. Even if you opt-out, the package still generates links in the background, instead of completely disabling the "feature". And if you ever change your mind about ads and toggle disablePythonDocLinks in the settings file, you get a nice fat low-level error 👎

So yes, the package is still broken and not worthy being used.

krzysztof-sikorski commented Apr 28, 2017

This is still opt-out instead of opt-in. Even if you opt-out, the package still generates links in the background, instead of completely disabling the "feature". And if you ever change your mind about ads and toggle disablePythonDocLinks in the settings file, you get a nice fat low-level error 👎

So yes, the package is still broken and not worthy being used.

@neumond

This comment has been minimized.

Show comment
Hide comment
@neumond

neumond Apr 28, 2017

Can I block package versions like I do in pip requirements files?
Like this <=minimap@4.27.1

neumond commented Apr 28, 2017

Can I block package versions like I do in pip requirements files?
Like this <=minimap@4.27.1

@petKitsune

This comment has been minimized.

Show comment
Hide comment
@petKitsune

petKitsune Apr 28, 2017

@krzysztof-sikorski "This is still opt-out instead of opt-in."

yup :(
I don't like ad systems
its back to 4.27.1

petKitsune commented Apr 28, 2017

@krzysztof-sikorski "This is still opt-out instead of opt-in."

yup :(
I don't like ad systems
its back to 4.27.1

@kbrose

This comment has been minimized.

Show comment
Hide comment
@kbrose

kbrose Apr 28, 2017

Definitely against company policy to upload code to external servers. This is the kind of BS that makes companies completely lock down the software developers can use. Very disappointed.

kbrose commented Apr 28, 2017

Definitely against company policy to upload code to external servers. This is the kind of BS that makes companies completely lock down the software developers can use. Very disappointed.

@erikgeiser

This comment has been minimized.

Show comment
Hide comment
@erikgeiser

erikgeiser Apr 30, 2017

Seems like the developer is ignoring our concerns. If there won't be any update on the situation in the near future someone should really think about forking the project and publish it on apm. I don't think many people are okay with the ads and everyone I know that uses Atom also uses minimap, so I guess there is a huge demand for a fork.

erikgeiser commented Apr 30, 2017

Seems like the developer is ignoring our concerns. If there won't be any update on the situation in the near future someone should really think about forking the project and publish it on apm. I don't think many people are okay with the ads and everyone I know that uses Atom also uses minimap, so I guess there is a huge demand for a fork.

@tedohayer

This comment has been minimized.

Show comment
Hide comment
@tedohayer

tedohayer May 2, 2017

This has given me a very negative opinion of Kite.

tedohayer commented May 2, 2017

This has given me a very negative opinion of Kite.

@jlozano

This comment has been minimized.

Show comment
Hide comment
@jlozano

jlozano May 3, 2017

Hi, folks -- Juan from Kite here, thank you for the feedback, we appreciate it.

Wanted to clarify a few things as well as provide updates on your feedback.

Clarification

  • The minimap plugin does not upload your code to any third party services. Your code is analyzed locally by the plugin to generate static links to relevant documentation on Kite.
  • If you disable the links by choosing to opt-out, we do not analyze or generate any links in the background.

Feedback

  • We have decided to leave the feature as opt-out since many users have found it useful. However, we have added two easy ways to disable the links:
    1. the x in the corner of the links box
    2. the settings for the minimap plugin.
  • I believe we have addressed the bugs around disabling the links; please let us know if you still encounter them.
  • We only show a maximum of 5 links. Thus there is a max size for the links box.
  • Pressing the chevron now collapses the links.

jlozano commented May 3, 2017

Hi, folks -- Juan from Kite here, thank you for the feedback, we appreciate it.

Wanted to clarify a few things as well as provide updates on your feedback.

Clarification

  • The minimap plugin does not upload your code to any third party services. Your code is analyzed locally by the plugin to generate static links to relevant documentation on Kite.
  • If you disable the links by choosing to opt-out, we do not analyze or generate any links in the background.

Feedback

  • We have decided to leave the feature as opt-out since many users have found it useful. However, we have added two easy ways to disable the links:
    1. the x in the corner of the links box
    2. the settings for the minimap plugin.
  • I believe we have addressed the bugs around disabling the links; please let us know if you still encounter them.
  • We only show a maximum of 5 links. Thus there is a max size for the links box.
  • Pressing the chevron now collapses the links.
@rgawenda

This comment has been minimized.

Show comment
Hide comment
@rgawenda

rgawenda May 3, 2017

Please tell us one single reason for this to be in the main minimap instead of a minimap plugin. I just don't get it.

Sample reasons may include:
It does need Internet connection, so it costs money.
It is not part of the map.
It is language dependent.

Or:
Being a plugin makes it less useful for those who liked it.

rgawenda commented May 3, 2017

Please tell us one single reason for this to be in the main minimap instead of a minimap plugin. I just don't get it.

Sample reasons may include:
It does need Internet connection, so it costs money.
It is not part of the map.
It is language dependent.

Or:
Being a plugin makes it less useful for those who liked it.

@krzysztof-sikorski

This comment has been minimized.

Show comment
Hide comment
@krzysztof-sikorski

krzysztof-sikorski May 4, 2017

If you disable the links by choosing to opt-out, we do not analyze or generate any links in the background.

I'm sorry, I got a different impression from reading commit a7147ec. I re-checked it now and I see I was wrong (see the condition on https://github.com/atom-minimap/minimap/blob/master/lib/main.js#L397).

The minimap plugin does not upload your code to any third party services. Your code is analyzed locally by the plugin to generate static links to relevant documentation on Kite.

Does not upload yet. With the way this advert was introduced we have no guarantee some tracking code will not be sneaked in in the future. In fact the links already contain source=minimap tracking parameter...

many users have found it useful

How exactly did you determine that? Do you mean initial "WTF is this?" traffic to your website?

krzysztof-sikorski commented May 4, 2017

If you disable the links by choosing to opt-out, we do not analyze or generate any links in the background.

I'm sorry, I got a different impression from reading commit a7147ec. I re-checked it now and I see I was wrong (see the condition on https://github.com/atom-minimap/minimap/blob/master/lib/main.js#L397).

The minimap plugin does not upload your code to any third party services. Your code is analyzed locally by the plugin to generate static links to relevant documentation on Kite.

Does not upload yet. With the way this advert was introduced we have no guarantee some tracking code will not be sneaked in in the future. In fact the links already contain source=minimap tracking parameter...

many users have found it useful

How exactly did you determine that? Do you mean initial "WTF is this?" traffic to your website?

@petKitsune

This comment has been minimized.

Show comment
Hide comment
@petKitsune

petKitsune May 4, 2017

many users have found it useful

ad tricks 101

petKitsune commented May 4, 2017

many users have found it useful

ad tricks 101

@erikgeiser

This comment has been minimized.

Show comment
Hide comment
@erikgeiser

erikgeiser May 4, 2017

Isn't the idea behind a modular editor like atom that you get a basic editor and you add packages until the editor does what you need. I like to have a minimap like in sublime, so I install the minimap. Maybe I like to try kite sometime, then I will search for a kite package, maybe also for a minimap-kite package if I wan't related stuff displayed in minimap. The atom-minimap github account itself harbors a lot of minimap-* packages. Shouldn't they be included in minimap itself according to the many users have found it useful logic? No, because the idea is that every user can and should decide for himself what he wants.

Now you come into the equation @jlozano. Kite is just mindlessly shoved into anyone's face. What do you imagine happens when every plugin dev just add stuffs related to corporate stuff from the company he works at or other projects of his. You can't possibly think this is a good idea. Maybe someday you get a competitor and people wan't to use their product instead of kite, their minimap would still display (or at least contain) kite related stuff.

Is your vision of atom as a platform that any package should just becomes an ad canvas? Or are you in any way special that you should advertise but not others? Should open software in general be a ad platform? It's a slippery slope.

erikgeiser commented May 4, 2017

Isn't the idea behind a modular editor like atom that you get a basic editor and you add packages until the editor does what you need. I like to have a minimap like in sublime, so I install the minimap. Maybe I like to try kite sometime, then I will search for a kite package, maybe also for a minimap-kite package if I wan't related stuff displayed in minimap. The atom-minimap github account itself harbors a lot of minimap-* packages. Shouldn't they be included in minimap itself according to the many users have found it useful logic? No, because the idea is that every user can and should decide for himself what he wants.

Now you come into the equation @jlozano. Kite is just mindlessly shoved into anyone's face. What do you imagine happens when every plugin dev just add stuffs related to corporate stuff from the company he works at or other projects of his. You can't possibly think this is a good idea. Maybe someday you get a competitor and people wan't to use their product instead of kite, their minimap would still display (or at least contain) kite related stuff.

Is your vision of atom as a platform that any package should just becomes an ad canvas? Or are you in any way special that you should advertise but not others? Should open software in general be a ad platform? It's a slippery slope.

@krzysztof-sikorski

This comment has been minimized.

Show comment
Hide comment
@krzysztof-sikorski

krzysztof-sikorski May 4, 2017

Another thought:

We only show a maximum of 5 links. Thus there is a max size for the links box.

If I was ever interested in automatically generated documentation links, I would like to freely browse all of them instead of getting just an arbitrarily chosen sample. It should be a completely independent widget and not a "box" shoved inside minimap area and consuming its vertical space.

In other words, this "feature" does not work well even for its intended target 👎

krzysztof-sikorski commented May 4, 2017

Another thought:

We only show a maximum of 5 links. Thus there is a max size for the links box.

If I was ever interested in automatically generated documentation links, I would like to freely browse all of them instead of getting just an arbitrarily chosen sample. It should be a completely independent widget and not a "box" shoved inside minimap area and consuming its vertical space.

In other words, this "feature" does not work well even for its intended target 👎

@rgawenda

This comment has been minimized.

Show comment
Hide comment
@rgawenda

rgawenda May 5, 2017

Here's a patch I've verified against current branch that undoes the damage of 16c11d8

remove-kite.patch.txt

rgawenda commented May 5, 2017

Here's a patch I've verified against current branch that undoes the damage of 16c11d8

remove-kite.patch.txt

@p-e-w

This comment has been minimized.

Show comment
Hide comment
@p-e-w

p-e-w May 6, 2017

Minimap was the first Atom package I ever installed, and it has been with me continuously since 2014. But when I saw this, I clicked the "Uninstall" button without a second's hesitation.

It's obvious to any reasonable person that those ads, even if taken to be useful, have nothing to do with this package's functionality (documentation links vs. code navigation). The implementation is buggy (see recently filed issues), ugly (hardcoded module names), and works only for a single programming language. Predictably, the backlash (this issue) has been swift and substantial.

Still, a week passed without any response from the developer. Then comes @jlozano and adds insult to injury:

We have decided to leave the feature as opt-out since many users have found it useful.

I don't believe that. Have you even read this issue thread?!? Advertising is not a feature, and if such functionality (automatic documentation links) were desired, it would be links to Stack Overflow, Read the Docs, or some other established and trusted resource, not to a little-known startup product that is barely out of beta (no offense intended).

But hey – your roof, your rule. I have contributed not a single line of code to Minimap, and would never presume to tell the author what he can or cannot do with his own project. But for the love of all that is holy, stop trying to spin this as a "feature" that people want. It's not a feature, it's advertising – and people don't want it, you want it. The least you can do is own up to that.

Going forward, if this very bad example from the number one Atom package starts getting imitated by other package authors, the entire package ecosystem – and, by extension, the Atom editor itself – could be at risk. The only way to ensure this doesn't happen seems to be clear rules from the Atom team about what a package is and is not allowed to do if it wants to be listed in the official database. Should Atom become known as the only mainstream editor with "sponsored" packages? I hope not...

p-e-w commented May 6, 2017

Minimap was the first Atom package I ever installed, and it has been with me continuously since 2014. But when I saw this, I clicked the "Uninstall" button without a second's hesitation.

It's obvious to any reasonable person that those ads, even if taken to be useful, have nothing to do with this package's functionality (documentation links vs. code navigation). The implementation is buggy (see recently filed issues), ugly (hardcoded module names), and works only for a single programming language. Predictably, the backlash (this issue) has been swift and substantial.

Still, a week passed without any response from the developer. Then comes @jlozano and adds insult to injury:

We have decided to leave the feature as opt-out since many users have found it useful.

I don't believe that. Have you even read this issue thread?!? Advertising is not a feature, and if such functionality (automatic documentation links) were desired, it would be links to Stack Overflow, Read the Docs, or some other established and trusted resource, not to a little-known startup product that is barely out of beta (no offense intended).

But hey – your roof, your rule. I have contributed not a single line of code to Minimap, and would never presume to tell the author what he can or cannot do with his own project. But for the love of all that is holy, stop trying to spin this as a "feature" that people want. It's not a feature, it's advertising – and people don't want it, you want it. The least you can do is own up to that.

Going forward, if this very bad example from the number one Atom package starts getting imitated by other package authors, the entire package ecosystem – and, by extension, the Atom editor itself – could be at risk. The only way to ensure this doesn't happen seems to be clear rules from the Atom team about what a package is and is not allowed to do if it wants to be listed in the official database. Should Atom become known as the only mainstream editor with "sponsored" packages? I hope not...

@djczaski

This comment has been minimized.

Show comment
Hide comment
@djczaski

djczaski May 8, 2017

I've disabled minimap for now. Anyone planning to fork and remove the kite ads?

djczaski commented May 8, 2017

I've disabled minimap for now. Anyone planning to fork and remove the kite ads?

@krzysztof-sikorski

This comment has been minimized.

Show comment
Hide comment
@krzysztof-sikorski

krzysztof-sikorski May 9, 2017

@djczaski I accidentally found one such fork on Github, but it looks more like a temporary workaround than a long-term investment.

krzysztof-sikorski commented May 9, 2017

@djczaski I accidentally found one such fork on Github, but it looks more like a temporary workaround than a long-term investment.

@lee-dohm

This comment has been minimized.

Show comment
Hide comment
@lee-dohm

lee-dohm May 10, 2017

👋 For those that don't know me, I'm the Community Manager for Atom. I've also been a user of the minimap package since its inception and I've been watching the comments on this issue since it was opened. Since it seems some are expecting some sort of response from the Atom team about this, I'll comment.

First, as a developer, I agree that the functionality described here makes more sense as a plugin for minimap than built in to the base package.

As a steward of the Atom editor and the Atom package ecosystem, I'm of course concerned about packages being used for nefarious purposes. But I'm also loathe to impose blanket rules on what is or isn't valid functionality for packages without some very well-thought-out rationalization and justification for those rules. I've been watching this topic hoping that the smart people here would give me some ideas 😉 Most of what I have seen so far has been:

  1. The functionality is undesirable
  2. The functionality is unnecessary
  3. The functionality is buggy
  4. The functionality is better implemented in a different way
  5. Slippery slope arguments about advertisements killing Atom

I hope we can all agree that items 1 through 4 aren't valid reasons for keeping things out of the Atom package registry. We also all agree that Atom containing advertisements is undesirable.

So what constitutes an advertisement? I consider this an advertisement:

screen shot 2017-05-10 at 12 42 58 pm

Its sole purpose is to get you to come buy something and, other than informing you of a jewelry business, has no useful benefit to the viewer. But the Kite functionality doesn't seem to have a sole purpose of getting one to buy something and does seem to provide benefit to some potential viewers even if it doesn't provide any benefit to others.[1]

So what if someone created a package that showed the latest Wall Street Journal headlines as links to the stories? The Wall Street Journal is a for-pay service and a lot of their content is behind paywalls. But I can see someone feeling that package would be very useful for them, especially if they already had a subscription. According to the logic I see being employed by the more vehement comments here, those links would be considered "advertisements" despite how very useful they might be to some. I have a hard time agreeing with that logic.

Now, with that said:

  • I agree that some people find the Kite functionality not useful to them
  • I completely understand if people want to uninstall minimap
  • I strongly advocate for people who think that this is a problematic direction to fork the package and provide an alternative to the community (open source rules 🤘)

I'm definitely keeping my eye on this kind of thing and if advertisements become a problem, I'm sure that the Atom team will consider specific rules. I just don't think we're there yet.

[1] If providing benefit to some but not to others was a reason to not include functionality, pretty much every feature in Atom would have to be removed! I think we might still be able to have a box where you could type stuff ... maybe save the file 😆

lee-dohm commented May 10, 2017

👋 For those that don't know me, I'm the Community Manager for Atom. I've also been a user of the minimap package since its inception and I've been watching the comments on this issue since it was opened. Since it seems some are expecting some sort of response from the Atom team about this, I'll comment.

First, as a developer, I agree that the functionality described here makes more sense as a plugin for minimap than built in to the base package.

As a steward of the Atom editor and the Atom package ecosystem, I'm of course concerned about packages being used for nefarious purposes. But I'm also loathe to impose blanket rules on what is or isn't valid functionality for packages without some very well-thought-out rationalization and justification for those rules. I've been watching this topic hoping that the smart people here would give me some ideas 😉 Most of what I have seen so far has been:

  1. The functionality is undesirable
  2. The functionality is unnecessary
  3. The functionality is buggy
  4. The functionality is better implemented in a different way
  5. Slippery slope arguments about advertisements killing Atom

I hope we can all agree that items 1 through 4 aren't valid reasons for keeping things out of the Atom package registry. We also all agree that Atom containing advertisements is undesirable.

So what constitutes an advertisement? I consider this an advertisement:

screen shot 2017-05-10 at 12 42 58 pm

Its sole purpose is to get you to come buy something and, other than informing you of a jewelry business, has no useful benefit to the viewer. But the Kite functionality doesn't seem to have a sole purpose of getting one to buy something and does seem to provide benefit to some potential viewers even if it doesn't provide any benefit to others.[1]

So what if someone created a package that showed the latest Wall Street Journal headlines as links to the stories? The Wall Street Journal is a for-pay service and a lot of their content is behind paywalls. But I can see someone feeling that package would be very useful for them, especially if they already had a subscription. According to the logic I see being employed by the more vehement comments here, those links would be considered "advertisements" despite how very useful they might be to some. I have a hard time agreeing with that logic.

Now, with that said:

  • I agree that some people find the Kite functionality not useful to them
  • I completely understand if people want to uninstall minimap
  • I strongly advocate for people who think that this is a problematic direction to fork the package and provide an alternative to the community (open source rules 🤘)

I'm definitely keeping my eye on this kind of thing and if advertisements become a problem, I'm sure that the Atom team will consider specific rules. I just don't think we're there yet.

[1] If providing benefit to some but not to others was a reason to not include functionality, pretty much every feature in Atom would have to be removed! I think we might still be able to have a box where you could type stuff ... maybe save the file 😆

@vith

This comment has been minimized.

Show comment
Hide comment
@vith

vith May 10, 2017

What makes this an advertisement is not the content, but the context in which the content appears. If it was in a separate package, the links would be appropriate for the purpose of that package, and users who choose to install it would be getting what they expected.

In my view what's happened here is a transparent move to leverage the popularity of this package to promote an unrelated service.

This may be the first time it's happened in the atom package ecosystem but it's not a new phenomenon in general. If you look at web browser extensions, popular extensions often get sold off to another party who then adds ad-injection or other user-hostile code in an attempt at monetization. Browser vendors have been removing extensions that do this from their extension stores for years now.

So what's the difference between the atom-minimap kite promotion and, say, a Gmail checker browser extension getting an update that starts turning random words on all the pages you view into ad links?

Demographic specificity?

vith commented May 10, 2017

What makes this an advertisement is not the content, but the context in which the content appears. If it was in a separate package, the links would be appropriate for the purpose of that package, and users who choose to install it would be getting what they expected.

In my view what's happened here is a transparent move to leverage the popularity of this package to promote an unrelated service.

This may be the first time it's happened in the atom package ecosystem but it's not a new phenomenon in general. If you look at web browser extensions, popular extensions often get sold off to another party who then adds ad-injection or other user-hostile code in an attempt at monetization. Browser vendors have been removing extensions that do this from their extension stores for years now.

So what's the difference between the atom-minimap kite promotion and, say, a Gmail checker browser extension getting an update that starts turning random words on all the pages you view into ad links?

Demographic specificity?

@jlozano

This comment has been minimized.

Show comment
Hide comment
@jlozano

jlozano May 10, 2017

Hi all,

Thank you for the input, product feedback and suggestions, we appreciate it.

Wanted to add some clarification on some points that were made:

  1. The minimap plugin does not, and will never upload your code to any third party services.
  2. We decided to hard code the module names to avoid making requests to our servers.

Kite's mission is to provide tools that make developers more productive, and we thought that providing links to documentation might be helpful to some users. We are sorry to hear that people on this thread have not found it useful. However, we plan to iterate on the feature to make it more valuable and will address any bugs that arise as quickly as possible. If we thought that this feature provided no value to users, we would not have gone in this direction. We hope to continue to work with you all to improve the feature going forward.

jlozano commented May 10, 2017

Hi all,

Thank you for the input, product feedback and suggestions, we appreciate it.

Wanted to add some clarification on some points that were made:

  1. The minimap plugin does not, and will never upload your code to any third party services.
  2. We decided to hard code the module names to avoid making requests to our servers.

Kite's mission is to provide tools that make developers more productive, and we thought that providing links to documentation might be helpful to some users. We are sorry to hear that people on this thread have not found it useful. However, we plan to iterate on the feature to make it more valuable and will address any bugs that arise as quickly as possible. If we thought that this feature provided no value to users, we would not have gone in this direction. We hope to continue to work with you all to improve the feature going forward.

@MarvBob

This comment has been minimized.

Show comment
Hide comment
@MarvBob

MarvBob May 10, 2017

Ads are getting smarter...
If this feature is appreciated by a lot of people then why not put it in a separate package ? People who want it would install it. The problem is not that the feature is useless, it's that it's included in a package used to display a minimap of your code and it is a very different feature. Seriously, you would not expect your linter to provide a chat feature, it has no sense.
I can understand the point of this feature but not the fact that it's included in the minimap package. If you guys cannot understand this then I hope someone will fork minimap and keep it focused to its point.

MarvBob commented May 10, 2017

Ads are getting smarter...
If this feature is appreciated by a lot of people then why not put it in a separate package ? People who want it would install it. The problem is not that the feature is useless, it's that it's included in a package used to display a minimap of your code and it is a very different feature. Seriously, you would not expect your linter to provide a chat feature, it has no sense.
I can understand the point of this feature but not the fact that it's included in the minimap package. If you guys cannot understand this then I hope someone will fork minimap and keep it focused to its point.

@bronson

This comment has been minimized.

Show comment
Hide comment
@bronson

bronson Jul 19, 2017

Well, "asks permission" is quite a bit better than "can be disabled"... But I have to agree that the original point is pretty silly!

bronson commented Jul 19, 2017

Well, "asks permission" is quite a bit better than "can be disabled"... But I have to agree that the original point is pretty silly!

@bronson

This comment has been minimized.

Show comment
Hide comment
@bronson

bronson Jul 19, 2017

Wandering back toward topic, I wonder if a good first step would be to put together something like an Atom package code of conduct. I picture a list of best practices that well-behaved packages would agree to. If a packages says in the README that it conforms, then we can be confident that -- were a transgression found -- a revert would be quickly merged.

Never accessing services without explicit permission would be on that list. Also, I expect something about keeping packages focused would be on there too. For example, if you want to add, say, Python smarts to the minimap, you'd have to do it with hooks and additional packages. You couldn't just splat it in kitchen-sink style.

But, I gotta admit, that list might be pretty short.

bronson commented Jul 19, 2017

Wandering back toward topic, I wonder if a good first step would be to put together something like an Atom package code of conduct. I picture a list of best practices that well-behaved packages would agree to. If a packages says in the README that it conforms, then we can be confident that -- were a transgression found -- a revert would be quickly merged.

Never accessing services without explicit permission would be on that list. Also, I expect something about keeping packages focused would be on there too. For example, if you want to add, say, Python smarts to the minimap, you'd have to do it with hooks and additional packages. You couldn't just splat it in kitchen-sink style.

But, I gotta admit, that list might be pretty short.

@jacobsee

This comment has been minimized.

Show comment
Hide comment
@jacobsee

jacobsee Jul 19, 2017

@bronson There is a more generic code of conduct in the footer of the Atom package listing. If it could be argued that this is unethical or unprofessional (which I believe there is a strong case for, given that Atom's own Metrics package asks permission), then this Kite integration would already be in violation.

jacobsee commented Jul 19, 2017

@bronson There is a more generic code of conduct in the footer of the Atom package listing. If it could be argued that this is unethical or unprofessional (which I believe there is a strong case for, given that Atom's own Metrics package asks permission), then this Kite integration would already be in violation.

@bronson

This comment has been minimized.

Show comment
Hide comment
@bronson

bronson Jul 19, 2017

@jacobsee true, calling what Kite did unprofessional is plausible but that's pretty subjective... I'm hoping that, if a code was meant for the packages themselves, it could be nice and explicit.

One downside would be getting lawyered on your own side project by people using the Package Code of Conduct more like a weapon... That's probably guaranteed to happen at some point, alas.

bronson commented Jul 19, 2017

@jacobsee true, calling what Kite did unprofessional is plausible but that's pretty subjective... I'm hoping that, if a code was meant for the packages themselves, it could be nice and explicit.

One downside would be getting lawyered on your own side project by people using the Package Code of Conduct more like a weapon... That's probably guaranteed to happen at some point, alas.

@abe33

This comment has been minimized.

Show comment
Hide comment
@abe33

abe33 Jul 19, 2017

Contributor

So, what can I say…

Firstly, I must apologize for not replying on this thread before. I'm not good when it comes to communication skills and this kind of crisis management has created me a huge stress. That might sound lame, but it's sadly true, we're not all equal when it comes to stress managament, and I'm really bad at that. I wish I had @lee-dohm's coolness and de-escalating skills.

Secondly, even if it may seems to come late, we've heard you and decided to revert all the changes related to the python links feature. The next release will no longer show anything. I'll also make sure that the relation between Kite and the minimap package are as clear as possible. I've been an employee at Kite for over half a year now and this plugin is now officially maintained by Kite.

Again I'm deeply sorry for all that story. I should have be most wary of all the potential misunderstandings that move could create and while we never sent any code, nor any request to a third party I can understand that this was not explicit enough and probably hard to justify anyway.

Contributor

abe33 commented Jul 19, 2017

So, what can I say…

Firstly, I must apologize for not replying on this thread before. I'm not good when it comes to communication skills and this kind of crisis management has created me a huge stress. That might sound lame, but it's sadly true, we're not all equal when it comes to stress managament, and I'm really bad at that. I wish I had @lee-dohm's coolness and de-escalating skills.

Secondly, even if it may seems to come late, we've heard you and decided to revert all the changes related to the python links feature. The next release will no longer show anything. I'll also make sure that the relation between Kite and the minimap package are as clear as possible. I've been an employee at Kite for over half a year now and this plugin is now officially maintained by Kite.

Again I'm deeply sorry for all that story. I should have be most wary of all the potential misunderstandings that move could create and while we never sent any code, nor any request to a third party I can understand that this was not explicit enough and probably hard to justify anyway.

@lukaskollmer

This comment has been minimized.

Show comment
Hide comment
@lukaskollmer

lukaskollmer commented Jul 19, 2017

Thank you!

@abe33 abe33 closed this in f26732b Jul 19, 2017

@dessant

This comment has been minimized.

Show comment
Hide comment
@dessant

dessant Jul 19, 2017

@abe33, could you also take care of this autocomplete-python issue? autocomplete-python/autocomplete-python#308

Especially that biased engine selection dialog.

dessant commented Jul 19, 2017

@abe33, could you also take care of this autocomplete-python issue? autocomplete-python/autocomplete-python#308

Especially that biased engine selection dialog.

@mehcode

This comment has been minimized.

Show comment
Hide comment
@mehcode

mehcode Jul 20, 2017

Collaborator

@abe33 Would you willing to add me as a member of atom-minimap with write access to this repository?

It would go a long way towards repairing user relations if someone impartial (not attached to Kite) had access to the repository. I would do my part (triage, bugs, etc.) as a maintainer.


I started the fork that removed Kite and the community is currently in the process of moving to it. It's currently a featured package in Atom. It would benefit the community if we can all be on a single package.

Collaborator

mehcode commented Jul 20, 2017

@abe33 Would you willing to add me as a member of atom-minimap with write access to this repository?

It would go a long way towards repairing user relations if someone impartial (not attached to Kite) had access to the repository. I would do my part (triage, bugs, etc.) as a maintainer.


I started the fork that removed Kite and the community is currently in the process of moving to it. It's currently a featured package in Atom. It would benefit the community if we can all be on a single package.

@petKitsune

This comment has been minimized.

Show comment
Hide comment
@petKitsune

petKitsune Jul 20, 2017

@mehcode "@abe33 Would you willing to add me as a member of atom-minimap with write access to this repository?"

yes please

i'm a bit paranoid when
"Sorry for that, but now we are completely honest"
comes around

petKitsune commented Jul 20, 2017

@mehcode "@abe33 Would you willing to add me as a member of atom-minimap with write access to this repository?"

yes please

i'm a bit paranoid when
"Sorry for that, but now we are completely honest"
comes around

@getaaron

This comment has been minimized.

Show comment
Hide comment
@getaaron

getaaron Jul 20, 2017

In addition to giving @mehcode write access, please give write access to @laurieskelly

getaaron commented Jul 20, 2017

In addition to giving @mehcode write access, please give write access to @laurieskelly

@dflock

This comment has been minimized.

Show comment
Hide comment
@dflock

dflock Jul 20, 2017

Yes, I won't be moving back to the base minimap package (from the @mehcode fork) until there are some impartial people with commit access to keep things honest.

dflock commented Jul 20, 2017

Yes, I won't be moving back to the base minimap package (from the @mehcode fork) until there are some impartial people with commit access to keep things honest.

kiero added a commit to kiero/dotfiles that referenced this issue Jul 23, 2017

@lthibault

This comment has been minimized.

Show comment
Hide comment
@lthibault

lthibault Jul 24, 2017

I just uninstalled Kite.

It's a real shame as the service was good, but nothing is good enough to justify advertisements in my work-space. The fight against distraction is hard enough as it is without having to think carefully about where I'm clicking due to dark-pattern UI.

Please note that reverting code doesn't repair trust. As a general rule, don't f*#k with people's livelihoods.

Goodbye, Kite.

lthibault commented Jul 24, 2017

I just uninstalled Kite.

It's a real shame as the service was good, but nothing is good enough to justify advertisements in my work-space. The fight against distraction is hard enough as it is without having to think carefully about where I'm clicking due to dark-pattern UI.

Please note that reverting code doesn't repair trust. As a general rule, don't f*#k with people's livelihoods.

Goodbye, Kite.

@rscircus

This comment has been minimized.

Show comment
Hide comment
@rscircus

rscircus Jul 24, 2017

Kudos to @mehcode for the fork! And the author @abe33 for the apology! I'm thinking, that @abe33 might not be responsible for this, but was "asked" by his employer (Kite) to do that.

rscircus commented Jul 24, 2017

Kudos to @mehcode for the fork! And the author @abe33 for the apology! I'm thinking, that @abe33 might not be responsible for this, but was "asked" by his employer (Kite) to do that.

@diegoperini

This comment has been minimized.

Show comment
Hide comment
@diegoperini

diegoperini Jul 24, 2017

Any fork maintained by someone who isn't affiliated with Kite will be more trustworthy from now on. Adding @mehcode or anyone else here with write access won't resolve the trust issue on my side. I now prefer to use a minimap plugin with different maintainers as well as the ones who apologized here. I understand @mehcode 's intention to not to divide the community but sometimes a fork is not a division but a legitimate standing which reminds us not to mess with the ethos of open source software. If @mehcode or anyone else doesn't want to maintain a fork of this, it is still more reasonable to work without a minimap.

This comment is not intended to be a rage post for the Kite team, I hope they learn from their mistakes.

diegoperini commented Jul 24, 2017

Any fork maintained by someone who isn't affiliated with Kite will be more trustworthy from now on. Adding @mehcode or anyone else here with write access won't resolve the trust issue on my side. I now prefer to use a minimap plugin with different maintainers as well as the ones who apologized here. I understand @mehcode 's intention to not to divide the community but sometimes a fork is not a division but a legitimate standing which reminds us not to mess with the ethos of open source software. If @mehcode or anyone else doesn't want to maintain a fork of this, it is still more reasonable to work without a minimap.

This comment is not intended to be a rage post for the Kite team, I hope they learn from their mistakes.

@robjac

This comment has been minimized.

Show comment
Hide comment
@robjac

robjac Jul 24, 2017

jfc; in an effort to appease some people's problem with my complaining in an issue section i've revised my message: shame.

robjac commented Jul 24, 2017

jfc; in an effort to appease some people's problem with my complaining in an issue section i've revised my message: shame.

@aknooh

This comment has been minimized.

Show comment
Hide comment
@aknooh

aknooh Jul 24, 2017

Kite, taking over an open source project and adding ads and promotions to your company is not a cool move. The open source community is outraged at your business tactics.

aknooh commented Jul 24, 2017

Kite, taking over an open source project and adding ads and promotions to your company is not a cool move. The open source community is outraged at your business tactics.

@jonhoo

This comment has been minimized.

Show comment
Hide comment
@jonhoo

jonhoo Jul 24, 2017

This thread is no longer constructive at this point, and should probably be locked. /cc @abe33

jonhoo commented Jul 24, 2017

This thread is no longer constructive at this point, and should probably be locked. /cc @abe33

@dessant

This comment has been minimized.

Show comment
Hide comment
@dessant

dessant Jul 24, 2017

@jonhoo, we could also just stay calm and on topic.

@mehcode's request to be added as a maintainer did not get a public response from the Kite team, I think that is worth waiting out before severing communication channels.

dessant commented Jul 24, 2017

@jonhoo, we could also just stay calm and on topic.

@mehcode's request to be added as a maintainer did not get a public response from the Kite team, I think that is worth waiting out before severing communication channels.

@jonhoo

This comment has been minimized.

Show comment
Hide comment
@jonhoo

jonhoo Jul 24, 2017

@dessant hehe, I think that's good advice in general. The original topic of the issue has been resolved, and it's unclear that further discussion here matters (especially given that this thread was linked to from all over the internet a little while back). As for adding @mehcode (and others) as maintainers, that should probably have its own, separate issue.

jonhoo commented Jul 24, 2017

@dessant hehe, I think that's good advice in general. The original topic of the issue has been resolved, and it's unclear that further discussion here matters (especially given that this thread was linked to from all over the internet a little while back). As for adding @mehcode (and others) as maintainers, that should probably have its own, separate issue.

@abe33

This comment has been minimized.

Show comment
Hide comment
@abe33

abe33 Jul 24, 2017

Contributor

Hello there, I've added @mehcode as a collaborator with write access on this repo.

As for locking down this thread, I'll probably do that at some point, I just don't want to make it looks like I'm trying to shut down criticism.

Contributor

abe33 commented Jul 24, 2017

Hello there, I've added @mehcode as a collaborator with write access on this repo.

As for locking down this thread, I'll probably do that at some point, I just don't want to make it looks like I'm trying to shut down criticism.

@mehcode

This comment has been minimized.

Show comment
Hide comment
@mehcode

mehcode Jul 24, 2017

Collaborator

I've been added as a collaborator. I'll do my part to prevent this from happening again. Thank you all for the support.

The original purpose of the thread is complete. If you have a bug or something to report, open another issue. If you want to keep venting, please do so elsewhere.


Thanks @abe33, I look forward to working with you to keep this awesome project going.

Collaborator

mehcode commented Jul 24, 2017

I've been added as a collaborator. I'll do my part to prevent this from happening again. Thank you all for the support.

The original purpose of the thread is complete. If you have a bug or something to report, open another issue. If you want to keep venting, please do so elsewhere.


Thanks @abe33, I look forward to working with you to keep this awesome project going.

@dessant

This comment has been minimized.

Show comment
Hide comment
@dessant

dessant Jul 24, 2017

@abe33, the damage caused in autocomplete-python still has to be addressed, please discuss it with your team and make a statement over at autocomplete-python/autocomplete-python#308.

dessant commented Jul 24, 2017

@abe33, the damage caused in autocomplete-python still has to be addressed, please discuss it with your team and make a statement over at autocomplete-python/autocomplete-python#308.

@mehcode

This comment has been minimized.

Show comment
Hide comment
@mehcode

mehcode Jul 24, 2017

Collaborator

@dessant This and that are two different projects. I haven't bothered to do anything about autocomplete-python because its effectively unofficially deprecated. Atom is doing a big push towards proper LSP integration and Python has an excellent language server. I'm sure someone (I'd like to if I get time) will make the package. That package (once it exists) would give you auto-complete plus a whole lot more.

Collaborator

mehcode commented Jul 24, 2017

@dessant This and that are two different projects. I haven't bothered to do anything about autocomplete-python because its effectively unofficially deprecated. Atom is doing a big push towards proper LSP integration and Python has an excellent language server. I'm sure someone (I'd like to if I get time) will make the package. That package (once it exists) would give you auto-complete plus a whole lot more.

@adam-arold

This comment has been minimized.

Show comment
Hide comment
@adam-arold

adam-arold Jul 24, 2017

What about forking that repo and removing the crap from it then re-release it on a different name?

adam-arold commented Jul 24, 2017

What about forking that repo and removing the crap from it then re-release it on a different name?

@dessant

This comment has been minimized.

Show comment
Hide comment
@dessant

dessant Jul 24, 2017

@mehcode, thanks for the pointers, that certainly seems like the correct path to take. I did look into the autocomplete-python codebase, and regardless of its legacy architecture, it is also a mess, using deprecated Jedi APIs and requiring the cherry-picking of Jedi commits to do a dependency update.

@adam-arold, a fork was already published for minimap: https://atom.io/packages/minimap-plus.
Though the plan is to keep this repository in check and continue the work here. There is no good reason to further fragment the community now that the Kite promotion was removed and @mehcode has joined the project.

dessant commented Jul 24, 2017

@mehcode, thanks for the pointers, that certainly seems like the correct path to take. I did look into the autocomplete-python codebase, and regardless of its legacy architecture, it is also a mess, using deprecated Jedi APIs and requiring the cherry-picking of Jedi commits to do a dependency update.

@adam-arold, a fork was already published for minimap: https://atom.io/packages/minimap-plus.
Though the plan is to keep this repository in check and continue the work here. There is no good reason to further fragment the community now that the Kite promotion was removed and @mehcode has joined the project.

@MrStonedOne

This comment has been minimized.

Show comment
Hide comment
@MrStonedOne

MrStonedOne Jul 24, 2017

There is no good reason to further fragment the community

NO! Bad @dessant! Bad!

Do not spread this bullshit about fragmenting the community. The whole point of open source is that anybody is able to make a fork, and allow the community to decide. A fragmented community is good. Another name for it would be distributed.

The entire reason this was even a big deal was because there is no where near enough competition, there is always the "one" tool to do something. That "one" plugin that provides a function, with the runner up (if it exist) having no where near the amount of users.

As a user base, we have stop collesasing around these tools and start spreading out more. As it is, these open source projects become single point of failures or other wise big targets because everybody is obsessed with using the #1 project.

So stop stigmatizing forking as "fragmenting the community"

MrStonedOne commented Jul 24, 2017

There is no good reason to further fragment the community

NO! Bad @dessant! Bad!

Do not spread this bullshit about fragmenting the community. The whole point of open source is that anybody is able to make a fork, and allow the community to decide. A fragmented community is good. Another name for it would be distributed.

The entire reason this was even a big deal was because there is no where near enough competition, there is always the "one" tool to do something. That "one" plugin that provides a function, with the runner up (if it exist) having no where near the amount of users.

As a user base, we have stop collesasing around these tools and start spreading out more. As it is, these open source projects become single point of failures or other wise big targets because everybody is obsessed with using the #1 project.

So stop stigmatizing forking as "fragmenting the community"

@atom-minimap atom-minimap locked and limited conversation to collaborators Jul 24, 2017

@mehcode

This comment has been minimized.

Show comment
Hide comment
@mehcode

mehcode Jul 24, 2017

Collaborator

This conversation has served its purpose. I've locked the thread. If you need to further vent, please do so off of this project's issue tracker.

Collaborator

mehcode commented Jul 24, 2017

This conversation has served its purpose. I've locked the thread. If you need to further vent, please do so off of this project's issue tracker.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.