top 99 comments

sorted by: hot top controversial new old
[–] 200 points 1 year ago* (31 children)

Doesn’t anyone else use things like OpenSnitch to audit all outgoing connections? I block all phone homes until something breaks, then investigate.

If you are trapped on Windows for some corporate reason, there is SimpleWall.

We’re all friends here, and friends don’t let friends let apps phone home.

  • source
  • hideshow 31 child comments
  • [–] 15 points 1 year ago

    I second OpenSnitch. It's the most annoying program i run, but the control it gives you over your outbound connections is so worth it from a security and privacy standpoint.

    Once you start and run this you get to truly see how many different URLs are loaded when visiting just one website

  • source
  • parent
  • [–] 15 points 1 year ago (13 children)

    I feel like lots of people here use Linux, where you don't need to be constantly vigilant of your applications working against you...

  • source
  • parent
  • hideshow 13 child comments
  • [–] 26 points 1 year ago (11 children)

    A lot of proprietary tools like VScode and Jetbrains are needed on Linux if you’re a novice or not yet proficient with tools like EMacs/Vi yet. For example I couldn’t get Vscodium to load an extension I needed so I had to use VScode. But tbh I’m just making excuses cuz I don’t know how to set up a good dev environment :-(

  • source
  • parent
  • hideshow 11 child comments
  • [–] 7 points 1 year ago

    Technically it's even a ToS violation to install extensions from the VS Code marketplace (or whatever it's called) if you're using VS Codium. Many are also available somewhere else like the code forge where they're developed and are under open source or free software licenses, but quite a few important ones are only available through the one distribution channel you're not allowed to use, and contain proprietary components that can't be forked to lift this restriction.

  • source
  • parent
  • [–] 5 points 1 year ago* (9 children)

    Personally, I find Kate is decent enough for most coding tasks. It does not have an open plugin ecosystem, so I guess, maybe it wouldn't work for you. But aside from plugins, whenever I see people using VS Code/-ium, I wonder why they keep raving about it.

    It just looks like a bogstandard editor with LSP support to me. And Microsoft may have gotten that LSP ball rolling, but it's supported in lots of editors now...

  • source
  • parent
  • hideshow 9 child comments
  • [–] 1 point 1 year ago (8 children)

    VScode is certainly a heck of a lot easier to get LSPs working than e.g. vim.

    If someone made it actually easy to set up neovim with lsp support that works as well as with vscode, there'd be no reason to give Microsoft any attention at all

  • source
  • parent
  • hideshow 8 child comments
  • [–] 2 points 1 year ago (6 children)

    Is the LSP support a plugin in Neo-/Vim ?

    In Kate, you just install the LSP server, which is typically as simple as apt install marksman and then Kate will automatically start it when it encounters an appropriate file.

    Kate also has a Vi Mode, if that's what you're looking for. ¯\_(ツ)_/¯

  • source
  • parent
  • hideshow 6 child comments
  • [–] 4 points 1 year ago (2 children)

    The LSP support itself is builtin in Neovim (not in Vim though, AFAIK), but each language server needs to be configured and activated. There is a plugin with all(ish) configurations - https://github.com/neovim/nvim-lspconfig - and activation is done with a vim.lsp.enable("server-name") command, which you just put in your config and the Neovim will start the LSP when you open a relevant file.

  • source
  • parent
  • hideshow 2 child comments
  • [–] 1 point 1 year ago (1 child)

    Ah, I guess that makes sense. Kate automatically detects available LSP server executables but then prompts you before starting them for the first time, in case you did not install that and it's malware, or I guess, in case you just placed a script there which happened to be called the same, but would be very bad to run.

    Neovim could theoretically do that, too, but then you need a way to block executables, so that it stops prompting you every time, which you'd probably want in a separate config file.
    So, it's definitely a simpler solution and perhaps moreso what one would expect from a TUI editor, for you to just list the ones to run in the config file.

  • source
  • parent
  • hideshow 1 child comment
  • [–] 2 points 1 year ago

    Neovim has something better - there is a plugin that installs the servers for you - https://github.com/mason-org/mason.nvim - and then you can just use the servers that plugin has installed (which should be more trustworthy because you just need to trust the plugin and not some random executable)

    There is also https://github.com/mason-org/mason-lspconfig.nvim which bridges the two and automatically enables servers that were installed via Mason.

  • source
  • parent
  • [–] 3 points 1 year ago (2 children)

    Where might I find a list of languages/LSPs that Kate supports and will load automatically like that?

  • source
  • parent
  • hideshow 2 child comments
  • [–] [S] 1 point 1 year ago

    This was one of my biggest issues, but I did manage to succesfully switch to nvim few months ago, by installing ideavim into Rider, vscode-vim into vscode (so I can't easily escape it when I get lazy), but most importantly - setting LazyVim as my default editor, which has been a lifesaver.

    It has a pretty good LazyExtras interface for easily installing a ton of plugins, almost for every language. You just open the LazyVim menu, select a language you want, and it installs LSPs, debuggers and whatnot you may need for it. It's probably using the nvim-lspconfig mentioned in other comments, but it has been pretty seamless.

    But any other pre-made nvim config will work, this one is just more approachable than someone's random plugin list.

  • source
  • parent
  • [–] 12 points 1 year ago*

    Anyone new to these tools will be horrified at how aggressively Windows tries to violate your privacy with unnecessary data collection, phone-homes, remote calls, etc.

    Linux is galaxies better in that regard. I still don't want anything making any connections without my explicit knowledge and consent though, and there are lots of packages and applications that try to unnecessarily exfiltrate data without asking. If you aren't using an active firewall, you are leaking.

  • source
  • parent
  • [–] 6 points 1 year ago (1 child)

    Does running pi hole make this redundant, or are they solving different problems?

  • source
  • parent
  • hideshow 1 child comment
  • [–] 10 points 1 year ago

    They still work together. Pi-hole is an excellent second line of defense, but an active firewall tells you about what is trying to make connections and asks for your consent. Block lists are great, but they aren't impenetrable. If you want to know exactly what your device and software are doing, you should also be using an active firewall.

  • source
  • parent
  • [–] 5 points 1 year ago (1 child)

    Thanks for that suggestion, I had a passing thought a while back I should look into something like this.

    Any problems in your experience? I imagine apps will fail if you're slow to approve the outbound connection and something times out, so I get all of that, looking more for broader issues this might cause? Specifically wondering about the docker containers I run, all the development nonsense.

  • source
  • parent
  • hideshow 1 child comment
  • [–] 13 points 1 year ago*

    Both OpenSnitch and SimpleWall block by default. You can also set a timeout so that if you don’t respond in a certain amount of time they automatically create a permanent block rule. You can also check your rules and activity at any point. If a specific application is misbehaving you can always check its rules and change them, or delete them and start over. They’re very efficient, and get less intrusive over time as you respond to prompts and create more rules.

  • source
  • parent
  • [–] 2 points 1 year ago*

    The last time I got a virus on Windows I was only made aware because the built-in firewall warned me a Powershell script was trying to phone home.
    Since then I run SimpleWall and I highly recommend everyone else do the same. It's annoying at the beginning but annoyance turns into peace of mind when you know nothing, not even built-in Windows processes can phone home without you knowing.

  • source
  • parent
  • [–] 1 point 1 year ago* (1 child)

    TIL.

    Is this redundant with DNSBL?

  • source
  • parent
  • hideshow 1 child comment
  • [–] 5 points 1 year ago*

    Not necessarily. These active firewall tools are much more thorough. They tell you any time an application or service is trying to make a connection to anywhere. Block lists are helpful, but still have gaps. These let *nothing *through unless you explicitly allow it, and ask you clearly and immediately when something that doesn't already have a rule tries.

  • source
  • parent
  • [–] 152 points 1 year ago (7 children)

    AI scraping public code tempts me to dump all my projects into github to poison the training data

  • source
  • hideshow 7 child comments
  • [–] 20 points 1 year ago (2 children)

    It's love to see what it does with a several thousand line function from my production code.

  • source
  • parent
  • hideshow 2 child comments
  • [–] 6 points 1 year ago

    Several jobs ago we had a SQL stored procedure that took 72 hours to run. Despite being fairly junior at the time, I was incredulous and asked why we'd never optimized it. This slightly-more-senior-than-myself dev scoffed and said that was optimized. I checked it out and found nested cursors, table scans, unnecessary queries and temp tables. I gave up about halfway through and instead printed it out: 13 pages. I stapled it and hung it in my cube as a testament to insanity. I still have that printout.

    I should scan it and upload it to poison the well too.

  • source
  • parent
  • [–] 30 points 1 year ago (14 children)

    OOTL here. What did they do? Can't find anything obvious on their News or Releases tabs.

  • source
  • hideshow 14 child comments
  • [–] 35 points 1 year ago* (last edited 1 year ago) (11 children)

    if you pay you can opt-in to share your code

    if you use free version you can opt-in to share your code.

    if you are entitled to using a paid version for free (e. g. students, educators) you can opt-out of sharing your code.

    EDIT: I was wrong, you CAN out out in the last case, which makes the meme even more stupid

  • source
  • parent
  • hideshow 11 child comments
  • [–] 10 points 1 year ago* (1 child)

    if you are entitled to using a paid version for free (e. g. students, educators) you cannot opt-out of sharing your code.

    That is incorrect. According to the page you linked elsewhere:

    For individuals on non-commercial licenses: Data sharing is enabled by default, but you can turn it off anytime in the settings.

    (Emphasis mine)

    And for all other cases it's opt-in. No idea how you got from that that you cannot opt-out. It literally says the opposite.

  • source
  • parent
  • hideshow 1 child comment
  • [–] [S] 1 point 1 year ago* (last edited 1 year ago) (1 child)

    I might be mistaken, but I think that if you use the free version, it's also opt out, because IIRC it's also an individual non-commerecial licence.

    For individuals on non-commercial licenses: Data sharing is enabled by default, but you can turn it off anytime in the settings.

    At least on the prouct page, the free tier is literaly called "Rider Non-commercial", under Individuals tab.

  • source
  • parent
  • hideshow 1 child comment
  • [–] 1 point 1 year ago (2 children)

    From the other comments, it sounds like it's opt-out for the free tier.

  • source
  • parent
  • hideshow 2 child comments
  • [–] 26 points 1 year ago (4 children)

    Fuck sending data to companies. Emacs for the win!

  • source
  • hideshow 4 child comments
  • [–] 23 points 1 year ago

    I think I'd be liable if my code made it through to a LLM

  • source
  • [–] 143 points 1 year ago* (14 children)

    This is misleading. For people paying for the IDE nothing changed, data sharing remains an opt-in option. For users of their free licenses data sharing was enabled by default. Still a shitty thing to do especially as it hits a lot of OSS developers but lets criticize that instead of creating memes that are misinformation.

  • source
  • hideshow 14 child comments
  • [–] 80 points 1 year ago (2 children)

    You do add important detail, but I'd make the counterpoint that if the corporation is bullying their least privileged users today, stealing their lunch money privacy, they're not going to stop with only them. This is testing the waters for them.

    Plus - it's also messed up that they can fundamentally change the nature of the 501(c)(3) donated version and will likely try to claim a tax benefit as though it's equivalent to a paid copy.

  • source
  • parent
  • hideshow 2 child comments
  • [–] 8 points 1 year ago (1 child)

    As the saying goes, if a product is free then that means you are the product

  • source
  • parent
  • hideshow 1 child comment
  • [–] 19 points 1 year ago

    In this case, the product was free to OSS developers not because they were the product, but because they're influencers likely to end up encouraging their users and/or employers to buy the paid version, so it was the marketing that those people could do that was the product.

    This change with the data harvesting makes those developers the product, though.

  • source
  • parent
  • [–] 6 points 1 year ago (9 children)

    They're doing as much of a bad thing as they think they can get away with. I don't feel a particular duty to carefully acknowledge that in some circumstances they feel obligated to do the right thing instead. If they don't like the "misleading" aspects of that, they're free to just do the right thing completely.

  • source
  • parent
  • hideshow 9 child comments
  • [–] 2 points 1 year ago (8 children)

    This may be controversial, but trying to collect the data of your free users to offset the costs of the infrastructure/resources needed to support the free users is not a bad thing - especially when you give those users an option to opt-out.

    You make it sound like their goal is to do bad things. That's not true. Corporations are not good or evil, they are amoral. They don't care if what they are doing is good or bad - it just matters if they make money.

    they're free to just do the right thing completely

    What exactly would that entail?

  • source
  • parent
  • hideshow 8 child comments
  • [–] 1 point 1 year ago (5 children)

    The right thing is to make it opt-in for everyone, simple as that. The entire controversy goes away immediately if they do. If they really believe it's a good value proposition for their users, and want to avoid collecting data from people who didn't actually want to give it, they should have faith that their users will agree and affirmatively check the box.

    If free users are really such a drain on them, why have they been offering a free version for so long before it became a conduit to that sweet, sweet data? Because it isn't a drain, it's a win-win. They want people using their IDE, even for free, they don't get money from it but they get market share, broad familiarity with their tool amongst software engineers, a larger user base that can support each other on third party sites and provide free advertising, and more.

  • source
  • parent
  • hideshow 5 child comments
  • [–] 1 point 1 year ago (4 children)

    The right thing is to make it opt-in for everyone

    How is that the right thing? I'm directly challenging this claim.

    All I said was that free users cost them money, so it's reasonable for them to try to recover those costs. I never claimed that free users are a drain on them, so I won't even respond to the rest of your comment.

  • source
  • parent
  • hideshow 4 child comments
  • [–] 1 point 1 year ago (3 children)

    Opt out means "we will be doing this, without permission, unless you tell us not to" and opt in means "if you give us permission we will do this." Codebases can contain important and sensitive information, and sending it off to some server to be shoved into an LLM is something that should be done with care. Getting affirmative consent is the bare minimum.

  • source
  • parent
  • hideshow 3 child comments
  • [–] 1 point 1 year ago (2 children)

    I disagree about what the bare minimum is. It's not uninformed. They tell you about it, and tell you you can opt out. I don't really see how that would be them doing it without permission.

  • source
  • parent
  • hideshow 2 child comments
  • [–] 1 point 1 year ago (1 child)

    Why isn't "it's informed and you can just opt out" good enough for paid users? They could've developed a single system instead of two if that's a sufficient standard of care for users' data.

  • source
  • parent
  • hideshow 1 child comment
  • [–] 1 point 1 year ago

    It is good enough. I wouldn't have cared if they did make paid users opt out. I think it's a courtesy to their paid users, not an attack on their free users, that they allow paid users to opt in instead of opting out.

    Also, there's no way they developed a whole separate system for this. It's likely a single line boolean check.

  • source
  • parent
  • [–] [S] 2 points 1 year ago* (1 child)

    For me, the issue isn't as much that they are forcing the data collection (on some/free people, to be clear).

    I have issues with the way they are spending their development money, that I give them for the product. I don't care about the AI hype slop, that apparently can't even get good results (which they outright admit in the blogpost), instead of actually making the core features of the editor better. Everyone knows at this point it's a hype bubble that will never be usable, and they are grasping at straws.

    I don't want to pay 200$ a year only for them to add a dumb chatbot and data collection into my IDE, or make the code completion dumber and random instead of actually being deterministic. So I don't, canceled my subscription and I'm sticking to the perpetual license while slowly switching to nvim. But I can still make fun of them about it. I have been recommending JetBrains products for most of my life, and they have disappointed me with the direction they are going, so I'll make sure to un-recommend it.

  • source
  • parent
  • hideshow 1 child comment
  • [–] [S] 3 points 1 year ago* (last edited 1 year ago)

    I don't think it's misleading, or at leas the point was not to imply that they are forcing the data collection (which they are, for free users, but it is opt-out). The point is that they are actually downright emotionally manipulating in the blogpost. The blogpost in which they announce it, at least in my opinion, is written in exactly the same tone as the picture. They are basically crying that they can't make a good AI without stealing your private data, pleading you to turn it on.

    I've seen a few similar posts of products announcing AI data collection, and this one was the most unsettling, hence the meme.

  • source
  • parent
  • [–] 15 points 1 year ago (6 children)

    I liked PyCharm, but its time to refresh my friendship with VIM.

  • source
  • hideshow 6 child comments
  • [–] [S] 2 points 1 year ago (1 child)

    That's exactly what I did, switching from Rider. LazyVim helped with getting a usable setup (especially LSPs are pain to setup without it), https://www.vim-hero.com/ taught me the absolute basics of navigation, and then I simply installed IdeaVIM into Rider to force myself to use it, and switched my default editor to LazyVim.

    It has already been a few months, and I'm pretty used to it. I still fumble here and there, I still have to stop and think then doing more involved operations, but for the basic editing I wouldn't go back.

    The most important observation I have is that it does not make me more efficient at editting text, the fumbles and mistakes usually offset any gains I have from the many navigation/jump/repeat keys, and reaching for the mouse would be quicker, but -

    It's super fun. Learning new motions is satisfying, you can see progress, and by slowly adding a new motion, then trying to get it to your muscle memory is simply fun. And there's always something to learn, a new motion to add or make more efficient. It's basically gamified text editting, and if you like mastering things in the muscle memory sense, it's awesome. I'd absolutely recommend everyone to make the switch, but not for "being a faster/more efficent at text editting" reason, because if you want that, learning every single IDE keybind will make you faster faster.

    Also, it's surprisingly comfortable not having to reach for a mouse. It has only been a few months, and I'm getting slightly annoyed whenever a program doesn't have a hotkey for proper navigation and I have to touch my mouse, hah.

  • source
  • parent
  • hideshow 1 child comment
  • load more comments (1 reply)
    [+] 35 points 1 year ago* (last edited 1 year ago) (5 children)
  • [–] 10 points 1 year ago

    Vim is my preferred 'IDE' for C++, Python, Bash, and general configuration file editing. It's got some big pluses:

    • its text editing is superb once you've mastered it, but that's a small part of its benefits when used as an IDE, and 'Vim mode' in other environments kind of undersells what else it can do

    • Vim has some great plugins for development. YouCompleteMe is awesome for predictive completion and showing docs, but NerdTree for file management and TagBar for showing structure are amazing as well. They're all very configurable and they get out of your way.

    • Vim lives in your terminal window, so you can do splits and tabs using whichever terminal you like. Kitty is very fast and configurable and keeps out your way. Being able to have multiple tabs of Vim open, a tab for compilation, a tab for debugging, a tab for version control, a tab for man pages, and being able to flip between them without taking your fingers off the keyboard makes for a very fast workflow

    • Vim makes it very easy to edit binary files and be precise about whitespace changes, so it's easy to make a minimal change for raising a PR.

    If you assign a hotkey to run a macro in Vim, then that can be made very flexible - saving and formatting all open windows, then invoking CMake to do a build and CTest to run all your unit tests can be put on a function key if you like. Trying to tell Eclipse to "just run CMake to do the build" seems to be an exercise in frustration; so many IDEs are terrible at "just getting out of the way".

    Work pays for an IntelliJ licence for using Java. Java is so unwieldy without a proper IDE that it's hard to code in it without it. I certainly don't love it, though, and they seem determined to make every new version worse with bizarre new features. Flexible minimalist editing with configurable plugins is all that you really need, and on that basis Geany looks pretty good - will give it a try.

  • source
  • parent
  • load more comments (1 reply)
    [–] 10 points 1 year ago (13 children)

    Is it time to go back to the plugin-hell called Eclipse?

  • source
  • hideshow 13 child comments
  • [–] 17 points 1 year ago* (5 children)

    It is NEVER time to go back to the hell that is Eclipse.

    Go to frigging notepad or kedit before Eclipse.

  • source
  • parent
  • hideshow 5 child comments
  • [–] 6 points 1 year ago (3 children)
  • load more comments (1 reply)
  • [–] 15 points 1 year ago*

    Well if you want a real world comparison:

    We migrated a project a few years ago from Eclipse to IntelliJ. Outcome:

    • Complains about the IDE dropped from around 10 per day to nearly 0
    • Onboarding people now takes 1h instead of a day, because IntelliJ knows how to store configuration in a project
    • IntelliJ has a built in updater and nearly everything works after an update
    • IDE Fuckups: 1 per week (Eclipse) -> 1 per year (IntelliJ)
      • Somehow still happend? Just click "Delete caches and restart" in IntelliJ
    • No sources and javadoc for a library available? Eclipse: Have fun reading bytecode; IntelliJ: Yeah I just decompiled it for you within 10s

    So yeah I wouldn't recommend going back into hell. Even VSCode and it's forks are likely better at this point.

  • source
  • parent
  • [–] 4 points 1 year ago (4 children)

    You can't imagine how happy am I to have never jumped the wagon. To either VSCode or to anything from JetBrains. Began using eclipse on my uncle's computer back in ~2010. And just never left.

    It followed me through c++, java for uni classes and Python. It followed me when I switched to Linux. I'll bring it to my grave if it keeps going.

    Is it the best? Nope. But it's fucked up consistently enough for me to get used to it well enough.

  • source
  • parent
  • hideshow 4 child comments
  • [–] 10 points 1 year ago (1 child)

    Are you for real? I seriously cannot imagine anyone willingly using Eclipse.

  • source
  • parent
  • hideshow 1 child comment
  • [–] 6 points 1 year ago

    Willingly is a strong word. More of a "this shitbox is the only thing I know how to use well". It's been my first window into programming. And at the time my uncle used it for work. So he taught me how to get around the mess.

    Also I'm quite sure Eclipse played a big role in why I despise Java with every atom of my being.

    I've tired switching to VSCode. But my peewee brain doesn't process how to use it. It tries to default to the way I use Eclipse. I've started managing to rattle off some programs with micro+clang. That seems to be the easiest way out for me. Considering I don't program for a living.

    I feel like an accountant refusing to let go of it's MS-DOS based software ffs.

  • source
  • parent
  • [–] 4 points 1 year ago (1 child)

    To be fair, the community edition IDEs from Jetbrains are open source and any telemetry is optional.

  • source
  • parent
  • hideshow 1 child comment
  • load more comments (1 reply)
    load more comments
    view more: next ›