Hacker News new | ask | show | jobs
by bb101 2260 days ago
Contributors and adopters: <every large company but Microsoft>

Whilst it's healthy to have competition, I'm not sure a rip-off of VS Code is in the spirit of open source. Did they try to work with the team at Microsoft to improve VS Code before forking it?

8 comments

"Hey Microsoft, we're trying to improve VS Code by moving it over to a not-for-profit corporation not under your control and completly removing the Visual Studio brand. What do you think?"
"We call that maneuver the 'Edge'."
It's pretty fair considering Embrace, Extend, and Extinguish was the MS modus operandi for decades and may yet be.
I agree. Just wanted to point out why Microsoft wouldn't be on board.
My day job is TypeScript all day long, so like all but one quintillionth of one percent of TypeScript developers, I use VS Code all day long, too.

I'm extremely happy with its development, too; I think the team behind it has done as good a job as I have personally ever seen of both a.) delivering consistent improvements that excite the daily users, and b.) running an open source project.

Still, I absolutely think we are all better off with a vendor-nonspecific, open-source focused competitor.

I mean, once upon a time Microsoft Internet Explorer was the best browser for the Mac, too. There's probably enough awesome in the VS Code project to keep it from being corrupted by Microsoft's corporate priorities — and competition will help keep it that way, in addition to providing a possible alternative if that doesn't happen.

I'm the local TS evangelist. Exactly no one I've seen who's tried WebStorm has switched back to VSCode. They consume all of the same LSP APIs that VSCode does from the LS, but they have all their IDE goodies as well.
Nice to meet you! I am the first person you've met who has tried WebStorm but then switched back to VSCode!

I bought it and gave it a whirl, but I went back.

Mainly because VS Code is much faster, and has a more normal UI (native open/save dialogs, way way better file browser, etc).

Also because the development velocity seems much faster. Every single VS Code major update has goodies in it that I personally want (plus blah blah whatever that I don't) and they come out once a month almost!

But I am curious (especially since I do still have the WebStorm license) what are some of the "IDE goodies" that give WebStorm the advantage in your view?

Hmm, what I liked about sublime was that it was fast and let me do text really fast too.. other than that it got out of the way.

Everything I need is on Ctrl+p or Ctrl+shift+p.

vscode is like sublime to me, just seems the language completion got useful.

The phrasing chosen by the Eclipse foundation for the Theia 1.0 announcement was a bit unfortunate:

- It's not Theia versus VS Code

- Theia is not an "open-source alternative to VS Code"

- Theia is not a "rip-off of VS Code"

While confrontational narratives are appealing, it's more subtle than that: Theia is based on VS Code to address a different kind of need.

Much like TypeScript doesn't try to replace JavaScript, but builds on JS to address the need for type safety, Theia doesn't try to replace VS Code, but builds on VS Code to address the need for a framework to build IDEs for desktop (e.g. Arduino Pro, Arm mbed...) and for the cloud (e.g. Gitpod, Google Cloud Shell...).

Does building an IDE based on Theia provide significant benefit over simply releasing a plugin for vscode?
Sure, you don't develop something on the side for an existing IDE which treats your content as remote and potentially insecure, prohibiting access to DOM and other useful APIs like embedding editors. If you are building an end product for particular developers you want to be in the control of final developer experience, you don't want to deal with limitations of iframes because your content is not remote, you want to change styles, access DOM and have good integration with editors. Consider new Arduino IDE, they have to provide similar UX as old IDE for smooth transition. It requires disabling many features by default and complete restyling and rebranding. There is no way to do it with VS Code apis.
> Did they try to work with the team at Microsoft to improve VS Code before forking it?

As an open source project maintainer, I don't think it's necessary or easy to do that. Project teams and maintainers have different goals and sometimes it's much easier to fork and evolve without stepping on each other's toes. I'd even say that's the strength of open sourcing software under the right license.

Note this is Not a fork, it's a from scratch implementation that is compatible with the extensions of VSCode, not a vscode fork.
If by "from scratch" you mean, taking Microsofts MIT licenced Monaco editor and adding some stuff around it, then yes it's not a fork.
Yeah, I'm sure they just happened to make a one-to-one exact recreation of the VS Code UI as well, huh?
In the FOSS world, forking is traditionally considered a hostile action. GitHub normalized the name of the action "fork", but it's not the same thing. GitHub forks are part of the plumbing of their Pull Request metaphor and are not true forks. As long as you're submitting upstream and pulling down, you haven't "forked" the tree.
"fork is hostile" is a myth perpetuated by little Napoleons who want to to control how users use their software.
It really depends on the situation. There are both friendly and hostile forks.
That's exactly the spirit of Free and Open Source.

VS Code is welcome to backport anything they like

Exactly. “Fork it and compete” is as FOSS as you can get. Any time I complain about how some FOSS works, I’m constantly told that it’s open source and if I don’t like it I should fork it and fix it. That’s just how open source works.
> VS Code is welcome to backport anything they like

They can't, as Theia contributors haven't necessarily signed the Microsoft CLA.

One could argue if VScode is an open source project or not. But when copying an open source project, it's not called rip-off, it's called fork. The intentions of forks are to improve the software, try out new ideas, etc, and the original software can merge new features developed in the fork. Forks can however be "hostile" when the intentions are to rip-off the original creator by stealing users/sponsors and making the fork proprietary, which is a strategy used by some cough software businesses.
> One could argue if VScode is an open source project or not

I mean... not really, no?! It's MIT licensed and fits any definition of OSS I've ever seen.

AFAIK, the only non-OSS part is the installer.

While it is also available under the MIT license, MS reserves the right to re-license it however they see fit. If you want to contribute, you'll have to sign their CLA to give Microsoft that right.
One problem is that you are required to sign away your rights in order to contribute, so that in the future you might not have the rights to use your own work.

Then there are proprietary extensions, like the "remote" extension (1) that competes with Theia's open source solution.

Also see open source vs FOSS (2)

1) https://news.ycombinator.com/item?id=22792612

2) http://wiki.c2.com/?FreeAsInBeer

I've well aware of the OSS/FOSS definitions - it was exactly those that made me question your argument thst VS Code isn't open source. It plainly is, and indeed is Free As In Beer.

I don't see the problem with proprietary extensions - any open plugin mechanism will have at least some proprietary extensions (by the primary maintainer, or by third parties), including Theia's if it gains enough traction.

Creating a derivative work isn't termed a "rip off" in open source its an expected use case. You don't have to work with someone before making your own work derivative of theirs. If it comes to pass that your work directly competes with theirs for developers or users you just have to convince potential users and developers that they ought to use yours instead same as any other competing entity in a free market.

For example I'm pretty sure Ford doesn't consult with Toyota before they introduce a new model.

But Ford doesn't build their cars from Toyota parts and software and then just slap their logo on it and call it a day. So I'm not so sure that's a great analogy.
You don't need to buy open source parts nor receive permission to use them.
> I'm not sure a rip-off of VS Code is in the spirit of open source

If our working definition of rip-off is work alike that replicates the interface without sharing code, then I would say that open source has an incredibly long history of building through ripping off. Linux is a rip-off of MINIX is a rip-ff of Unix, GNU is a rip-off of Unix, various graphical interfaces over the years have been copies of commercial offerings. Copying VSC is absolutely in the spirit of Open Source.