• p1mrx@lemmy.world
    link
    fedilink
    English
    arrow-up
    140
    arrow-down
    2
    ·
    1 year ago

    chrome : chromium :: vscode : vscodium

    That’s a good pun. Clearly the authors have mastered the second hardest problem in computer science.

    • ndguardian@lemmy.studio
      link
      fedilink
      English
      arrow-up
      44
      arrow-down
      1
      ·
      1 year ago

      What makes that better is that VS Code is running on Electron, meaning it is running Chromium under the hood. Or at least part of it. Been a while since I read up on it so I can’t remember for certain.

    • HiddenLayer5@lemmy.ml
      link
      fedilink
      English
      arrow-up
      12
      ·
      edit-2
      1 year ago

      Codium is actually a species of seaweed. They use it on their logo which is really cool!

    • JackbyDev@programming.dev
      link
      fedilink
      English
      arrow-up
      15
      arrow-down
      7
      ·
      1 year ago

      It’s a bad comparison. Non-Google Chrome browsers (like Chromium) can still connect to Google’s extension store to download browser extensions (like uBlock Origin). Only VS Code can connect to the VS Code Marketplace. Codium cannot. It’s bullshit.

      • tired_n_bored@lemmy.world
        link
        fedilink
        arrow-up
        9
        arrow-down
        1
        ·
        edit-2
        1 year ago

        I am using VsCodium and I can install extensions. It’s my default code editor and it has nothing less than my coworkers’ MS Visual Studio Code.

        Edit: just understood VsCodium uses a non-official marketplace for extensions, but for my needs I’ve always found everything

        • JackbyDev@programming.dev
          link
          fedilink
          English
          arrow-up
          1
          ·
          edit-2
          1 year ago

          The problems are that VSIX binaries can’t legally be redistributed and many of them aren’t even open source in the first place. Many won’t even work if you manually download them and add them to Codium. VS Code really doesn’t deserve to be viewed as open source in any way shape or form and folks need to embrace the Open VSX market place and avoid Microsoft’s like the plague.

          You’re lucky to have found all the extensions you need. That’s not the norm.

          • HiddenLayer5@lemmy.ml
            link
            fedilink
            English
            arrow-up
            2
            ·
            1 year ago

            It’s like GitHub. A proprietary platform that’s really popular for open source development for some reason, when there are actually open source alternatives available.

            • JackbyDev@programming.dev
              link
              fedilink
              English
              arrow-up
              2
              ·
              1 year ago

              Nobody views GitHub as open source. Folks do believe that VS Code is open source but because the extension store can’t be accessed by anything else (like an actual open source build of VS Code’s codebase) it’s an extremely dirty lie.

              • HiddenLayer5@lemmy.ml
                link
                fedilink
                English
                arrow-up
                3
                ·
                edit-2
                1 year ago

                Also, VSIX extensions are full-on software packages. They contain binary executables that have access to both the inside of the editor and the rest of your system. If they didn’t have access to your system there would be no way that they can hook into non-editor applications like your compiler or runtime debugger, or have the ability to pull files from outside the working directory. But they obviously can do all that, either usefully or maliciously.

                This is specifically in response to the argument of “so what if VSIX extensions aren’t open source? They’re just extensions right?” No. They are applications. And they can individually contain just as much spyware and all the trappings of proprietary code as if you had used a fully proprietary editor.

      • Sun-Spider@lemmy.world
        link
        fedilink
        arrow-up
        8
        arrow-down
        1
        ·
        1 year ago

        Its not a bad comparison. Sure, some details might differ, but the underlying concept of a build that only uses the open source code is the same.

        • JackbyDev@programming.dev
          link
          fedilink
          English
          arrow-up
          4
          arrow-down
          1
          ·
          1 year ago

          The reason it’s a ad comparison is because it gives Microsoft way too much credit. Making an open source editor use a totally proprietary extension market and have proprietary extensions you can’t redistribute and even having many of those extensions not work with Codium just because of strings that don’t match is fucking bullshit. It’s disgusting. It’s totally deceitful. Especially because the way these light weight editor IDEs work all of the useful bits come from extensions, not the program itself.

          More on the subject: https://www.eclipse.org/community/eclipse_newsletter/2020/march/1.php

      • waldyrious@lemm.ee
        link
        fedilink
        arrow-up
        5
        arrow-down
        1
        ·
        1 year ago

        Damn, that seems to be flagrantly anti-competitive. Has Microsoft attempted to justify why they do that?

      • uranibaba@lemmy.world
        link
        fedilink
        arrow-up
        1
        ·
        edit-2
        1 year ago

        Codium can connect to the MS market, they don’t do it by default because of unclear legalise. Edit: unclear, not clear

        • JackbyDev@programming.dev
          link
          fedilink
          English
          arrow-up
          2
          ·
          1 year ago

          If by “unclear” you mean “crystal clear” then yeah, they don’t do it because Microsoft specifically disallows it in the terms of service. https://cdn.vsassets.io/v/M190_20210811.1/_content/Microsoft-Visual-Studio-Marketplace-Terms-of-Use.pdf

          The Marketplace enables you to access or purchase products or services which are designed to work with and extend the capabilities of Microsoft Visual Studio, Visual Studio for Mac, Visual Studio Code, GitHub Codespaces, Azure DevOps, Azure DevOps Server, and successor products and services (the “In-Scope Products and Services”) offered by us and GitHub, Inc. (“GitHub”).

          In-Scope Products and Services. Your right to use any In-Scope Products and Services will be governed by the agreement under which you purchased such products or services, and will be subject to the payment of fees for such products or services, where applicable. Marketplace Offerings are intended for use only with In-Scope Products and Services and you may install and use Marketplace Offerings only with In-Scope Products and Services.

          • uranibaba@lemmy.world
            link
            fedilink
            arrow-up
            1
            arrow-down
            1
            ·
            edit-2
            1 year ago

            Unclear because both urls were uploaded to to github under open source license by a Microsoft developer, and then promptly removed. I can’t find it now (could be removed, could be posted in an issue) but VSCodium have instructions on how to change to MS’s marketplace.

            Last I read, Microsoft hadn’t replied on whether it was legal or not to use their makeplace, since it was uploaded under open source. Thus again, unclear.

            Edit: https://github.com/microsoft/vscode/issues/31168 The issue where the license of the marketplace is discussed.

            • JackbyDev@programming.dev
              link
              fedilink
              English
              arrow-up
              1
              ·
              1 year ago

              How does that make you allowed to violate the terms of service for the VS marketplace? A URL pointing to it doesn’t mean you suddenly are allowed to use it in a fork. The license just means you can copy that string of text. It doesn’t give you permission to do anything with it.

              • uranibaba@lemmy.world
                link
                fedilink
                arrow-up
                1
                ·
                1 year ago

                Just skimmed the link, and from what I understand the legal document prohibiting use of their marketplace did not exist in 2017 (or I am wrong and it took 5 years for someone to dig it up from Terms of Use).

  • RainbowUnicorn@lemmy.world
    link
    fedilink
    arrow-up
    104
    arrow-down
    13
    ·
    edit-2
    1 year ago

    Alternatively you can deactivate all tracking in VSCode and therefore make it exactly the same as VSCodium afaik. Only takes a few seconds.

    https://code.visualstudio.com/docs/getstarted/telemetry#:~:text=Disable telemetry reporting,-With the telemetry&text=From File > Preferences > Settings%2C,when you disable the setting.

    VSCodium uses another marketplace. A lot of addons are either on an older version or not even available. Tried it once but moved back to VSCode after a few minutes. I prefer my addons.

    Well not exactly the same. I’m not sure anymore but I think it misses the possibility to sync settings via Microsoft account and possibly via GitHub account as well since it belongs to MS but I’m not sure.

  • aport@programming.dev
    link
    fedilink
    arrow-up
    60
    arrow-down
    19
    ·
    1 year ago

    Alternatively you can use and support a true community-driven editing environment dedicated to preserving your freedom, like vim/neovim or emacs.

    • I_like_cats@lemmy.one
      link
      fedilink
      arrow-up
      64
      arrow-down
      5
      ·
      1 year ago

      But that’s something new to learn and configure. I just want to code why should I spend my time learning another text editor when vscodium is fine

      • Potatos_are_not_friends@lemmy.world
        link
        fedilink
        arrow-up
        59
        arrow-down
        2
        ·
        1 year ago

        Careful. You’re in a linux-heavy audience. They’re the kinda people who would spend a few weeks setting up systems to use it for a few minutes.

          • No1@aussie.zone
            link
            fedilink
            arrow-up
            9
            ·
            edit-2
            1 year ago

            Well, it’s because after using the system for only a few minutes, I realise it’s not quite right, and I’ll have to spend a few weeks to set it up again!

        • U de Recife@literature.cafe
          link
          fedilink
          arrow-up
          8
          arrow-down
          1
          ·
          edit-2
          1 year ago

          That’s simply outrageous!!! As soon as I finish tinkering with my system, I’ll prepare a proper reply…

          On a more serious note though. Don’t overlook the role of procrastination in the endless tinkering many put on their boxes. I’m speaking from experience.

        • Synthead@lemmy.world
          link
          fedilink
          arrow-up
          6
          arrow-down
          1
          ·
          1 year ago

          I’m a full-time Vim and Linux user when writing code. I agree with the statement that “simply switching” editors is very naive. I’m my personal opinion, you should decide on an editor that makes sense to you and learn to be very good at it. If VS Code is that answer, then great. Not everything points to Vim or Emacs.

      • nonearther@lemmy.ml
        link
        fedilink
        English
        arrow-up
        15
        ·
        1 year ago

        Who doesn’t want to go through learning of text editor and pain of configuring instead of actually coding?

      • shotgun_crab@lemmy.world
        link
        fedilink
        English
        arrow-up
        6
        ·
        1 year ago

        That’s fine too. Use whatever does the job for you, but give alternatives a try if you ever have the time.

      • exu@feditown.com
        link
        fedilink
        English
        arrow-up
        4
        ·
        1 year ago

        Well, if you learned emacs, you could do everything in it and won’t have to change ever again! /s kinda

      • sugar_in_your_tea
        link
        fedilink
        arrow-up
        3
        arrow-down
        3
        ·
        edit-2
        1 year ago

        Same reason why a carpenter should learn to properly use hand tools, or a teacher should keep up on literature. In other words, master your tools. It doesn’t matter which tool you use, provided you can use it to its full potential.

        I occasionally use VSCode, but I mostly use ViM because that’s my tool of choice.

        For another reason, if your ever in the situation where you need to work on something on a remote server or an unfamiliar machine, knowing ViM means you can at least be somewhat productive when you don’t have your normal tools available.

        • I_like_cats@lemmy.one
          link
          fedilink
          arrow-up
          1
          ·
          1 year ago

          I know vim. I’m using vscodium with a vim plugin. I was coding in pure vim for half a year because my Laptop with 4 gigs of RAM couldn’t handle vscode. I just don’t want to configure vim so it does all the stuff VScodium does for me

          • sugar_in_your_tea
            link
            fedilink
            arrow-up
            1
            ·
            1 year ago

            That’s fine, use what works best. I think there’s value in getting at least the basics working, such as syntax highlighting and linting in case you want or need to use it again.

            The question was why one should learn to use something like ViM or emacs, not why anything else is a poor option. Master your tools, regardless of what they are.

    • baseless_discourse@mander.xyz
      link
      fedilink
      arrow-up
      15
      ·
      edit-2
      1 year ago

      I would love to use emacs, unfortunately coding in TypeScript is much more pleasant to me than coding in elisp or lua.

      Not to say Typescript is a good experience either, I always feel like fighting the language than actually coding. Just saying they are better than elisp or lua.

      Also I find vscode has better mouse interaction, but maybe emacs got better with time.

      • sugar_in_your_tea
        link
        fedilink
        arrow-up
        2
        arrow-down
        2
        ·
        edit-2
        1 year ago

        Are you talking about configuring the editor? Ideally, that’s not a common task, so it really shouldn’t matter much if it uses TypeScript, elisp, vimscript, or lua.

        And if you’re primarily using the mouse, you’re missing most of the point of editors, especially emacs and ViM. The real power of those editors comes from keyboard shortcuts and combos, not from plugins and menus.

        • baseless_discourse@mander.xyz
          link
          fedilink
          arrow-up
          5
          ·
          edit-2
          1 year ago

          Yes, ideally a editor would work without any configuration, but unfortunately I haven’t met any emacs user with sub 200 line dot files.

          I personally cannot remember more than 20 hotkeys to save my life.

          Also I find the most time-consuming part of my work is actually thinking, not clicking around with a mouse. so I don’t really need to spend month to remember all the hotkey just to save 2 seconds clicking. In fact, slow down and click couple buttons to commit gives me a bit to rest and enjoy the moment when I have finished a task…

          • sugar_in_your_tea
            link
            fedilink
            arrow-up
            4
            ·
            edit-2
            1 year ago

            It’s not about optimizing code entry, but optimizing reading code, since you read code a lot more than you write it.

            I’m not super familiar with emacs, I’m a vim person, but here are a few examples of mouse vs keyboard navigation.

            Search for text in a file:

            Mouse:

            1. select the text
            2. click “find in page”
            3. click “next”

            Shortcut:

            1. Ctrl + F
            2. Click “next”

            Vim:

            1. Type * on the word you want
            2. Type n for next, N for previous

            Find matching brace/bracket/parenthesis:

            Mouse:

            1. Click on brace
            2. Scroll until you find the match

            Shortcut: not sure

            Vim:

            1. Type %

            Navigate to the top/bottom of the file:

            Mouse: scroll or click the sidebar

            Shortcut: not sure

            Vim: gg for the top of file, G for the bottom

            Go to a specific line:

            I.e. If from output from a script, like a test failure.

            Mouse: scroll or if you have a plugin, click on the red part (i.e. test or lint failure)

            Shortcut: in VSCode, Ctrl + click on file name

            Vim: <number>G or :<number>

            And so on. Vim is optimized for code navigation, a mouse is optimized for intuitive navigation (but slower), and shortcuts kinda fill in the gaps.

            If you just want to get up and running quickly, something like VSCode is a good option. That’s what I did when I decided to help my team out with some FE TypeScript code, when I normally use something else. I actually installed a vim plugin for VSCode to get the best of both worlds.

            But if you really want a fluid code navigation and editing experience, master something like ViM or emacs.

            Oh, and I didn’t mention one of the most powerful things in both ViM end emacs: macros. I use them a ton when manipulating text, such as converting JSON to a class/struct, or doing repetitive syntax changes that are just out of reach of a regex.

            • PrometheusG@lemmy.one
              link
              fedilink
              arrow-up
              3
              ·
              1 year ago

              Proper VS Code shortcuts for the above cases…

              Find next: Ctrl-f, F4

              Find matching brace: Ctrl-]

              Navigate to Top or Bottom: Ctrl-Home Ctrl-End

              I think it’s the same number of keys pressed as vim in every case.

              • sugar_in_your_tea
                link
                fedilink
                arrow-up
                1
                ·
                1 year ago

                Probably, and we could go back and forth based on features. My main point was that using the keyboard is generally more efficient than using the mouse, especially since my hand is already there.

                So for software you use every day, master it. Master the keyboard shortcuts, learn how to customize things, etc. Maybe VSCode has an option for macros, IDK (I’ve used them with the ViM mode, so that’s at least one option). Using the mouse should be a fallback, not the first option.

            • baseless_discourse@mander.xyz
              link
              fedilink
              arrow-up
              1
              ·
              1 year ago

              You raise a valid point. Personally, I used to read and write a lot of code, but I no longer do that. I still maintain a open source project, but my job no longer involves writing code that runs.

              IIRC, the most useful functionality I used to use are:

              • peak/goto definitions,
              • mouse over to peak doc and type signature,
              • find usage in project,
              • refractor the name/signature of a function,
              • real time linting and quick fix.

              I am quite curious on why go to beginning or end of the file useful? Also I am not sure that the basic find/replace is more useful than find usage/refactor.

              • sugar_in_your_tea
                link
                fedilink
                arrow-up
                2
                ·
                1 year ago

                peak/goto definition

                Plugins are available for most popular languages. I rarely need to see the type of a value, and if I want to see the signature of a function, I usually want to go to the implementation as well.

                find usage

                I just use grep. I’m already in a terminal, so I have all of those features available. Since I use tmux, I just switch over to another pane and run my search there. For changing the name of a function (which is very rare), I just use sed or do the change manually with vim $(grep ...) if it’s more than just a name change (usually I’m changing the signature too).

                real time linting

                I use a plugin for that, and it works really well.

                beginning or end of file useful

                Beginning of file: look for an import/constant

                End of file: add new function, or a shortcut to the last brace to jump to the start of the class/function. I try to keep files small and single-purpose, so it’s usually what I want (jump to end and match braces).

                And yeah, I occasionally miss context-aware search/refactor, but again, it’s so rare that it’s not a big deal. I save far more time with macros than I lose doing manual renames. If I know I’ll be doing a lot of that (and usually it comes in bursts), I have VSCode installed as well. But I don’t launch it very often.

                My whole workflow is very command-line oriented, so using a GUI tool just gets in the way for me.

  • CaptDust
    link
    fedilink
    arrow-up
    22
    arrow-down
    4
    ·
    1 year ago

    Note that Codium is a no go if you want to debug .NET projects, really annoying limitation MS put in place…

      • whats_a_refoogee
        link
        fedilink
        arrow-up
        11
        ·
        1 year ago

        Anyone thinking that Microsoft’s recently found appreciation for open source isn’t a Trojan Horse is a fool.

      • CaptDust
        link
        fedilink
        arrow-up
        2
        ·
        edit-2
        1 year ago

        VSDbg is closed source, technically licensed under visual studio, and only for MS products. Then they sprinkle some key check that prints a message telling you to use it in an official environment or whatever. It’s dumb and needs resolved as part of their OSS efforts but seems more unlikely with each passing year.

  • Contend6248@feddit.de
    link
    fedilink
    arrow-up
    7
    ·
    1 year ago

    Sadly with much less extensions, i use it just to compile and flash my marlin 3D printer and every extension needed has to be set up manually, for some reason even then i can’t get it to work.

    • elfahor@lemmy.blahaj.zone
      link
      fedilink
      arrow-up
      5
      ·
      1 year ago

      You can change your product.json to gain access to the Microsoft extension repositories. I still don’t do it because fuck ms, for the few extensions that I do need I download them as .vsix on the web frontend.

    • theshatterstone54@feddit.uk
      link
      fedilink
      arrow-up
      12
      arrow-down
      2
      ·
      1 year ago

      No, M$ VS Code has telemetry (so, yes, data collection, spying, or whatever you want to call it). VSCodium is actually FOSS, built from the Foss sources, and also only allows you access to the foss extensions in the marketplace.

      • HiddenLayer5@lemmy.ml
        link
        fedilink
        English
        arrow-up
        3
        ·
        edit-2
        1 year ago

        Note that you still have to disable telemetry in codium (or you did the last time I used it), because much like dot net core and Firefox, the basic level telemetry code is open source as well and so removing it is not in the scope of FLOSS-only rebuilds (probably why they open sourced it in the first place). A slight redeeming factor is that it’s actually possible to audit the telemetry in this case, and make sure it doesn’t collect more than it claims and disabling it in the settings means it’s actually disabled.

  • Gargari@lemmy.ml
    link
    fedilink
    English
    arrow-up
    1
    ·
    1 year ago

    What you think Tauri’s potential in cross-platform ui like editors development?