
Visual Studio Code 1.0 - lukehoban
http://code.visualstudio.com/blogs/2016/04/14/vscode-1.0
======
neves
VSCode knockouts Atom in a dispute for becoming a developer editor in a
corporate computer.

Sure, you all have root password in your computer. Unfortunately, I belong to
a lower race: the corporate developer. I work in a Windows 7 machine, don't
have root password and there's a big wall called proxy around me.

I didn't know about VSCode before this HN post, but I was trying to use a new
editor instead of Notepad++. In my 5 minutes comparison match between Atom and
VSCode, Atom was knocked out in the first minute. To quickly test a new
general code editor I just want 3 "simple" things: column selection, regexp
search and replace, and a python mode.

Atom: got the regex, must install a column mode extension, need to install a
ntlm proxy authentication downloaded from (argh!) Sourceforge, configured it
after some google searches, failed to install the extension because it needs a
compiler. Ops, just spent 30 min for my 5 min test. Can't spend more time
playing with a code editor, must go back to work.

VSCode: Download the portable version
[https://code.visualstudio.com/docs?dv=winzip](https://code.visualstudio.com/docs?dv=winzip)
and unpack it. Just works.

You've got a new fan VSCode!

~~~
enjoy-your-stay
Just wanted to say I find Notepad++ to be an excellent tabbed editor,
especially for XML or SQL. I use it on windows all the time and really miss it
on OS X where I find Textmate to be a bit awkward.

~~~
jongalloway2
I've been a long-time fan of Notepad++, but it's a text editor. You can extend
it to make it work better with specific programming languages (e.g. here's a
post I wrote 10 years ago about adding language support
[http://weblogs.asp.net/jongalloway/creating-a-user-
defined-l...](http://weblogs.asp.net/jongalloway/creating-a-user-defined-
language-in-notepad)) but it's fundamentally a text editor.

VS Code is a code editor. It has IntelliSense (not text-matched autocomplete,
IntelliSense), debugging support, git integration, parameter hints, go to
definition, code peek, etc.
([http://code.visualstudio.com/docs/editor/editingevolved](http://code.visualstudio.com/docs/editor/editingevolved)).
The goal is to give you code editing features with the speed and simplicity of
a text editor.

They're both free and lightweight, so I use them both pretty much daily.

~~~
jsingleton
As you say, both are useful for different things. They complement each other
if you use the right tool for the right job.

I find Notepad++ is great for handling really large files and changing UTF
encoding or line endings. VS is good for pretty print formatting code/XML to
be more readable, among many other non-text things such as debugging.

~~~
coldtea
> _and changing UTF encoding or line endings_

If you need to do those things often, there are specialized tools, including
in the command line, and for batch processing.

No need to do it in an editor.

~~~
jsingleton
I don't need to do this often but occasionally you'll need to fix inconsistent
line endings, change encoding to UTF-8 or remove a BOM [0] (to stop ï»¿ being
prefixed by some old software).

[0]
[https://en.wikipedia.org/wiki/Byte_order_mark](https://en.wikipedia.org/wiki/Byte_order_mark)

~~~
coldtea
Yeah, I know, had to do it some time or another.

In OS X and Linux (and Windows with Cygwin etc) there are several command line
programs such as unix2dos (line ending conversion), iconv (encoding
conversions) etc for doing just that, so that you don't need to do it in an
editor and can even automate the work.

------
thewhitetulip
VSCode has done the thing that nobody expected MS to do, change the way code
was written on Unix/Linux.

I love linux/unix, but the problem always was with the lack of an awesome text
editor cum IDE, yep there is eclipse but it is too clunky, I do not like
sublime as it isn't FOSS (call me crazy), gedit took way too much memory,
geany is fast and mean but the UI sucks plus functionality isn't that great.

Enter VSCode, code writing feels amazing again, not the functional part, but
the actual manual part.

I do not like vi because I primarily was learning web dev and I didn't really
get my head around using vi effectively and still learn the web dev, so I am
not a emacs/vi superstar as I have heard that both of them are fine text
editors.

but for the people like me who don't or can't use terminal based editors,
VSCode is quite literally the best.

The new Che project of Eclipse does seem promising, but the last time I tried
installing it, it took around an hour, consumed GBs of my bandwidth and still
nothing.

I am still Waiting for the day I'll be able to program in its entirety on my
android device.

I used Atom but it is too slow, it is surprising that VScode and atom share
the same ancestor but one is blazingly fast and Atom is so damn slow.

Edit: yep vscode didn't transform coding on unix, it merely changed it to some
extent, and why the downvoting? point out where I am wrong, I'll get to learn!

~~~
Mikeb85
Ummm, no. VS Code is a decent editor, nothing more. It certainly doesn't
transform the way code is written on Unix/Linux.

Vim and Emacs are still superior if you want to put the time in, and both have
non-terminal interfaces. They can also be both customized to be whatever you
want them to be, there's not really a limit to their functionality except what
plugins are already written. Ditto for Atom, though of course, it does seem to
be more web based for the moment (though Atom does have great plugins for Go,
Nim, and I'm sure a bunch of other languages).

In the grand scheme of things, tools like compilers, debuggers, interpreters,
other command line tools (like completion servers), etc..., matter more than
editors anyway.

Edit - for the record, VS Code seems great. But it's not revolutionary.

~~~
pknerd
>Vim and Emacs are still superior if you want to put the time >in,

TBH, not every developer is willing to become a _power user_ or interested to
learn an IDE instead of the language itself. Being someone who worked on
VStudio alot and now on Linux/Mac based tools, I can safely say that Microsoft
tools are _Developers friendly_ most of the time. It's good they are
introducing same touch for Linux/OSX community.

~~~
coryrc
Why spend a few hours over the course of 60000+ working hours to learn how to
use more effective tools?

~~~
crispyambulance
"a few hours" ??? Come on, let's not pretend that EMACS is going to take "a
few hours" to come to terms with and become more productive in than an IDE.

~~~
TeMPOraL
Actually, you can get decently proficient in just few hours. Have you actually
tried sitting in front of Emacs or vim for more than 30 minutes, _to the
clock_?

Humans have this funny thing as they grow older - they look at a thing, maybe
try it out for few seconds, and then immediately determine it's too difficult
and it will take forever. They rarely bother to spend actual five minutes, to
the clock. If they did, they might actually have learned something.

25 minutes of deliberate practice - a single Pomodoro - is enough to become
acquainted with _several_ of Emacs features - like, navigation by semantic
units _and_ incremental search _and_ autocompletion. You won't get
_proficient_ in that time, but it's enough to rewire yourself to actually
start using it when writing code. Which will _then_ lead to you becoming
proficient _while_ doing your regular, billable work.

Seriously, set up a Pomodoro timer, sit in front of Vim or Emacs, and try to
practice a few things. You'll be surprised how fast you can learn.

(And yes, I did that, so I'm not talking out of my ass. I actually almost
doubled my Emacs productivity once in 5 pomodoros - in 2.5 hours - two of
which I spent _watching Emacs Rocks videos_ , two on rewriting s-expressions
with Paredit, and one on multiple-cursors.)

~~~
reitanqild
> Have you actually tried sitting in front of Emacs or vim for more than 30
> minutes, to the clock?

Not parent but I have. I still would recommend something else for all the
stuff I work with.

That said, it is amazing, I just believe in my line of work people are better
off spending time learning an ide, esp refactoring, efficient search/ replace
as well as how to enable block selection.

~~~
TeMPOraL
> _I still would recommend something else for all the stuff I work with._

I sometimes do to. In particular, when that stuff is Java or C# - it's hard to
beat the support IDEs gives you there. So I personally opt to switching said
IDEs to Emacs keybindings instead.

(Also, one could argue that you need IDEs there mostly as crutches to support
the weak language, but that's a topic for another day...)

> _better off spending time learning an ide, esp refactoring, efficient search
> / replace as well as how to enable block selection._

Refactoring - if you mean semantic transformations supported by your IDE, then
yes. See above. But for search/replace and block selection no IDE beats the
convenience of Vim and Emacs. They simply can do that better and more
naturally (along with plethora of similar things helping with selection and
_navigation_ ). And this is exactly the type of thing I was talking about in
my previous comments - you can learn _both_ under one Pomodoro if you focus
solely on it, and then normal work will quickly take you to proficiency.

------
russell_h
I switched from Atom to VSCode for Go development on OSX a few weeks ago while
Atom's Go plugin was going through a rough few days, and haven't been able to
go back.

The patterns of use take a little getting used to coming from Atom or Sublime,
but VSCode gives me real static-language IDE features that "just work" simply
by installing the Go plugin. Comparable functionality in Atom requires
multiple plugins and I never managed to make a few of them work at all. The
control+tab file switching quickly became second nature.

I never had the performance issues some people have with Atom (on a 5 year old
laptop), but VSCode feels a little quicker at some things. Nothing to write
home about.

I love Atom's direction (plugability, a well-cultivated ecosystem,
discoverable configuration), but for sheer usability I'm sticking with VSCode
for now.

~~~
weddpros
I never switched to Atom (from WebStorm), but I've made the switch to VSCode
and I like it!

It just works. The workflow is fine for me, git integration is a plus.
Compared to Atom, I don't need to try plugins to get descent functionality.

Actually, it's the first MS product I use in like... 10 years?

I used to be an emacs fan, I used to be an Eclipse plugin developer, I used to
be a WebStorm user... now I prefer VSCode.

I love how it makes the best of screen real estate compared to WebStorm

------
evmar
I'm your standard unix greybeard, the sort that uses org-mode to outline-
structure their emacs config (that's actually what I do, not even a
hypothetical), so I approached VSCode with skepticism.

I have actually been really impressed. It's fast and responsive, even on
Linux, and the TypeScript tooling is fantastic. I think with a bit more UI
work (like vi keybindings) it could potentially become my preferred editor.

~~~
anamoulous
I'm chuckling (not in a bad way!) at the emacs user that prefers vi
keybindings expressing optimism about a Microsoft editor written in a
statically typed variant of Javascript. Progress is cool.

~~~
evmar
I try my hardest to not be dogmatic, and my answer to the argument about vi
having better keybindings while emacs having better extensibility is "why not
both?" :) JavaScript is almost an acceptable lisp, too...

------
oblio
Visual Studio Code could serve as a solid base for VS.NextGen. Following
previously unheard-of paradigms (Unix) for Microsoft, Visual Studio could
actually become modular, with each component becoming useful on its own.

Visual Studio Code would be the editor, Omnisharp the Intellisense platform, I
think they were also developing some sort of common debugging interface, etc.

It would be a lot nicer than the current Visual Studio setup, where the
installation drags in 6GB of cruft.

Of course, this would involve an internal power struggle between Visual Studio
Code and Visual Studio proper, and I hope VS Code wins :)

~~~
Analemma_
I have a gut feeling that this is in fact the plan. People keep asking "When
can we have Visual Studio on OS X/Linux?", but I don't think that's ever going
to happen: VS is so tightly coupled with COM and Win32 that they'd basically
have to write it from scratch, or write an entire Windows emulation layer. But
what they _can_ do is gradually add features to VSC until it does most of the
things you wanted full VS for: Intellisense, deploy-anywhere frameworks and
debugging being the main ones. Doing it that way will probably be more
performant too.

~~~
atonse
They've demonstrated it too. With Roslyn being a "compiler as a service" and
the OmniSharp umbrella of plugins, now VS Code and Sublime Text all have the
same intelligence (and IntelliSense) that Visual Studio has. Everything else
(IMO) is much easier chrome around that fundamental experience, and can easily
be filled in over time.

In the C# talk at Build [1], they demonstrated visual debugging using VS code.
It was pretty awesome.

[1]
[https://channel9.msdn.com/Events/Build/2016/B889](https://channel9.msdn.com/Events/Build/2016/B889)

------
atonse
I absolutely love how VS Code generally feels more native, performant, and
polished than Atom, but lack of a good VIM mode is keeping me away right now.
Hopefully the author of VIM Mode in Atom, makes a VS Code plugin.

~~~
saclark11
There is an extension for vim mode:
[https://marketplace.visualstudio.com/items?itemName=vscodevi...](https://marketplace.visualstudio.com/items?itemName=vscodevim.vim)

~~~
lucian1900
There are several actually, with different subsets of Vim. Sadly, none are as
good as Atom's.

~~~
slammers
Hello - one of the team members from VS Code here.

We built this extension sample to show the capabilities of the extension API -
[https://github.com/alexandrudima/vscode-
vim](https://github.com/alexandrudima/vscode-vim).

We've done some work to improve the API for the extensions. We'd love your
feedback.
[https://github.com/Microsoft/vscode/issues/3600](https://github.com/Microsoft/vscode/issues/3600).

~~~
grayrest
The issue with Vim is that the editor has several hundred/thousand idioms and
everybody uses a different subset. As an example, most people delete words
with `dw` while I usually use `dt<space>` because the t/f motions generalize
to subwords. Until you have the majority of your personal subset implemented,
vim support in a given editor is "bad".

I've thought about doing a vim implementation for years where motions are
expressed as composable functions projecting from text range to text range
with commands taking a list of text ranges, mostly because I'd like to whether
non-text based motions (e.g. AST based or generalized cursors) would work. I
like VSCode and expect to move over to it so I've thought about starting my
project but the scope of doing a good implementation is daunting.

Congrats on the 1.0 release, VSCode is a great product.

~~~
atonse
So essentially, I think vim-mode in atom actually uses NeoVim's headless VIM
engine, which is why it's more full featured. But don't quote me on that :)

The ideal VIM mode plugin for VS Code would do the same.

------
andwaal
One of the things people does not seem to mention is the great debugging
support you have in VSCode. The possibility to easy setup debugging with
support for breakpoint, step through, inspection and so on. For react-native
VSCode is the only IDE I have found which enables this. Previously one had to
open Chrome and debug your apps from there, to have it inside the IDE makes it
so more convenient. The same goes for Node(which you also can do in Webstorm,
but not free and open source) and as far as I can tell the only IDE you debug
Go probably. As an developer preferring solid IDE`s like VS and Eclipse with
full debugging support it always feels like a step backwards when working with
an language where this does not exists.

~~~
bitmapbrother
That's probably because it's using the Chromium code base. Those debug tools
are from Chrome.

~~~
aweinand
No, VS Code's debug support is not based on Chrome's debug tools since we try
to support any debugger.

------
agentgt
Does anybody else use several editors all the time? I use Emacs, Vim, Eclipse,
Atom, and Intellij. I don't stick to one.

I wish I could stick to one editor but there is always some editor that does a
way better job at a particular task. Each editor has its killer feature. I
have tried turning emulation of emacs/vim on many editors to provide
consistency and its never been really good. Thus I have several "default"
keybindings in my head.

Because of this I try not to rely on too much magic or customization that any
editor provides and instead write lots of shell scripts (Bash, Groovy and
Python) to do code generation and to find things.

But I'm always wondering ... could I be more efficient by sticking to one.

VSCode will probably just become another editor I have lying around. Probably
for Typescript.

~~~
criddell
Aside from different tools having different strengths, I enjoy learning to use
new software. I think if I used one tool for everything I would get bored with
it.

That said, learning new keyboard commands is sometimes a real PITA. When I'm
tired, I sometimes find myself trying to close Visual Studio or Sublime Text
with :q.

~~~
spc476
How odd. I've used the same text editor for twenty-plus years now (hint: it
has yet to be mentioned) and I find that I no longer have to think how to use
it---it just happens. Then again, I consider the Unix command line as my IDE
[1].

[1] Every few years I'll try an IDE. I've been doing this for over twenty-five
years. I've yet to find one that I like. Over time, my bar for "what I like"
has fallen to the point where now it's "it doesn't crash when loading a simple
one file program." [2]

[2] The C/C++ "version" of Eclipse. I tried using it to help browse a C++
application at work. It never worked.

~~~
criddell
Odd? I don't think so... I've worked with lots of incredibly talented
programmers and I think every single one of them has different preferences.

My favorite place to work right now is on OSX. It's Unix so you get all the
command line goodies plus it has a very good GUI and great tools in the
graphical environment as well (I'm thinking of XCode). Plus, I think
Objective-C is pretty neat.

------
bbcbasic
What's with the license I have to agree? e.g.

5\. SCOPE OF LICENSE. The software is licensed, not sold. This agreement only
gives you some rights to use the software. Microsoft reserves all other
rights. Unless applicable law gives you more rights despite this limitation,
you may use the software only as expressly permitted in this agreement. In
doing so, you must comply with any technical limitations in the software that
only allow you to use it in certain ways. You may not * work around any
technical limitations in the software; * reverse engineer, decompile or
disassemble the software, or otherwise attempt to derive the source code for
the software except, and solely to the extent: (i) permitted by applicable
law, despite this limitation; or (ii) required to debug changes to any
libraries licensed under the GNU Lesser General Public License which are
included with and linked to by the software; * remove, minimize, block or
modify any notices of Microsoft or its suppliers in the software; * use the
software in any way that is against the law; or * share, publish, or lend the
software, or provide the software as a hosted solution for others to use, or
transfer the software or this agreement to any third party

But:

[https://github.com/Microsoft/vscode](https://github.com/Microsoft/vscode)

So with the msi installer a different license?

~~~
shankun
@bbcbasic: there is indeed a difference between our OSS project and Visual
Studio Code, which is essentially our distro. For a detailed explanation,
please see
[https://github.com/Microsoft/vscode/issues/60#issuecomment-1...](https://github.com/Microsoft/vscode/issues/60#issuecomment-161792005).

------
nickjj
I tried VSCode for the last couple of months and it didn't sell me.

It's noticeably slower than Sublime on a good workstation and it has a bunch
of very minor annoyances that Sublime simply doesn't have.

When you encounter these annoyances dozens of times a day, it really turns you
off from using it because a good editor should make you happy, not infuriate
you.

For example, the way VSCode deals with multiple buffers and the sidebar is
really poor. It tries to be cute and keep the sidebar's state in each buffer,
but it's done really poorly and constantly disrupts you.

~~~
Corrado
I feel the same way. I tried to like VSCode but it's just all the small things
that trip me up. I've really come to depend on STs mini-map and miss it when
it's not there. VSCode is just slightly slower than I feel it should be,
causing me to pause and crash my train of thought.

------
recursive
> Can we build a code editor fast enough that it doesn’t feel like you’re
> typing in a browser?

Is this a jab at Atom? I like this.

~~~
zxcvcxz
Funnily enough I just installed VS code and there is lag as I type things in.
Also bad font rendering compared to the rest of my interface.

~~~
moondev
smooth as butter on my macbook.

~~~
zxcvcxz
But you shouldn't need high end hardware to run a text editor.

~~~
voxic11
It's interesting how people seem to have very different experiences with lag
on vscode. I wonder if it's actually much more laggy on some system
configurations. What are your running it on?

~~~
carussell
Not surprising since most people have their own pool of extensions that
they'll install but fail to mention any time the topic comes up. This is the
"Firefox is beastly" strain of criticism all over again.

------
simple10
It's interesting to see how VS Code / Monaco deals with long lines like hex
data without slowing down. It kinda cheats by wrapping the line even when not
in line wrap mode. There's a setting editor.wrappingColumn that controls the
wrap length.

However, even after setting wrappingColumn to an arbitrarily large number, VS
Code greatly outperforms Atom. The click accuracy within a long line is off by
several characters in my quick test, but good enough.

I was never comfortable using Atom because it would grind to a halt whenever I
accidentally opened any files with long lines. VS Code just may be the first
MS product that I'll use on my Mac on a daily basis. Looking forward to
testing it out on a couple projects.

------
Corrado
For some reason I can't stand the fact that VS Code drops .vscode files all
over my directories. I feel like I'm working with CVS again. I haven't played
with it much and not at all lately, but the last time I tried editing anything
in VS Code it generated these hidden files all over the place and drop me up a
wall. That may be configurable and it may have changed with 1.0, I'm not sure.

It's also, just very slightly, too slow. By too slow I mean that everything I
do just lags a tiny bit; I can type characters faster than it can put them on
the screen, clicking in the file browser is not instantaneous, etc. It's a
small thing but it really bugs me. I guess I'm just spoiled by ST3. :/

------
yisheng
Are there any emacs/vim users here who moved to GUI editors like atom or VS
code?

I would like to know what potential gains could come from using a GUI text
editor.

~~~
ctangent
I'm a longtime Emacs user and I dabble with atom and code. The main thing that
I get out of GUI editors is that extensions generally _just work_. I spent a
lot of time debugging emacs extensions to the point that I kind of expected
extensions to not work right when I install them - especially ones related to
autocompletion. Nowadays I use spacemacs to keep my package management sane,
but it's inflexible and complicated.

I miss things from Emacs sometimes so I keep it around. I miss macros, I miss
some of the more stellar Emacs packages (Tuareg for OCaml and Cider for
Clojure in particular) but I do a lot of editing nowadays in Atom and Code.

~~~
NoGravitas
I'd say that's almost true. I'm also a longtime Emacs user. My work
development is C# on Windows, so I've dabbled with VSCode and Atom.

My experience so far is that extensions on VSCode "just work", but they're
scarce, and difficult to discover and install.

My experience with extensions on Atom is that they are numerous, cover a very
wide variety of needs/wants, and that they frequently break when the main
editor updates. I haven't been able to install/update the Omnisharp extension
successfully since the npm debacle a few weeks ago.

I dabbled with Spacemacs, and it seems nice, but I couldn't work out how to
migrate my existing extensive org-mode customizations without digging deep
into the Spacemacs package management system.

------
chucksmash
The two highest rated comments in this thread make the little vein in my
forehead pop out.

Microsoft is doing some very cool stuff these days so props to them. "VSCode
has done the thing that nobody expected MS to do, change the way code was
written in Unix/Linux" though? I believe the term irrational exuberance
applies. Let's not get carried away here.

~~~
simoncion
> The two highest rated comments in this thread make the little vein in my
> forehead pop out.

There are some days when I wish that _I_ had enough money to employ a small
army of "thought leaders" to "organically" shape discussion on Internet
Message Boards.

Alas, my single upvote will have to suffice. ;)

------
fibo
Great story from Microsoft. Personally I use [neo]vim but I often recommend
Visual Studio Code to my non programmer collegues. I think it is really user
friendly.

------
forgotmypassw
I'm quite surprised by how much smoother VSCode is than Atom despite being
built upon the same platform, I just wish it had tabs and split tab groups,
then I could give it a go for a full day and decide whether I like it or not.

------
sntran
As much as I love trying VSCode, the lacking of tabs prevents me from keeping
it open longer than 1 minute. I'm just not used to not having tabs.

~~~
piptastic
They are working on tabs as we speak
[https://github.com/Microsoft/vscode/issues/4888](https://github.com/Microsoft/vscode/issues/4888)

~~~
DigitalSea
The tabs feature is under the heading, "Initial investigations/explorations"
something tells me they are not working on anything just yet. If the feature
makes it through, we might not see it for sometime yet. Disappointing, tabs
are a definite must for me.

------
beefsack
I'm a long time Linux guy and absolutely hate Visual Studio, it's just clunky
and unusable as Eclipse.

This post prompted me to try VS Code and I must say, I'm really impressed.
There are still a few rough edges but I do understand it's still young.

As soon as the Vim extension becomes usable I'll be on board I think; things
like visual selection don't appear to work correctly at the moment.

~~~
aioutecism
I'm the maintainer of amVim. I don't know if you tried amVim. It supports
Visual and VisualLine. Also, you may find it handles detail behaviors of Vim
much better.

~~~
zelos
Fantastic, that's a lot better than the other Vim plugin I tried! Thank you.

g; and W/E support would be nice (as someone said on this thread, everyone has
a different subset of Vim they use ;-) )

~~~
aioutecism
Thanks! Cloud you open an issue on Github repo here:
[https://github.com/aioutecism/amVim-for-
VSCode](https://github.com/aioutecism/amVim-for-VSCode)

------
krat0sprakhar
I've been writing OCaml for a while and seeing that VSCode has a pretty sweet
integration for F# gets me quite excited. Is there anyone here who's running
F# on Linux / OSX and can share their thoughts?

~~~
marpstar
It's amazing, especially with the Ionide
([http://ionide.io/](http://ionide.io/)) extension. By far the most pleasent
F# experience you'll find on ANY platform. I use it on both Windows and OS X
and it's been very enjoyable.

~~~
partisan
I've tried this route and while the IDE experience is decent, I was not able
to get a working Web API in F# using fsharp-generator (yo fsharp). So I used
yo aspnet to declare a C# Web Api and tried to reference an F# library
generated using yo fsharp. I was eventually able to get the C# project to see
the F# project, but intellisense was broken and showed broken references even
though the code was able to compile.

It was an uphill slog and I've put it aside for now, but I will keep coming
back to it. In the meantime, I feel like I will just have to go to windows and
Visual Studio 2015 to get the working experience.

------
frik
Does VSCode 1.0 still come with the tracking and analytics (phone home stuff)
that cannot be turned off?

~~~
Kequc
The second sentence in the first paragraph suggests they are actively
performing some form of tracking.

> Today, we’re excited to report that more than 500,000 developers actively
> use VS Code each month.

I've come to expect Microsoft is just going to do that, and it needs to be
accepted if you want to use their stuff. Fighting against it is a recipe for a
headache. Unfortunately (or fortunately) this editor is great for Typescript
and that's my passion.

A competitor should show up in this space and make me even happier.

~~~
carussell
If you build from source instead of downloading from code.visualstudio.com,
those things are disabled by default.

------
thom
It certainly looks from the extension API docs that this is a thing the world
needs - a modern GUI shell that allows arbitrarily complex extensions to be
written in a language people seem to like. Having looked around the docs as a
very heavy emacs user, I am not totally discouraged - every keypress seems to
point at a command, and if everything is rendered as HTML, I assume it is
effectively infinitely customizable (would love to hear opinions from
experienced extension authors). If, on top of that, it solves a lot of emacs'
foibles, like threading issues, performance edge-cases etc, then I plan to
keep an eye on it.

That said, the available extensions seem pretty bare. I don't see many
mentions of REPL interaction, and there are no extensions for many languages.
I'm glad it's getting attention, but I suspect it'll take a decade of loving
care to bring up to the level of most people's emacs configuration. I see no
reason that couldn't happen more quickly, though.

------
kensai
Visual Studio Code has been a very pleasant surprise indeed. Fast and simple.
Not everyone needs a powerful IDE, especially when learning.

I have been using it a lot lately to write snippets of code in C or HTML.

------
pcarvalho
(linux) webdev here, so I write in a couple of different languages. I believe
vscode sits nicely between emacs and eclipse.

emacs on the console at the servers is unbeatable. the daemon just sits there,
and I can fiddle with bash, config files, php, css with ease.

As a full IDE, eclipse is still the best for PHP development. Has a myriad of
plugins that make it so powerful: pdt, phpunit, code/lib/docs integration, per
project configuration, etc. its amazing!

Now, for js and scss, its a bit more complicated. and this is where vscode is
shining for me. I had to learn a few command bindings and a few things are
weird for me still: ctrl+x yanks the line, on linux middle click isn't
default, "folders"...

One of the things I like the most tho, it is written in a language I can
understand. Aptana used to be a favourite of mine, but because I couldn't
write any code for it, I was limited to bug reporting and waiting. This being
in typescript, I feel I can look into the source code and write a PR.

I yet to explore it deeply, but i'm sure it will just get better and better.

have a nice day!

------
tzaman
I guess it's not Textmate VS Sublime Text anymore. It's VS Code versus Atom.
While it's always good to have some competition, I also hate it to see awesome
features present in one, but not the other. Well, if I'd have to pick one (and
actually the only one that kept me with Sublime for this long), it would be
speed.

~~~
khattam
I moved from Sublime to Atom 6 months ago and the only thing I miss is blazing
speed.

------
zokier
Interesting that they decided to release 1.0 before sorting out the
coreclr/dotnet story. My understanding is that Mono is still the best way to
write C# with VSCode, even on Windows.

~~~
littlegreenb18
It's coming soon. The aspnet team demoed coreclr debugging in VSCode earlier
this week. It was all done on nightlys, but it worked. But honestly, since
these are all extensions, I don't see any reason 1.0 would need to be tied to
these features.

------
deprave
One thing I've gotten used to and find missing in VSCode (and Atom) is auto-
saving of untitled/unsaved buffers to temporary storage.

When I have an idea or want to use a new editor tab as scratch space, it's
really important to me that whatever I put there isn't lost if I exit the
editor. When I close the tab, sure, ask me if I want to save it somewhere. But
when I close the editor itself, I want it to reopen and restore everything
exactly as I left it.

The last thing I want to deal with is coming up with a path and filename when
the editor can easily create a temporary file and map some unique id to it for
later use until I tell it explicitly to save or discard it.

------
sunnyps
I would really like to use VS Code as my primary editor but it has some issues
that need to be fixed first, most importantly how slow the go to file
functionality is. I work on a project (Chromium) that has tens of thousands of
source files and while Sublime Text can handle that without issues, VS Code
can't.

I would also like to see the C++ intellisense plugin that's under development
improved further. I've found it to be a lot slower than QtCreator at indexing
symbols.

------
timeu
I have an IntelliJ Ultimate license and although it's really powerful and
great, for small things (JS, Python, etc) I mostly use VSCode. So far I am
really happy with it.

------
johne20
Anyone know how to "fix" the issue where I paste in a block of html and it
doesn't line up and indent properly? This works as I would expect in Sublime.

------
serge2k
Can I just ask why (some) Vim/Emacs fans see the need to shit on everything
and act like anyone who doesn't use one of those 2 editors is a moron?

------
GordonS
Maximum file size of 50MB[1] is going to prevent me from replacing Notepad2 as
my general purpose editor :(

[1]
[https://github.com/Microsoft/vscode/blob/5b9ec15ce526decc5dd...](https://github.com/Microsoft/vscode/blob/5b9ec15ce526decc5dd0488339e798f6bcb4ec46/src/vs/platform/files/common/files.ts#L420)

------
spriggan3
I use it for Typescript development exclusively. Obviously it works quite
well.

~~~
JBReefer
Can you talk about how you use it?

------
bsharitt
I'm a long time vim user who's switched mostly to Atom(at least for bigger
projects, vim is still my "quick fix" editor). Last time I tried VS Code(6ish
months ago?), I liked it all right, but stuck with Atom because at the time
the availability of vim like bindings was weak and ruby support was lacking.

~~~
ngrilly
What made you switch from vim to Atom?

~~~
bsharitt
Mostly tried it and got used to it. I liked the defaults a lot more than I do
vim(nothing some plugins, a good .vimrc, etc can't fix), and I found it much
more natural to use extensions that I ever did vim, so once I got Atom
matching my usual vim setup I found myself extending beyond that. Most of it's
probably stuff I could do in vim too, but adding extensions on whim feels a
bit more natural in Atom.

I still spend a lot of time on remote systems, so vim is a big part of my tool
box. There's also the weight of Atom. If I'm working on big project, I get it
all loaded up and work in Atom, but if I just need to tweak a thing or two in
a file, vim is still my go to.

~~~
ngrilly
Thanks for replying.

I asked because so much people say "If you're serious about development then
you need a serious editor: you should learn vim/Emacs because it's a once in a
lifetime investment that will boost your productivity beyond what other tools
provide". This mantra doesn't match my own experience.

I think Atom and VSCode provide 3 main advantages over vim: the out of the box
experience is better; using a GUI offers a more powerful user interface;
extensions are easier to install and work better.

It's like comparing fish and zsh: Atom and VSCode are more like fish; vim and
Emacs are like zsh.

------
ZoeZoeBee
I've played around with VS before but, I'm thinking of switching over to this
full time. I've gotten sick of the time wasted on TypeScript Errors in
Webstorm, the code Completion and Typings info is ridiculously better than
Intellijs offering, which has moved to SAAS :(

Getting used to things, takes a little bit.

------
wildpeaks
The one thing that prevented me from switching to VSCode last time I tried it
was the lack of projects management (e.g. a project remembers what files were
open, what folders are associated with it, and you can quickly switch between
projects, like the CTRL+ALT+P list in Sublime Text).

Is there such a feature now?

~~~
SiVal
Yes, the lack of a built-in project switcher is a nuisance. I'd like to have a
little dropdown at the top of the (left) sidebar with project names. A
keyboard shortcut plus a bit of fuzzy matching drops down the list and picks a
project and _pop_ all the files in that project are loaded right where I left
off. Maybe copy a few lines to the clipboard, maybe add a TODO: note to myself
that just occurred to me while working on something else, then a quick
keyboard shortcut and _pop_ I'm back in the other project.

Switching between multi-file projects should be almost as easy as switching
files within a project.

------
bobwaycott
Typically a SublimeText & Emacs user here. Decided to check VSCode out. Can't
ctrl+shift+[a/e] to highlight to beginning/end of line? Bummer. Also, seems
utterly unable to find defined symbols within a Python class within an open
file--but finds non-class functions and imports as symbols just fine. It's
jump-to-def is significantly better than I've seen in ST, and the peek-at-def
is pretty nice. I am quite impressed with its speed, especially when near-
instantly showing tooltips with the docstring descriptions when hovering over
classes/functions.

Overall, fairly impressed with 30 minutes of play.

------
wmccullough
Yet again, just like the other Microsoft announcements, this thread is filled
with "greybeard" superstition and vitriol.

It's to the point now where the conversations are becoming like this:

"I really like this new tool from Microsoft"

Samples Response:

"But Linux is just as good if you install X, Y, Z and are willing to spend
hours learning the intricacies of the kernel"

"Embrace, Extend, Extinguish"

As developers, can we all be happy that Windows users are finally getting a
nice range of really wonderful tools to use?

Not everything in computing needs to be a great ideological battle, especially
when the majority of us are writing simple line of business apps in our day to
day careers.

------
jagermo
EDIT: Ok, forget it, I just have to press Tab twice.I thought it was strange
that they launched an editor without that feature.

Original Post:

I like working with VS Code, although I'm just starting out.

But one thing bugs me: Is there a way to get VS Code to automatically complete
the tags and add the closing tags?

I know about intellisense, but I fail to activate something like autocomplete.
I know about Intellisense, but I'd like something that, for example, just
fills in <div></div> when I am writing <di + ENTER.

I know some other editors have that feature and I know it got disabled in VS
Code because of problems - can anyone elaborate and explain why?

------
avolcano
When I started using TypeScript a couple weeks ago I briefly tried out VS
Code, but the VIM plugin was really, really bad (worse than Sublime's was when
I used it a few years ago).

Now I'm on Atom, which has the best VIM support I've ever seen (haven't tried
evil-mode, though) and seems to support a similar feature set. They felt about
the same speed, too, on this 2013 Macbook Air.

Regardless, other than that quirk, I did really like VS Code, and I'm glad
there's more competition in the free editor space :)

~~~
hajile
Atom's vim support is OK, but nowhere near the best. Kate (KDE), IntelliJ, and
emacs EVIL all offer better support (others may, but I haven't used them). I
completely agree that Atom is way ahead of VS code in vim support.

I use Atom a lot, but I wish it had support for the goto column command
(pipe), proper search/replace support (it does weird things with the trailing
slash, deleting words at the end of lines, and macros.

------
fcoury
Just piggybacking on this thread to ask if there is a way to configure the
editor so it accepts the spread operator? I'm getting errors and my Google Fu
is failing me.

~~~
insin
This is mentioned in the release notes for 1.0.0 [1].

Their suggested solution is to disable built-in JavaScript validation entirely
and rely on ESLint instead.

> Some users want to use syntax constructs like the proposed ES7 Object
> Rest/Spread Properties. However, these are currently not supported by Salsa
> and are flagged as errors. For users who still want to use these ES7
> features, we have revived the javascript.validate.enable setting to disable
> all built-in syntax checking.

[1]
[https://code.visualstudio.com/Updates#_100-march-2016](https://code.visualstudio.com/Updates#_100-march-2016)

------
bobwaycott
Ah, yes. Yet another thread in which HN devolves into hyper-religious zealots
arguing over their favored denomination of code editor being the one true way.

------
annjose
I use VSCode for ReactNative projects and absolutely love its built-in
debugging capabilities. With its clean and vivid UI, it makes my code look
beautiful.

------
messel
First impressions: felt great, supported a ton of languages, has some very
powerful looking debug tools (for nodejs)

Anyone have any luck creating an extension with mac classic? Tried manually
adding the theme (following their doc) and no luck. Then created a msft
account to try and create a package to install it as an extension and couldn't
get past 401 on create-publisher.

Back to sublime for now, but I'll keep an eye on this one.

------
ashwinaj
Parsing/indexing on Ubuntu 14.04 with an NFS mounted drive with a mix of C++,
js and python is really slow.

[https://github.com/Microsoft/vscode/issues/5282](https://github.com/Microsoft/vscode/issues/5282)

I'm really hoping they look into this. I miss the intellisense from VS ever
since I moved full time to Linux development.

------
cdnsteve
Go, Ruby and Python support :)

------
kennell
Looks like they still haven't integrated the IntelliSense for Python features
from the "big" Visual Studio yet. Thats a Bummer.

~~~
shankun
We're working on it. :)

~~~
SiVal
Thank you!

------
doodpants
Version 1.0 seems to no longer support syntax highlighting for C# files. Why
would they do this? Or am I the only one seeing this?

~~~
elisee
They moved the C# support into an extension in the previous version, you just
need to install.
[https://code.visualstudio.com/Docs/languages/csharp](https://code.visualstudio.com/Docs/languages/csharp)

~~~
doodpants
Ah, thanks.

------
astannard
I find Visual Studio Code much better with plugins than Atom. Atom died after
installing the Nuclide plugin suite and would not work until I uninstalled
those plugins. Code on the other hand runs plugins in a separate thread
meaning it does not tend to dies so easily. VS Code rocks!

------
zdam
Today I used VSCode to write a slack bot in NodeJS.

The editor experience was smooth and fast, with fast intellisense.

I had NodeJS debugging working after 5 minutes reading a VSCode NodeJS page on
the VSCode site and clicking a couple of buttons in the editor.

I had a very good initial experience and will use again.

------
0xmohit
This is not nice --
[https://github.com/Microsoft/vscode/issues/5275](https://github.com/Microsoft/vscode/issues/5275)

~~~
toffeklang
It's now an optional install:

[https://code.visualstudio.com/updates/vFebruary#_languages-c...](https://code.visualstudio.com/updates/vFebruary#_languages-c35)

~~~
0xmohit
The link says: "or if you already have a project with C# files, VS Code will
prompt you to install the extension as soon as you open a C# file.". As a
matter of fact, it doesn't.

~~~
insulanian
> As a matter of fact, it doesn't.

Actually it does. I just opened one C# file and got that prompt to install C#
extension, after which everything was back to normal.

------
dopeboy
I made the switch to linux in 2005. There's always been two tools I've sorely
missed since that transition: excel and visual studio. Glad to see the latter
finally come.

~~~
eugeneionesco
There's very little connection between Visual Studio and Visual Studio code...

~~~
insulanian
In the context of 80/20 rule, they're pretty comparable.

------
santaclaus
I'm surprised to see a LaTeX plugin maintained by Microsoft in VS Code. Seems
a bit niche for first party support from Microsoft but I'm totes down!

------
piyush_soni
Anyone knows how can I install it on Linux (Red Hat) when I don't have admin
privileges? Any portable version I can just unzip and use?

------
aksx
I remember them announcing that they'll get rid of the coreclr dependency for
debugging C++, does anyone know if that is the case?

------
eiopa
VSCode is so good.

I do wish it had a global symbol search, similar to Sublime's (cmd+shift+r).
It's indispensable for code navigation.

------
rcheu
Played around a little, definitely feels better than Atom, but lack of good
emacs mode will keep me from using it for now.

------
paulfitz
For people like me trying out the .deb on linux: the executable to run is
(somewhat cheekily) "code"

------
thejaredhooper
you still can't split working windows vertically... which will drive me nuts
with my vertical monitor!

------
jessegreathouse
I can't find the option to open a terminal in the editor. Am I missing
something? Needs a terminal pane.

~~~
jhasse
You can run commands via the task runner.

If you need a real terminal - why not simply open one and split it next to
Code using your window manager?

~~~
jessegreathouse
Why not simply add a terminal pane to the editor so I don't need to?

~~~
jhasse
Because most people have no need for a terminal panel, so that's a feature
probably better suited for an extension.

------
vbit
Having tried it briefly, looked much better than Atom!

I would use it at work if I could turn off the phone home feature.

~~~
insulanian
> I would use it at work if I could turn off the phone home feature.

You can: [https://code.visualstudio.com/docs/supporting/faq#_how-to-
di...](https://code.visualstudio.com/docs/supporting/faq#_how-to-disable-
crash-reporting)

~~~
vbit
Very cool, thanks!

------
intrasight
Probably a good option for newbies, but anyone that's been coding for any
length of time will already have too much muscle memory to warrant a switch.
For me it's Emacs for editing and Visual Studio Pro for "project
administration" and in the rare situation, interactive debugging. I've not yet
made the leap to OmniSharp, but that's what is next.

------
sashmaaan
Is there a way to code and debug VB.Net-Code? Can´t find anything about it...

------
PlzSnow
Download page says required MacOS 10.10, but working fine on 10.9 here.

------
kahwooi
I use Visual Studio Code writing nodejs application. Love it.

------
dethswatch
Well we know what happens to vStudio and WPF now, don't we?

~~~
Aleman360
UWP has the latest version of XAML, implemented natively this time and with a
faster rendering backend. WPF lives on in spirit.

~~~
Rayearth
Even WinForms is still around somehow, though in a "cannot be killed" legacy
Form as opposed to WPF having a direct descendant in UWP.

Silverlight, though...

~~~
Aleman360
Silverlight is actually a descendant of WPF.

WPF > Silverlight > UWP

All your skills are transferable.

------
sureshn
For web development, java scripting and rails dev I find Brackets to be the
best ([http://brackets.io](http://brackets.io) ) , Its super easy to setup and
much better than VS Code 1.0

------
ssutch3
Does the mac launcher work if you primarily use python 3 now?

~~~
joaomoreno
Yes it does! Sorry for that :)

[https://github.com/Microsoft/vscode/issues/3790](https://github.com/Microsoft/vscode/issues/3790)

------
itomato
What is a 'Folder' and why do I want one?

------
Yuioup
Visual Studio Code is my successor to vim.

~~~
typon
The successor to vim is an updated version of vim ;)

------
drudru11
They finally gave column selection. Nice!

------
maxxxxx
What's so exciting about this? As far as I can tell it's just a pretty basic
editor. Is there anything innovative in it?

~~~
maxxxxx
Why the downvotes? Am I missing something here?

~~~
allannienhuis
I didn't downvote, but you can easily answer your question about what's
interesting/exciting about it by simply reading the other comments here. It's
pretty clear this scratches the itches of more than a few devs.

~~~
maxxxxx
I read the comments, have tried it out and concluded it's just an editor :-).
Evidently other people came to different conclusions.

~~~
insulanian
I wouldn't call it _just_ an editor, but rather a development tool which is
context aware and provides a lot of info about the codebase you're working on,
plus helps with the excellent IntelliSense / code completion.

You should take a closer look at it's features.

~~~
maxxxxx
Maybe I am just a little spoiled by using Visual Studio, PHPStorm or Netbeans.
They all have these features.

------
accbcc
why the shortcut(ctrl+',', ctrl+shift+f,...) not work in visual studio code?

------
codecamper
has anyone tried refactoring support? As good as Jetbrains?

------
awinter-py
I still have the CD-ROM from visual C++ 6.0, is that better than this?
(service pack 1)

------
miguelrochefort
I'm a bit confused by people's praise of VS Code. Are people really writing
software with anything less featured than that?

As someone who uses Visual Studio for everything, I have a hard time
understanding how people can get anything done in Atom/Sublime/Notepad++/etc.

~~~
insulanian
> As someone who uses Visual Studio for everything...

This is a classical hammer/nail example. Big red sign to me. I'm a long time
Visual Studio user, and that what you are saying is exactly the problem I see
in MS-based developer circles.

Visual Studio is not appropriate for everything. As a matter of fact I don't
use it at all for SPA development anymore, but just for server side stuff.

However, to give you few arguments:

1\. VS Code and Sublime work on Linux/OSX/Windows and I do work on all three
of those. Having the same tool is a great gain here.

2\. Editing capabilities of VSCode and Sublime are definitely superior to
Visual Studio, to the point that I find myself copying pieces of code from
Visual Studio to Sublime, editing it and pasting back to Visual Studio.

3\. Speed is not comparable. Visual Studio has become a bloated beast.
Sometimes it takes a minute to start it, and then you enjoy busy freeze times
whenever you push it just a bit harder than it likes.

All in all, I find my self being much more productive when _not_ using Visual
Studio for anything except pure .NET development.

------
joeld42
Isn't this based on Atom (or at least similar design)? It really makes me sad
that people are making editors with so many features and nice things, but
ignoring the fundamentals like latency.

[https://pavelfatin.com/typing-with-pleasure/](https://pavelfatin.com/typing-
with-pleasure/)

I'm eagerly awaiting a mac version of 4coder
([http://www.4coder.net/](http://www.4coder.net/)).

~~~
skrebbel
Did you actually try it?

~~~
joeld42
That's a fair point, I tried Atom and it felt laggy but I haven't tried this
one yet.

~~~
krautsourced
You should. It's really quite different (and starts up faster and has, at
least on my machines) barely any lag.

------
earthnail
I think VSCode is amazing - if only I could change the colour of the blue
status bar. I find it highly distracting. There's a Github issue about it,
with MS saying that they may add more general customisation support in the
future, but it doesn't seem like there's a short term solution.

I know it seems like such a minor thing, but I can't have that attention
seeker on my screen. Which is a bummer, because I think IntelliSense and its
Git integration are clear benefits over Sublime Text. And apart from this
issue, I really, really like the UI.

------
zxcvcxz
Still no CLI mode for editing text. Vim has had this for years. How am I
supposed to integrate this behemoth into my work flow if I can't even run it
in a terminal?

It's just too clunky for my taste.

It's also hilarious that Atom gets shat on for data collection when no one
cares that VS does it too. Microsoft can do no wrong, only OSS projects have
standards to live up to.

~~~
sghodas
You're asking for VS Code to be a completely different product. VS Code is a
GUI text editor like Sublime and Atom. There's no reason for it to run in a
terminal. Vim and Emacs are classical CLI based text editors. Are you asking
for an alternative to those?

~~~
zxcvcxz
First you say:

>completely different product

then call them both

>text editors

emacs and (g)vim have a gui mode.

~~~
sghodas
Yes, they're both text editors, but they're completely different classes of
text editors. MS Word is also a text editor, but it would be ridiculous to
fault it for not having a CLI. It's nice that Emacs and Vim have GUI modes,
but I doubt they're the primary way users use those editors. Emacs/Vim and VS
Code/Sublime/Atom fulfill different needs and preferences.

I'm curious about your answer to this: would you argue that MS should combine
Word and VS Code into one text editor?

~~~
gryph0n
FWIW, I recall a time when Word used have a CLI. My memory fades, but I think
it was either v4 or v5.

[https://en.wikipedia.org/wiki/Microsoft_Word#Origins_and_gro...](https://en.wikipedia.org/wiki/Microsoft_Word#Origins_and_growth)

The Internet Archive seems to have a version listed on the 'Abandonware'
listings.

[https://archive.org/details/msdos_microsoft_word5](https://archive.org/details/msdos_microsoft_word5)

