Blindly pick one to trust sure that’s a poor choice.
But we make choices based on our experience and what information we have. I won’t trust anyone forever blindly, but I will pick some for now over others who I find untrustworthy.
But I find it uncomfortable how much brain time we allow for making value judgements about brands -- it's a purely one-way emotional judgement, because as a general rule, not a single one of the people who run them would so much as piss on you if you were on fire in return.
[ Edit: This is not particularly to be taken as an argument for open source; I don't think people in the open source space are inherently more trustworthy; they have just built mechanisms where I don't have to trust them individually or severally.
We have to stop supporting "teams" in the tech world -- even at the level of employee loyalty. It's damaging, and not just to open source, but to human progress more generally. ]
This may be true, but there are longstanding figures in open source who I would not trust as far as I could spit.
It's a mistake to see the openness of open source or open access as a guide to trusting the people who produced it. Dual_EC_DRBG is a good example of why.
I think MS is an awful company that tries to win by destroying the competition using all sorts of legal and illegal tricks to do so.
At the same time, it MS starts a new product, I would trust them to support it for a reasonable amount of time and give a reasonable amount of transition time if they did decide to wind it down based entirely on their history.
OTOH, 4 years ago I thought that Google was a much better supporter of Open Source but even then I wouldn’t trust them enough to not sunset a new product with months of notice at best to actually use something new they came up with.
But at any rate the hosted product and the open source code are orthogonal, right?
You can't use one to guide your opinion of the other. This is the point I am making: we are interchangeable consumers, and yet we invest emotional energy in the pretence that we are not.
Nobody in their right mind would believe that Coca-Cola would prefer you on some emotional level not to be a Pepsi drinker. And yet we, as consumers, allow brand interpretations (Coca-Cola is classic and Christmas, Pepsi's logo looks like an obese person's belly) to gain emotional strength; we extend our personal identities with brand loyalty.
I am slightly late to this party; I perhaps used to think that brand loyalty in customers was something that was meaningfully measured and acted on, and I suspect until the mid-eighties it was, to some extent. But companies are beholden so completely to the whims of their shareholders, or worse their private equity owners, that it's impossible to believe that the continued happiness of customers matters much.
(Nothing to me underscores this more than people overexerting themselves to find positive things to say about Apple's Vision Pro launch, which was so terrifyingly dystopian and anti-human that it made me feel physically sick as a long-term Apple customer, and yet I type this on a Macbook that I would generally say is an object I emotionally value using!)
I also dislike Chrome and any chrome based reskin. I appreciate Firefox and even Safari. Specially Safari for the same reasons the average JavaScript Stan hates it: it’s keeping the web from implementing the latest usb-over-browser crap or wathever the-chrome-consortion (google) comes up with. Safari on iOS is the only thing that keeps “best viewed on Chrome” from happening in current year.
Those are personal opinions though.
VS Code has one as far as I am aware uniquely-implemented feature -- remote editing -- which is absolutely invaluable to me as a freelancer with many long-term, infrequently-updated projects.
Lots of separate VM dev environments with different editor configuration and tool requirements, and more or less only SSH config and keys to connect me to them, from whichever machine I need to.
It's the only Microsoft thing I use at the moment. I don't even have a github account.
To be that one guy, Emacs has had remote editing (without even needing to install anything on the remote server, unlike vscode) for forever with tramp mode. But other, more accessible/modern editors having it is definitely nice because it's such a handy feature
But the VSC approach allows me to customise the tool environment within the remote extension, including going as far as using different SCSS processors and language servers, but is managed through essentially exactly the same interface as the local.
(It's also inherently multi-user; changes are reflected in each machine connected to the remote, which makes it really easy to move from a work to a home machine, or a desktop to a coffee-shop laptop.)
This is what I meant by uniquely-implemented. I often find that the most visceral critics of VSC or adherents of "natively implemented" code editors haven't the slightest awareness of this feature.
Still -- thank you for your comment, it gives me one more thing to investigate for those times when tools fail me.
Much as I love Emacs I do mostly use VSC these days, and I do tend to forget the extent of what remote editing capabilities it provides since I haven't had much reason to use them in a while.
I was thinking more of all the other times this has come up in the past and I have to say, "you understand it's not just a text editor with network access?"
It has pretty much unique capabilities, and as another commenter has said, it's even remarkably agnostic as to the _kind_ of remote container. For example you can run the editor on Windows with the remote as WSL, and it really blurs the boundaries between them in a way that cannot possibly be a coincidence for Microsoft.
With VS Code, I can develop across Windows, Docker, Linux, Linux running on WSL, and macOS with zero configuration aside from setting up SSH connection configs and installing the remote extensions with a button click. All the extensions work seemlessly when remoting. My settings also automatically sync by just signing into GitHub.
With Devcontainers, I don't need anything to develop except Docker and VS Code. I simply pull down a repository, open it in VS Code, and then VS Code sets up a container with all dependencies and configuration.
No, Emacs does not have this experience.
And I don't know the technical reasons why VS Code installs on the remote server, but I think it's important to note that you're not just editing remotely but developing remotely.
(Embarrassed cough)
So, er, I didn’t need to install MacOS Fuse, mount an SSH-FS folder and then use VS Code to open my remote code for editing then?
Thanks for sharing. At least I’ll know next time! :-)
> it's amazing and great that more people are finally using this methodology
Okay. (Emphasis mine.)
We get it. Emacs is awesome and has been around a while. But not everybody started with it when there were no other competing tools, but now there are competing tools.
I do all my development on remote supercomputers and the ability to remotely debug multi-process Python and C++ applications running inside containers across many servers made me love vscode.
I think it’s reasonable to not hold hours or even days of setup and learning against a product I’d use in this fashion. Even a tiny 1% productivity benefit obtained after configuration and learning earns me about 2.5 dev days worth of benefit every year. And if I expect to use the tool for a decade that’s almost a month.
I don't want to install a new tool and be told I need to dump hours and days into it when another dev tool just does it where I can get on with doing what I want to do. This is exactly why I went to VS Code from Emacs.
Even though I primarily use WebStorm, when I’m working with people on a contract gig, I frequently use Live Share as a pairing tool whether to help debug something or just for training/mentoring.
I’m talking about the remote dev environments. Editing inside VMs, inside WSL, inside Docker containers or via SSH to remote machines, where the editing environment runs seamlessly on the remote, can have extensions, can do version control, run language servers etc.
https://code.visualstudio.com/docs/remote/remote-overview
Basically a part of the editor is running remotely, and yet can be managed as if it were local (e.g. an extension can be installed locally or into the remote). So your code is operated on entirely by the remote.
It is, as far as I am aware, unique in its scope.
If you just need those two things there's plenty of options - why are you forcing yourself into vscode ? VSCode is great because of the plugin ecosystem - if that's not your thing use something else - there's plenty of alternatives.
Tech people are pretty gullible. Satya has a good PR operation and many people fall for the “wow it’s the new Microsoft”.
I negotiate with them. They are way more difficult and hard nosed to deal with than in the Ballmer era. The salespeople work under a sword and while they aren’t Oracle, they are in that path.
Trust doesn’t mean much with companies of this scale. You need to understand your contracts and the KPIs that drive decisions at the deal desk.
If you are an individual, why are they giving you this bounty? With Google, their motivations are very clear, and they quickly course correct (ie kill the product) when their objectives aren’t met.
Yeah, I'd believe that.
When people have said they don’t trust Google, that’s precisely the reason they give. Conversely I trust Microsoft and Apple more because their motivations are also clear, and less in conflict with my interests.
I’ve no doubt that Google, Microsoft, and Apple are all equally horrible when it comes to negotiations behind-the-scenes. I’m sure they abuse KPIs as much as each other. As a customer none of that matters to me.
Today ms is the underdog in the digital world. Google is looking to take away every last bit of your privacy and use it against you. And they will kill anything they release in a year or two.
In any case...
I was thinking the other day about how sure I was that MySQL was toast as soon as Oracle acquired Berkeley DB and InnoDB, and then how sure I was it would be hobbled when they acquired Sun and got the whole shebang.
What happened, actually, is that MySQL got better and better, with only a few annoying Oracley missteps along the way (permissions structure changes in a minor release for example).
But what matters in that story is that Oracle vs (big bad) Google was substantially decided for Google, despite what Oracle (and Microsoft) wanted. Because it limits Oracle's power to use the MySQL APIs against competitors in the same way as it limits their ability to use them against Java competitors.
This is what I mean: these are big competing interests. We are small interchangeable customers and consumers. It's worth avoiding investing belief in any of them.
Uncritically associating "trust" with a brand is a mistake. Microsoft are no more on the side of the angels than anyone else (and are very clearly on the other side in some of the legal positions they stake out, such as their amicus brief in support of Oracle against Google in the Java case).
Pick a sports team if you must, but don't pick a brand and support them loyally. Be an interchangeable consumer, because this is how they model your behaviour anyway. Maximise that.