True. It's only an editor. That's why I brought up Atom and Brackets. Neither of them are slow per se, but they don't feel as instantaneous as Sublime Text. No matter how many plugins I throw in there, the size of my project, the number of files open, ST always feels like the most responsive thing I've ever used.
I don't have any objective data, but perhaps it's due to the Kool-aid. It was the second text editor I used (Notepad++ being the first). I fell in love immediately.
No I agree, ST feels just right. Why anyone would want to use the DOM and JS for the view layer in a project as demanding as an IDE is beyond me.
When I put my ear to the ground and listen really hard, I can hear the vibrations of a herd thundering by in the distance. I think I know that noise, I've first heard it when people were XMLifying everything back in 2000.
To be fair, Microsoft did a really really good job with VSCode - it can easily search big files that Atom completely chokes on.
It does have a problem with files bigger than a few MB tho - but native editors like gedit chooked on that too so I can't blame them too much.
And it has that smooth input animation that not many native editors have but it adds so much to the feeling of responsiveness (other editor I've noticed using this is latest intellij versions).
My point wasn't even so much about performance, with enough effort you could work around most of the issues (at least in some browsers, kind of dumps on the idea of "portability").
My point was that the whole GWT -> JS this took or the coffeescript Atom took is such a pain on the ass to develop with compared to a real GUI toolkit - just think of the developer productivity without the stupid GWT compile times, special cases, etc.
Think how nice of a development expirience you would have with something like Kotlin + JavaFX, or C# and WPF.
I really really wish Microsoft would open source GUI stack from Silverlight and let community maintain it as a cross platform GUI framework for CoreCLR - they already had it running on OSX meaning it can run on non-windows tech - meaning the porting path exists, and a lot of work went into silverlight GUI controls historically, plus it's WPF compatible. They could make "portable profile WPF" from it if they wanted, and also target mobile and desktop, from Visual Studio and Visual Studio Blend - the ultimate Enterprise app development platform
With vscode there are some clever architectural choices they made to create a near native experience. They use stdin / stdout integration between native services (like those for Go programming language) and the editor itself. It's anothe form of reuse for the libraries that already do intellisense, compilation, or other syntax-specific functions.
In the 2nd and 3rd generation codenvy systems, we tried to duplicate some of the JDT capabilities for Java directly within the browser with webworkers. We had to write that in JavaScript. I believe this is how C9 handles their support for HTML, CSS, and JavaScript.
We had pretty decent support, but there were all sorts of issues: having to rewrite JDT services is nearly impossible and really the domain of language teams, the browser has limited context where many intellisense services need access to multiple directories and meta information, and there were some performance issues in certain edge cases that are hard to resolve without having certain I/O and cache mechanisms (which are readily available on file systems).
So the VSCode model of reusing the language services and then layering on a stdin / stdout protocol is pretty smart. We are doing a similar approach with Che, but instead of stdin / stdout, we are packing a restful interface on top of the JDT & JavaScript services. We see some potential to consolidate vscode & other approaches into a multi-language intellisence server, powered by REST + stdin + stdout. That would be really fun to have all programming languages remotely accessible through a common protocol.
I don't have any objective data, but perhaps it's due to the Kool-aid. It was the second text editor I used (Notepad++ being the first). I fell in love immediately.