Comments (23)
I am open to Pull Requests addressing concerns. However, at the current time I am unable to allocate time to this.
Applicable section of code: https://github.com/Glavin001/atom-beautify/blob/master/src/beautifiers/index.coffee#L212-L229
I would be happy to accept Pull Requests regarding:
- Improving README with more information
- Changing how analytics are tracked to ensure the user can said
yes
first- Set
analytics
option to default tonull
: https://github.com/Glavin001/atom-beautify/blob/master/src/config.coffee#L12 - When
track
is called:- check if
analytics
is null, if so, show user a prompt asking if they are okay with tracking (Yes / No).- Prompt message should explain what is currently being tracked (language beautified, errors, performance/timing)
- Do not track analytics if
null
(only whentrue
) - If Yes, set
analytics
totrue
- If No, set
analytics
tofalse
- check if
analytics
=true
- track analytics
- check if
analytics
=false
- do no track analytics
- check if
- Thus, all users would have to have explicitly confirmed that they do or do not want analytics tracked
- User will not be tracked until they answer explicitly
yes
- user will see prompt every time they beautify until they select either
yes
orno
(no longernull
)
- User will not be tracked until they answer explicitly
- Set
I'm too worried about privacy
I'm not really sure what privacy concerns there are and how useful this data is.
You can see in the source code what exactly is being tracked.
It is useful to me as the maintainer and a developer to understand which languages/beautifiers have the most bugs/errors and which languages may not be supported and therefore should be added to Atom-Beautify.
For anyone concerned with this, I encourage you to make a Pull Request based on my outline above. That is all I can do, and since I do not have the time to do it right now, it is therefore up to you to contribute and resolve your issue. We are part of the open-source community. We can all contribute to improving this package such that we are happy with it. As always, please let me know if you have any questions.
from atom-beautify.
Excellent! I'm glad this works! I actually thought there was already mention of analytics in the README and that maybe it was too far down on the README, however it turns out that must have been a different project because there was not a note except in the options documentation. Thank you for bringing this to my attention. Let me know if there's anything else I can do.
from atom-beautify.
Use https://www.npmjs.org/package/universal-analytics
from atom-beautify.
^ Did not work. Using https://github.com/Skookum/nodealytics
from atom-beautify.
- Track
atom-beautify
version number
from atom-beautify.
- Track unsupported grammars
from atom-beautify.
- Switch to using Segment.io, with write key
u3c26xkae8
.
from atom-beautify.
See https://github.com/Glavin001/atom-preview/blob/master/lib/preview-view.coffee#L49-L61 and https://github.com/Glavin001/atom-preview/blob/master/lib/preview-view.coffee#L194-L204 for examples.
from atom-beautify.
@Glavin001 commented on 12 jul. 2014 15:55 CEST:
- Track most popular languages beautified (so we know what to prioritize development on)
Do you have a priority list that you can post here?
from atom-beautify.
Here's what I see on Google Analytics:
These metrics are records of each time beautify
is applied. JavaScript and HTML are still the top, and a number of users are beautifying Atom editor when it has not detected a grammar, hence Null Grammar
.
My priorities would be to help those languages used the most, however this is not always the case, as some issues are much more drastic bugs and should be fixed first.
Hope this helps!
from atom-beautify.
Great info! 👍 JavaScript clear winner, HTML used a lot too. Didn't expect PHP to be there.
It might be interesting to log which extensions cause the Null Grammar
, so you can have a prioritized todo-list for future languages.
I'm also wondering if those Null Grammer
are caused by traversing the tree when Beautify Directory
or when manually forcing to beautify a not supported file.
from atom-beautify.
Here is the applicable code for tracking events with analytics: https://github.com/Glavin001/atom-beautify/blob/master/lib/language-options.coffee#L502-L510
Using Segment.io: https://github.com/segmentio/analytics-node
It might be interesting to log which extensions cause the Null Grammar, so you can have a prioritized todo-list for future languages.
Using extensions is a good idea. Maybe a hybrid: <grammar>:<extension>
for event, such that it'd be Null Grammar:ext
.
from atom-beautify.
@Glavin001 commented on 16 feb. 2015 21:57 CET:
Using extensions is a good idea. Maybe a hybrid:
<grammar>:<extension>
for event, such that it'd beNull Grammar:ext
.
That sounds like a great idea.
Besides that I can't find where the literal Null Grammar
is coming from, my CoffeeScript knowledge is too low to make a PR.
from atom-beautify.
Where is the Analytics User ID supposed to come from?
from atom-beautify.
@curtisblackwell : Analytics User Id is generated here: https://github.com/Glavin001/atom-beautify/blob/master/src/beautifiers/index.coffee#L467-L469
from atom-beautify.
Terrible
from atom-beautify.
Could you make it 'opt-in' feature rather than an 'opt-out'? I'll happily enable it even after that 😄
from atom-beautify.
Too bad. I love this package but I'm too worried about privacy. This feature should be clearly mentioned in the README file.
from atom-beautify.
@Glavin001 the issue has to with the fact that Google has data about me which they and not you own. Anything that uses Google analytics faces this issue. Basically you're forcing users to submit data to a third party without them knowing or having consented to.
This is borderline illegal in the EU. Also, in two years time, no data about European citizens can be stored in US servers, which is what's probably happening right now.
from atom-beautify.
Thank you for further explaining the issue. I definitely would like this resolved.
Please feel free to submit a Pull Request and I will review, merge, and publish it ASAP. If you have any questions about the source code, please let me know and I will be happy to help as much as I can. Thank you.
from atom-beautify.
I have added a section to the top of the README: https://github.com/Glavin001/atom-beautify#important-notice-analytics
Please submit a Pull Request if you would like to improve the verbiage.
As said above, unfortunately I am unable to make the necessary changes (at this time) to Atom-Beautify such that there is an interface walking new users through the analytics and receiving confirmation. Google Analytics was put in place a fairly long time ago when there were less users and Atom-Beautify was changing rapidly with the intent to better understand the needs of the users and where improvements should be made (catch errors, improve most used languages support, etc).
I encourage everyone to contribute to the Atom-Beautify code so we can resolve any of these concerns you have. Thank you.
from atom-beautify.
Thank you @Glavin001!! That was really quick and useful. Personally, I think that's all that's needed. User knows what's happening and can easily opt out/in. Very clear
from atom-beautify.
Please subscribe to #1179 for further updates. Atom-Beautify will be using Atom's core.telemetryConsent
configuration option soon!
from atom-beautify.
Related Issues (20)
- Javascript space before paren HOT 1
- Failed to activate the atom-beautify package HOT 3
- beautify HOT 1
- download failed HOT 1
- Cannot beautify Velocity file HOT 1
- Installed but not listed on packages tab HOT 1
- dart language not support HOT 1
- Could not find 'uncrustify'. The program may not be installed. HOT 1
- 0 I've been trying to install atom-beautify on my Windows 10 x64 machine, but I keep getting this error : npm ERR! code Z_BUF_ERROR npm ERR! errno -5 npm ERR! zlib: unexpected end of file npm ERR! A complete log of this run can be found in: npm ERR! C:\Users\*****\.atom\.apm\_logs\2019-01-18T06_40_37_988Z-debug.log Googling about it, I found this is an issue that has been raised but closed without much in the way of resolution : https://github.com/Glavin001/atom-beautify/issues/2240 I tried uninstalling and reinstalling Atom, and also deleting the .apm folder and giving it another go, and then trying to install previous versions of atom-beautify using the following, apm install [email protected] apm install [email protected] But nothing seems to work, and I get the same error with a Deprecation warning on the latter. Has anyone else encounteredd this issue, are there any known work-arounds for it? HOT 1
- Atom-beautiful
- atom-beautify
- cant go futher of this HOT 1
- network is unreachable
- it was not installing HOT 1
- PHP beautify problem HOT 1
- How can I solve this problem ? HOT 2
- facing error HOT 2
- Not working :( HOT 1
- i
- Object.<anonymous> is deprecated.
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from atom-beautify.