Hacker News new | past | comments | ask | show | jobs | submit login
VSCode config to disable annoyances – telemetry, notifications, welcome pages (gist.github.com)
287 points by thunderbong on May 15, 2023 | hide | past | favorite | 128 comments



I tried VSCode for few months and decided to stay with sublime text 3 (infite paid license) Why ? Because every 3.rd time i opened some project and wanted to do WORK there was gazillion notifications and updates. I don't care. You do develmopment of your product alot, I don't care. I want to update my toolset when I have time, that's 1 or 0.5 per year.


It's interesting to hear how different people like to operate.

In general for me personally I like to ensure all software updates are installed daily (not just my editor/IDE).

When I login in the mornings the first thing that runs is a simple script that checks for and applies all updates for my OS, Apps, homebrew packages, shell packages, several applications extensions / plugins etc... likewise my servers install updates daily. Obviously there are pros and cons of (in)frequently updating software.

For me - with this approach of small, frequent updates I've found that updating software becomes boring - which is a good thing. I honestly can't remember the last time anything broke (that I noticed). I've taken this approach for around 12 years.


I don't mind having stuff update, I just don't like anything that steals focus / the cursor. When I am in windowsland I often find myself saying something along the lines of 'let me know when its my turn to use the computer'.

Sure, run your update. just shut the fuck up about it.


I used to do this, until I ran into the problem of an update breaking some critical piece of my workflow the morning right before I had some important work to complete. It's not a good look when you have to ask your co-workers to wait for you because you have to stop and fix your computer first. (Although these days software is so unreliable that maybe no one bats an eye anymore? Who knows.)

Since then, I've learned that it's not a matter of IF an upgrade will break your system, it's a matter of WHEN. There will always be that one bug that slips under the radar and breaks something, and it's usually right when you can afford it the least. These days, I do approximately weekly upgrades of all my systems/gear, but I make sure to schedule it when I know I will have the time to fix whatever issues come up. (In an enterprise setting, the expanded version of this is called Change Management.)


I prefer stability over optimal, especially in my development environment.

I use macOS with nix-darwin, so updating my applications is never very concerning - I can always just rollback if an update is bad. But macOS updates, while generally they don't break anything, have broken enough that it's the scariest part of my year.

The year they shut down any folders in the `/` directory was my (and many coworkers) downfall. It took me a solid 3-4 hours to recoup everything in a working order, and there were failing straggler scripts that were discovered months later.

As such I generally avoid updates as often as possible. Also, to be fair, I have a history in IT and while personal computer updates are generally good, infrastructure updates are time-consuming, error-prone, and generally scary, so I do have a default aversion.


Next morning's standup: "And then I got nothing done for the rest of the day while I fixed my development environment that was messed up by an update."


> For me - with this approach of small, frequent updates I've found that updating software becomes boring - which is a good thing.

That's all well and good until an update happens that changes workflow or changes the look/feel too much. Those sorts of changes cause disruption that I want to schedule. Or until an update is made that changes the software in a way that makes it actively worse for your use case. Those are the sorts of updates I want to avoid.

That's why I don't allow software to automatically update. Most of the time I won't notice the update, but when I do, it's a big deal that would have been better if I could have done it on a more convenient day.


Somehow the most annoying thing to me is this long-standing bug where "Exit" doesn't mean "Exit", but "Exit, unless there's updates, then restart".


That seems like a very typical Microsoft bug.

I wanted to shut down my gaming PC the other week, so I selected "Update and shut down". Then I switched my monitors to my other computer. 10 minutes later I was wondering why the PC was still humming along. Switched the monitors back to it and saw my Windows 11 installation sitting patiently in the login screen.


I install VSCode from the apt repo, so it doesn't update for me unless I update the rest of my system. (Or I can choose to update everything else in VSCode if I know there's a problem with the current version.)


I never receive intrusive notifications from VSCode. It quickly and silently updates every once in a while when I close the program. I'm not sure what kinds of malicious extensions you must've had installed.


> It quickly and silently updates

What about the “What’s new tab” that opens right when you want to have some work done?

Or the notifications you get at the bottom-right corner suggesting to install extensions when you just want to see inside a file.

I mean, many people don’t care that much, it’s just a little annoyance to me, as little to not spent 5 mins to find a solution.


love those, let me know if a new feature is available and how to better vote a new home type and if I don’t care? instant close. No nagging of “are you sure” just straight and to the point.


That's my view, too. At one point I set all of my extensions to manual updates only. But that became cumbersome when I started enabling extensions by workspace, so I just use auto-update now. I appreciate the "what's new" notes, especially when I learn about new features.

Edited for clarity


Sublime text has this too, except it's a popup. And Package Control, too, has a tab that pops open a few seconds after you've started writing. In my opinion they're not really a problem.


The "What's New" tab only opens when I don't open Code into a project directory, usually it opens right into the last file I was working on. The extensions notifications I suppose could be an annoyance, but I seldomly encounter new file types, so it's a non-issue for me and I suspect most users.


I used to find the "What’s new tab" tab useful because of the list of recent projects it has, but I've moved on to creating desktop shortcuts to project directories so that I can open them in one go. This also works with ssh-based projects. (`--folder-uri=`)


Heads up that the list of recent projects can also be invoked with a keyboard shortcut or the command palette ("Open recent...").


Yeah, these are a turn off for me too.


Funny, I switched from ST in part because of the popup that an upgrade is available.

You could have just configured VS Code instead of completely changing editors. In fact, you're commenting on a post with a really fine-grained list of how to! Do you ever configure ST?


Funny, you could have just configured ST to disable the update check instead of completely changing editors. Add `"update_check": false` to your preferences.


> Do you ever configure ST?

Agreed, both editors require configs to turn this off. ST is updated so rarely at least it was less annoying.


Well, the nice thing about VSCode is you can disable all of that...

Some people are working with toolsets that benefit from constant updates.


Number 1 reason I stick with my tools, no matter how good $current_thing is: bash, tmux, and nvim. Nothing ever changes.


Funny how the "What's new" message in Sublime products is what hate most about them, to the point of disabling updates all together for them, they also have plugins with their own "What's new" messages. I guess there is always someone who will abuse this


You can install the portable version of VSCode and you don't have to deal with this anymore - then you can update whenever you need to.


If you don't use proprietary plugins that require VSCode, then VSCodium [0] is a good choice. It has a better default config that removes telemetry.

[0] https://vscodium.com


Has anyone managed to get Copilot running on it yet? It's the one proprietary extension that I use and would be a huge productivity loss for me if I went back to VSCodium without it.


Many of the proprietary extensions have license terms that forbid use with anything other than the official vs code binaries. For example from the c# extension:

> INSTALLATION AND USE RIGHTS. You may only use the C# Extension for Visual Studio Code with Visual Studio Code, Visual Studio or Xamarin Studio software to help you develop and test your applications.

If you don't care about the license restrictions you can add the offical extension store to VSCodium and it might work.


Jesus Christ. .net core isn't open source, it's a set of trapjaws pretending to be.

I really need to learn Kotlin sooner rather than later.


This license only applies to the compiled/packaged extension delivered via the extension marketplace. The source code to this VSCode extension is available on Github and is under the permissive MIT License (as is the .net runtime).

If you are looking for evidence that .net core is maliciously pretending to be open source to move to a language reliant on a JVM, I don't believe this would qualify.


I don't think this applies to Copilot as its a subscription, but it does for Pylance, Live Share, Remote and related, and the new data science one.


It can work if you make some edits to product.json, I can’t remember exactly what but that should help with Googling I guess



VS code badly needs a "do not disturb" mode that disables all this junk and more (like turn off all the pop up notifications and autocomplete suggestions as you type too).

It always throws me out of flow state to have it constantly barfing and spewing info on screen as I type--like, I've been programming python for 20 years and I know exactly how the print function works, I don't need a huge spew of doc string text when I type it now. Autocomplete and such can be very handy but it's a real pain to turn it off as there are about 3 or 4 random little settings to fully disable it. Give me a do not disturb or no distraction mode that disables and enables it easily.


VSCode has a silence/DND option via the bell menu in the bottom right. However it does not seem to be perfect, and I've seen notifications pop up on startup of a fresh window. Better than nothing though.

It is tremendously frustrating how every single extension developer seems to think that every bit of logging (and every single update changelog) is the most important thing to every developer that has their extension installed, and that they should disrupt flow and even open tabs and take over the window context just to tell me about some new minor version patch.


I think I'd be interested in this as well. Maybe leave me with a set of powerful macros for generating some of the boiler plate code and I'd probably be quite happy. Maybe a flag to add to zen mode, zen++, I don't know.

an aside to this, I've been playing with copilot recently and its inline additions are usually so distracting while I'm trying to write some really simple conditional. When it usually doesn't read my mind, its more of an annoyance and I only really want it when I explicitly want to invoke it, which I don't think is a feature outside of enabling and disabling it.


Yeah I view it as a slider or dial in my mind. Maybe a dial from 0 to 10 for level of distraction you're willing to tolerate. The more you turn it down the more it turns off all of these suggestions, autocompletes, notifications, etc.


It'd be nice if it that doc window could just not steal the focus. At least with TypeScript it does.


Annoying notifications are a thing for most of the MS stack. Outlook, Teams, Word. Recently I had to dig into some cryptic Registry options to disable some stupid balloon notifications in outlook that pop up every time I open the app. I don't care about your tips and your new interface, I just want to be able to search for a specific email and go back to work quickly.


“New Outlook,” which forgot to remind me to be in a meeting once, and doesn’t support contact groups still because there’s no simple server-side notion of that.


> Annoying notifications are a thing for most of the MS stack.

This. The whole notification mechanism is just awful and not actually very useful. I disable all of it, from any application. I don't want notifications, period.


Care to share that one?


Yes, I mean - https://learn.microsoft.com/en-us/answers/questions/186354/o...

First comment about modifying - `HKEY_CURRENT_USER\SOFTWARE\Microsoft\Office\16.0\Common\TeachingCallouts`


On a lighter note, I wonder if I'm the only one that gets a mild sense of FOMO when I see the welcome page that lists out the features they have released after every update? Like these guys are cranking out so many new things and I just don't have the time to try them out :(


I actually enjoy the monthly release notes. Usually, most of the features do not affect me, but sometimes there are one or two gems that really make me appreciate the active development on VSCode.


Yeah me too! I get excited about new features and to get a feel for where the software is going. At times when I feel impressed by the devs that maintain some of my favourite software I take a moment to drop them an email or tweet (now toot) to thank them and congratulate them on major releases. It only takes a small moment of my time but genuine appreciation can really brighten peoples days.


Not really, since it doesn't feel like they listen to the users or developer community on features that people want to see roll out. It's a lot of icing on a pretty well decorated cake at the moment.

I won't get excited by a VSCode update until they fix the webview crash that happens after every update (0) and support multiple windows in the same workspace (1). The latter has been the most requested feature for 6 years!

(0) https://github.com/microsoft/vscode/issues/125993

(1) https://github.com/microsoft/vscode/issues/10121


Yeah. I get the same with Chrome. It's like, can you just slow down a little?


I get it a little. As a professional it's my job to keep on top of advancements in tooling, so I try to watch the change log for my tools and pick 1-2 things to try. Some of them stick, some of them don't.


What bothers me most about VScode is that linters and other annotating plugins will underline and box text and make it really hard to read. It's not graceful the way error highlighting was in Eclipse and Visual Studio and it makes me miss the old tools. It's really really ugly, especially the box. Everyone says "just get a plug-in like ErrorLens" but I would rather just have a de-lint button. I honestly turn off the linter nowadays and run it manually in the shell (fortunately VSCode has a shell built in).


Why use a linter if your code has so many errors?


Lol. To fix them? They are not errors as much as warnings that are still helpful and I would like to keep. I just don't want the ugly box and underline which makes text unreadable.

Even when the error involves balancing parentheses the ugly box gets in the way. VScode has a neat trick of color coding parens so that balancing them is a bit more efficient, but with a tight box around your text and a squiggly underline it's just an unreadable mess.

Honestly turning off the linter has been the most helpful. Now I avoid forgetting semicolons and not balancing parens simply because of how painful using the linter is, that I would rather avoid it altogether. But it didn't have to be this way. They could have just not made error highlighting so terrible. It's garbage and everyone knows it is, anyone who tells me errors don't look absurd on VSCode is someone I stop taking seriously. It would be as if your teacher used a thick sharpie to black out what she thought were your mistakes in your essay, rendering you unable to even figure out what mistake you made in the first place.


The errors are in other people's code.

My own code, FWIW, is flawless. Natch.


Why are you running linters on other peoples' code?


Where did he say he had a lot of errors?


Presumably the readability issues only occur when there is a lint error.


I know people hate them but lint as a pre-commit hook is nice.


I turn them off. I commit early and often, and hooks just get in the way.


Local hooks should be fast. I do that too if they take more than 5-10 seconds and it's not mission critical software.


Early and often doesn't change code standards.


It sure does. The repository's standards don't matter one whit until I'm ready to submit my code.

I squash, amend, and delete history with aplomb as I develop. I simply do not need to be informed of adherence to code standards during that.


You can always bypass the hook. Better to enforce standards and make exceptions when necessary.


You can change a setting to have VS Code auto-lint on file save. It will auto-fix as much as it can, anything that requires decisions will still need to be manually fixed.

https://stackoverflow.com/a/68016089


Oh, so _this_ is why I've been getting so many hits...

I was the original creator and the original post[1] was from a day ago. Glad to see it is helpful!

[1]: https://news.ycombinator.com/item?id=35940043


You might be interested in VSCodium -- a community-driven, freely-licensed binary distribution of VSCode.

https://vscodium.com


I recently been annoyed by VSCode. The biggest annoyance is that you often have to reload the window because things break or spot working.

I switched to the beta of the Zed editor and it been really nice. It's just you, the editor and a language server. It's super fast and has really nice features built in.

I would suggest to try it out if you are annoyed by VSCode.


This is great news. Credit to Microsoft for finding new ways to improve its good will with developers.

Now if Twitter, Reddit, and YouTube could stop reminding me of the app. I know there's an app. I don't use it because I'm not braindead.

Edit: Credit to the guy who created this config. It's too early to read apparently.


That's what the title sorta implies, but that's not what this is. It's just someone's configuration set to turn off telemetry for vscode and some of its known plugins, AFAICT.


Glad I could help! It's too bad that my HN post didn't take off.


Maybe I am biased as an app developer myself but I want VSCode engineers to have telemetry from me so they can see how I use the app and improve it. Same when Apple asks me for iOS, iPad, etc.


As a VSCode extension creator - thank you! People may not realize how hard it is to make a great app if you have no idea what your users are doing with it.

On web apps there is all kinds of tracking and it’s heavily used to make the apps better (not just for marketing or annoying you). In a code editor extension there is the same need for that type of information, and telemetry is the only way to get it.


Tell me what's in the telemetry and I might approve it.

Don't tell me what you're collecting and I'm suspicious.

Things I should know about:

- my usernames

- name of the files I'm working on

- what other extensions I use

- what kind of computer I'm using

Or summarized : everything that can be used to fingerprint me.

And whatever your promises, I won't trust you with this data, it's not personal but your company might be bought tomorrow by another company that won't have to respect your promises.


How about actually talking with your users? Telemetry is a poor substitute for that.


Absolutely! Please go try this and I will talk to you as much as you want - https://appmap.io/docs/appmap-overview.html


Unfortunately I don't think it fits any of the projects I work on (and I don't use VSCode to begin with, never had it installed, bit I do see an IntelliJ plugin as well).

I have one project that's a server application (https://github.com/grishka/Smithereen), but since it uses lots of custom stuff on top of the Spark micro-framework, your plugin would probably not work on it. I imagine it does expect projects to be structured idiomatically for the framework they use, at least to some degree. Spark also doesn't know anything about databases, so that is all custom as well. Oh and I also hacked it a bit with reflection to allow streaming responses.


If you use process recording you should be able to get maps of all your code in that project - it just won’t have any special framework or database markup - https://appmap.io/docs/reference/appmap-java.html#process-re...

edit: Actually I see JUnit so test case recording should also work.


I also tweaked UI of my VS Code. It now basically looks like Vim (all the menus, tabs and icons are hidden, except the code). If I need them back, I just press a hot key.


What's the difference between that and the built-in zen mode?


I would love to see this config if you’re able to share it.


mine is basically done to replicate my neovim as closely as possible with zenmode https://github.com/stechermichal/vscode-dotfiles


Download vscodium


Y'all need emacs or neovim


or webstorm or intellij - I pay for them and their modal based windows allow me to retain my depth of flow vs the irritating side panel based VScode implementation (especially for search) ... and the modal windows are powerful allowing you to edit and navigate inside the preview modal window itself thus preventing small context switches .... I cannot bear vscode


What if I don't want to spend hours every month (in addition to the initial effort) to fix my editor with which I just want to do some damn work with?


I don't why you're getting downvoted you have an actual concern that has been a huge annoyance when using emacs/vim, however, Doom Emacs and to the same extent SpaceVim solve that issue. I'd highly recommend you check them out.


Related: Sane VS Code[0]

[0]: https://datagubbe.se/vsc/


More focussed on developer UX than telemetry, `Make VS Code Awesome` [0] shares a lot of configs to clean up the UI/nags/prompts. I'm not affiliated but have bought it and found it significantly improved my days in Code.

[0] https://makevscodeawesome.com


$60AUD for a PDF with code examples seems more than a little pricey - that's money I'd rather throw at some open source projects.


Can you summarize what the configs do exactly? Not sure I want to pay $150 or even $40 for VSCode configs.


Any configs to make it faster and lower the latency? Because it feels like a turtle compared to Sublime.


Yeah, I feel this. I'm not normally someone who notices these things, but on my 2019 MBP (the last Intel one), when using the iGPU, there's a perceptible sluggishness in VSCode that makes it fairly unpleasant to work in. Things get somewhat better if I force the discrete GPU, but that sucks power and really is only an option when plugged in.

I'm normally someone who gets 7 years or so out of a computer but I definitely am looking forward to replacing this with an M-series Air. :(


I'm on the same kind of machine. My biggest problem with Code is that I can see the sluggishness when I open a file, and watch it render the syntax highlighting. I didn't know about this setting. Forcing the GPU "on" has made this go away. Now I can only detect a tiny bit of rendering in the minimap. I'm always plugged in while coding anyway, so I can leave it, but it seems like Code should be able to tell you're plugged in, and do this automatically.


Don’t know if you will see this, but uninstalling chrome has made my 2019 MBP way more pleasant in VS Code. See chromeisbad.com for details.


I find it useful to disable or uninstall extensions that I don't use every once in a while. Additionally, if your project directory has tons of files, it helps to minimize the explorer pane or switch to a different one.


Any way to prevent VSCode from creating directories in home when running in "portable" mode, by creating data directory? Now it keeps creating .vscode-cli and .dotnet directories.


I like the show release notes and other things. I would recommend to check which each option does before copy&pasting. I guess that is always a good advice anyway.


For me the most annoying config of all is the justMyCode flag in the python debugger. I wish I could disable that globally rather than per project.


Preach, maybe there is a way to alter the "template" launch.json


Where's the setting that stops it from sending telemetry to M$?


The ones that start with `telemetry`


[flagged]


Because...it's a good IDE? I'll take having to occasionally change a setting or two to avoid some annoyances in a otherwise great and fully-featured IDE over literally just a console text editor any day of the week.

Not that it's my main IDE, I prefer JetBrains stuff, but I'm tired of hearing y'all bitch about VS Code like it's trash when in reality, even just out of the box, it's still far more capable than most power users' Emacs setups.


Clearly (at least some) people don't trust VSCode.. or we wouldn't have the OP in the first place.

If you don't trust something, the long-term solution isn't to try to work around it (until the next version comes out and they find a new way to breach your trust), it's to stop using the thing you don't trust.


There are many pre-made configs that can change Neovim into a fully featured IDE. And it still doesn't require a full browser engine and selling your soul to Microsoft to run.


Could you list some of these features that make VSCode far more capable? I always wonder if I should move on from emacs at some point to a more capable IDE. If you think emacs is "just a console text editor" though you may not be the best person to answer.


> Why people use the privacy nightmare OSS trojan horse that is VSCode is beyond me.

Why people care what other people run on their computer is beyond me.


> Why people use the privacy nightmare OSS trojan horse that is VSCode is beyond me.

Here's an example why some people (including me) prefer VSCode over vim in certain cases:

https://www.reddit.com/r/neovim/comments/rwz9m2/how_to_impro...

And yes, I know that Emacs is much better when it comes to discoverability, but I am just not an Emacs guy. Tried it so many times already. Just can't make it work for myself.


I’m just here to say that as a vim user I understand your sentiment and concur. There’s not much I can do to change people’s minds. But vim and the console will be there waiting, whenever they are ready.


Just use `vi`.


Visual editing is completely unnecessary - human mind can only read 1 line at a time, so there is no point in showing more than 1 line at a time on the screen.

Just use `ed`.


Real programmers flip bits directly at the hardware with a jumper cable.


Real programmers use butterflies.

https://xkcd.com/378/


As easy as M-x butterfly RET.


It is best practice anyway to know what you want to change upfront so using sed is perfectly sufficient.


Please refrain from posting GPT-generated posts on HN. Thank you, Megan Rain.



If you wanna have privacy and also be fairly modern, https://helix-editor.com might work


[flagged]


Edit: we've banned your account for breaking HN's rules repeatedly and egregiously. Please see https://news.ycombinator.com/item?id=35965294.

--- original comment: --

Could you please stop breaking HN's guidelines in your posts here? You've unfortunately been doing it repeatedly. We had to ask you about this just recently (https://news.ycombinator.com/item?id=35527386), as well as more than once before.

https://news.ycombinator.com/item?id=35946543 is quite unacceptable—we ban accounts that post like that. https://news.ycombinator.com/item?id=35945471 was not ok either.

If you keep this up we're going to have to ban you. I don't want to ban you, so if you wouldn't mind reviewing https://news.ycombinator.com/newsguidelines.html and taking the intended spirit of the site more to heart, we'd be grateful. That means, among other things, thoughtful, substantive, respectful conversation, without flamebait, name-calling, or swipes.

If any of the latter make it into your posts, please edit them out. That's what I do. If it helps at all, you can set a delay in your profile to give you a few minutes to review and edit your posts before others see them. This is in the FAQ: https://news.ycombinator.com/newsfaq.html.


> I can't imagine wanting to hire or even work with someone that said this with even a remotely straight face.

I can't imagine wanting to work for someone who doesn't tolerate different opinions.


Just checking for clarity: like me you agree with KyeRussell's preference not to interact with people who can't cope with different people preferring different editors (and other environment features).

Though the complaint that poster replied to was more about stalky telemetry than editor/IDE features, rather than actual editing features.


The original comment had a valid (but unpopular) opinion on VSCode - that it's a "privacy nightmare OSS trojan horse". They complained that "why people [use it] is beyond [them]", which is probably an exaggeration, as it's obvious that people use it for convenience. But still, it's a valid opinion, a little bit too idealistic for most people, but valid.

Then, there's this boss man dude who is using the business-equivalent of the female shaming strategy of denial-by-proxy - just instead of saying "I can't imagine dating someone who X", they say "I can't imagine hiring someone who X". It's the same strategy - they pretend they're the representative of all hiring managers and bosses of the world, and imply that if you have such opinions, you will never be hired, and therefore are trash and deserve to starve.

I just don't like that kind of attitude.


They are the same attitude, different words


No, they're not.

The former is saying that VSCode is a privacy nightmare, which is true. The latter is saying if you think VSCode is a privacy nightmare, nobody will hire you, which is false.

Actually, the latter is not even that - it's just an insult: "I can't imagine wanting to hire or even work with someone that said this with even a remotely straight face".


There is a different between having a different opinion, and rubbing it in your face when nobody asked for it. This is more about relevant social behavior, which is important for a job, than the rights someone has outside their job.


Am I the only one who has never tried VSCode and, in general, can't take Electron-based code editors seriously?


It's worth giving it a try. I'm not a VSCode fan, but I only know that from trying it out. You never know.


Absolutely your loss.


Probably?




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: