loading...

Why I Switched From Visual Studio Code To JetBrains WebStorm

Michael Hoffmann on February 15, 2019

As I started my first JavaScript project in 2015 I used JetBrains WebStorm which is an IDE (integrated development environment) for JavaScript deve... [Read Full]
markdown guide
 

Good comparison, although I wouldn't agree with you that VScode is not as well suited to large projects. I can do all the things you mentioned VScode lacks. (Eg running karma tests in IDE with wallabyJS)

To me it comes down to preference between "out of the box" functionality versus building your own feature set with plugins.

 

Refactoring, search/replace, widening selection, and regression testing, in jetbrains IDE (whether webstorm or pycharm etc) blow the doors off vs code. But you have to experience these features first-hand in jetbrains IDE because just comparing "on the page" feature for feature misses important differences that have huge impact on productivity.

The only real advantages of VS code are startup time, memory and price, ie I have yet to find a feature that I use daily and that is truly better than jetbrains product. Im guessing most of us start our GUI once every few weeks, so for quick edits and minimal UI I use vs code or even vi. Re price: Most can afford the cost of quality (ie a jetbrains IDE) but don't want to out of some strabge notion that free is best. Memory is the biggest problem for me jetbrains IDE, when GUI stays open for weeks, but after using vs code for 6 months I'm going back to pycharm as I'm just missing its Ferrari features too much, on a daily basis. I'll keep VS code for quick edits.

 

I have been using IDE's by JetBrains for many years now and in my opinion there is no contest.

 

Thanks for the write up! Here are my thoughts.

It isn’t fair to compare Webstorm and VSCode out of the box. Both use many extensions and you always install more in both (or uninstall some of the defaults). If the end result is similar functionality, then there is no practical difference.

The above notwithstanding, Webstorm is a far superior IDE than VSCode when it comes to coding for many reasons but there is one major one that you also mentioned: Refactoring.

VSCode doesn’t hold a candle to Webstorm when it comes to refactoring which is such a big and important part of coding. Its refactoring is the #1 reason why, despite spending a month using only VSCode to give it a fair shot, I came back to Webstorm.

One thing you didn’t mention that I think is one of, if not the biggest feature differentiator, the “Find/Replace In Files” modal. It was a GAME CHANGER when it was released a couple of years ago. I simply cannot live without it. I've never seen a tool like it. VSCode's "Find/Replace In Files" panel is significantly worse than Webstorm's previous Find/Replace in files panel, which was great in its own right.

In Webstorm, you can rename folders and files and they will update throughout the project. You can drag files and folders to new locations and your entire codebase will update every reference to them. There is an extension in VSCode that is supposed to do this, but it's buggy and doesn't work as expected. One of its worst bugs is it changes all of you node_modules imports into their full paths like "../../../node_modules/path/to/the-libs/file.js" in every affected file. It's unusable.

A lot of other nice features make coding in Webstorm a much better experience, as well. Unused function dimming, automatic import injection on paste, import autocomplete, automatic conversion of HTML class to React’s className on paste, and numerous small but useful features that make working in Webstorm a joy.

However, to be fair VSCode has some really great extensions that Webstorm does not.

The biggest feature is VS Live Share, which keeps getting better and better with each release. However, I can use it and still code in Webstorm. I host a Live Share session, and the changes automatically update in VSCode so the person on the other end sees those changes. It's not perfect because you can't take advantage of the "follow along" features, but it's still useful.

The Git extensions are simply better. Gitlens and Git History are full of great features that Webstorm does not have. I primarily use Git on the command line, though, so I don't miss these that much.

This might seem minor, but the customization that you can do to the application frame is much better than Webstorm. I tried installing the Webstorm Material Plugin and it made Webstorm run like molasses and it took a fair bit of googling to figure out how to completely uninstall it because it left all kinds of changes in its wake. Webstorm is stuck with the Darcula color frame. Not a deal breaker, but VSCode has a more cohesive look to its themes.

The clear winner is Webstorm. I just don’t see VSCode getting feature parity with some of Webstorm’s most important differentiators, and so I’m sticking with it. My only feature request is something like VS Live Share, but honestly, everyone else I know seems to use VSCode so there wouldn't be anyone to share with. #lonelywebstormer #worth

 

That's unbelievable. Those are just my thoughts when reading the article condensed in your comment. 😳
I would just add that Vim mode is, IMHO, better in VsCode. That's what makes me go back to it from time to time.

Search in sidebar is just unusable compared to Search window in WebStorm.

And themes... OMG. I don't know how many comments, tweets, or emails I wrote to JetBrains asking for better themes or, at least, a better API to build them. It seems super minor but you'll tend not to use something you don't like.

Onr last thing, I'd like to mention is code inference. It's probably just a personal preference but I like more VsCode pop ups VS. WebStorm ones. I find them easier to be readen. Could be its just code formatting, but params, function signatures, typescripts annotations are way better in VsCode.

Im conclusion I like better VsCode but use WebStorm for Search and Refactoring featutes.

 

Great comment! Although I enjoy using Webstorms's Git menu wayyyyyyy more than that of VSCode's extensions.

 

Yeah, I primarily use git on the command line so I’m not exactly the best judge. I do like the inline blame vs the annotation bar in Webstorm, but no biggie.

 

Update-imports-on-move and find-and replace-in-files work great out of the box for me.
When did you try Code?

 

The Update Imports On Move extension only works properly if you use TypeScript and even then still has bugs.

Have you used WebStorm’s Find In Files?

No, I hoped you'd tell us what's exciting about it.

Maybe I'll try out a EAP. Someday...

You just have to use it. I have never used anything like it. It’s next level. So powerful. I use it constantly. It’s just amazing.

 

You can change the color theme back to normal by changing Editor > Color Scheme to "Default"

 

Late to the party…

I agree with you. I mean, I love VSCode but it has this void that even extensions cannot fill.

Using my currently open Chrome to debug JS? Can't do it.
Autocompletions inside a debugging console? Can't do it.
Running phpunit tests with xdebug? Should be possible but after tinkering for more than an hour it still doesn't work.

All of these things work out of the box without any effort at all in PHPStorm.

What I do love about VSCode is the plugins that do work though. Easy development in React, Flutter, Laravel in one editor? Check.
It sometimes has better autocompletions because of the abundance of plugins.
It's really fast and typing feels snappy as well.

I wish I could use VSCode full time but I use these missing features all the time and I cannot live without them.

 

Hot take: If you need a full-blown IDE to refactor your application it probably has grown into such a monolith you should consider splitting the logic to smaller and more focused modules.

 

It can happen though. I'm pretty good at not letting it and enforcing a structure and sure that limits it. That said I've jumped into a number of projects that are so much spaghetti it isn't funny.

That's about the only saying grace of typescript, which I credit more than the ide. I still prefer vs code though.

 

And it happens because they either were not using Webstorm, or they simply choose to ignore the recommendations in the first place.

I may have misread, but are you saying that not using Webstorm could be the reason an app has grown into a monolith full of spaghetti code?

 

My thought exactly.

If you have so many dependencies that you cant refactor a part of your code then maybe there is something wrong with your architecture.

 

Sometimes we don't have the luxury of working on our own code I guess...

 

Majority of my professional career has involved working with someone other's code. Hasn't affected my editor of choice, though.

 

Paid by jetbrains to advetise their expensive product? I wouldn't spend a penny for an "IDE".

 

I used to spend 4-8 hours a month to configure or keep updated my VS Code / Atom. That's roughly $100 MONTHLY.

The WebStorm costs my employer $50 YEARLY. I don't waste that time any more.

WebStorm is CHEAPER than VS Code.

 

Honestly the time I spend configuring VS Code is time I spend having fun tinkering, so I'm not counting it as lost money. I don't really change my configuration unless I find new cool extensions here or I want to try a new color scheme.

In 20 years I configured and played with so many code editors and IDEs that I got very tired of all of them. Thus WebStorm is a good suit.

Now that you mention it, I've been using VSCode since it was released (Jesus how time goes by...), while before I was on Sublime Text 2 on Mac (definitely the best option back then) since 2008 or 2009. Just a little bit of Atom between 2014 and 2015. I don't remember really playing with extensions until Code made it so easy, I stuck with Monokai and default before.

Well, if someone works for you and having fun tinkering instead of coding, you might change your opinion on the day you pay extra 100 USD to the developer.
That is the point Vasyl is talking about, his employer pays 50 buck per year for a webstorm, and Vasyl is focused on his work, not on setting up vs code.
Personally I am using both phpstorm and vscode with high proficiency, I have set my VScode per my liking, I keep my settings on gist, and whenever I need to change dev machine, its a matter of minutes to get all my settings back.
So no wasting time, pure productivity.

I'm unsure of your point. I change my settings in my spare time after reading dev.to usually. I use the Settings Sync extension too.

In 2020 anyway, VSCode is quite complete anyway that I maybe even can do without them, and just change the font and the theme maybe. My point is that Code is my endgame and there's been 0 reasons to change editor in a long while now.

Frederico, you remind me myself but 10 years ago. 😀 Passionate!

My life circumstances have changed since. I have a family now, obligations, and about 0 minutes of spare time. Setting up my work environment is a work time activity for me (it wasn't before). I want to be paid for it now.

Also, you remind me the people who don't like Tailwind.css until they write a project using it.

Time flies. 😀 I miss my mostly free weekends and semi freedom. 😀

Yeah, I'm currently in an happy place now (and without kids). :P

 
 

Nope I am not sponsored and currently using the EAP version

 

Expensive? 89$ per year? You better get a better job lol! Would you use VSCode if it wasn't free? Jetbrains makes great software and you're probably working twice as hard as you need to if you never use an IDE.

 

To be fair, you should spend a few hundred extra dollars on your computer to enjoy a snappy JetBrains IDE experience, because you will need a few extra gigs of memory, fast SSD and i7 with lots of L3 cache to speed up code indexing...

You might need to invest every 2-3 years into your machine too keep it up with the hunger of your IDE (and the wasteful projects you might be working with...), so that cost amortizes quite well, IMHO...

I was paying for IntelliJ Ultimate monthly for 2 years but last year I've upgraded to the yearly All Pack version, since they offer substantial discounts for continuous subscribers and they do a really great job! It cost me 190 USD/year, which is ~16 USD/month. That's pretty reasonable for a tool I use daily for work...

 

Thanks for the post ! I, myself, also went for the JetBrains products, and never looked back. Though I work in PHPStorm, firstly because I started with Symfony, but now also for Express/ React applications because PHPStorm has integrated Database tab which can work with MySQL and PostgreSQL very well and with almost no configuration. It is quite good for basic tasks with tables.

 
 

if anyone can point to an actual comparable in vscode, i would love it. none of the sql extension even came close.

main reason i haven't fully switched to vscode

 

Pricing, startup time, extensions and open source, easy configuration are the reasons I use VS Code. But I like to try new tools that make job easier.

 

I pay for WebStorm (and PhpStorm) with a smile on my face. But I do see value in VSCode too.

As Steven Sacks mentioned, when it comes to refactoring a large application, WebStorm really shows its power.

I defend that everybody should use the tool that makes you more happy and productive, in my case it's WebStorm, but I recognize that for others don't, YMMV.

 

Had the quite the same experiences and thus switched to Webstorm. What convinced me most about Webstorm:

  • its awesome (imho much better-working compared to vs code) possibilities to do code navigation/inspection (i.e. 'go to declaration' or 'show usage' features)
  • Webstorm's quick search improved a lot the last few months and from current perspective it surpasses the vs code equivalent

Those two points represent major aspects of my dev process. As a result the editor switch to Webstorm also led to more fun and convenience during development for me.

 

Vscode is an editor;
WebStorm is an IDE;
You can’t compare them directly;
You can compare vscode vs sublime text for example;
or, maybe, visual studio 2017 with webstorm

 

This was exactly what I was thinking the whole read.

 

I think vscode is more of a hybrid because of how robust its plugin scene is. It's a defacto ide once you extend it enough. That's what makes it so good though. You can really pick and choose what you find important.

 

I am too lazy to read configuration options and search for good free extensions so I am switching back to an expensive ide that has everything preset for me because I am lazy that way /s

 

Really don't understand the flaming here. I like vscode a lot but y'all are taking this personally in such a silly way

 

I wouldn't call it flaming as in my daily work I use both of them. Just felt that while your article has it good points against vscode and for webstorm, it kinds of feels like a comparison that should not have been there in the first place. I understand where you are coming from, and that the other comments may me too harsh, personally it is just some naughty jab at the actual flaming comments. Sorry if you felt like I was flaming

just FYI but I didn't write the article. I'm just commenting on the story.

Oops I though you were op, wasn't really awake yesterday but well comment still stands

 

WebStorm comes helpful with a lot of small bits of intelligence where one would assume the work has to be done manually. Not only does it have a separate menu labeled Refactor, packed with all kinds of extractions, moving, etc. but it also watches your coding and helps you (like for example when working in Angular/TS) to keep the file name in sync with class name. Most of renaming jobs can be done without using global search/replace without turning your app crashing be it for a second.

But WebStorm has also a great set of code inspections, some of them simply amazing. One time I was using .scrollTo(leftPos, topPos) where topPos was passed using a variable called lastYPos. When the thing was refusing to work as expected, in my desperation I became interested in squiggles that appeared around the statement. WebStorm politely asked me whether I was sure passing lastYPos as leftPos was a good idea. It knew that Y could probably mean something vertical. Turned out, I inadvertently mixed the order (blame CSS conventions for that!) and WS got me covered.

For those who are not so fluent using Git in command line, WebStorm has a great UI, allowing you to select files that should be included in a commit. But not only files - you can also select individual changes through checkboxes! During rebase interactive that UI is just a time saver. You can view changes of each and every commit in a diff mode.

I really encourage everyone to at least give WS a spin.

 

Thanks for this post, a very well thought out evaluation of both sides I think. I often find myself pondering which app I'm going to use (almost monthly) for certain projects.

I feel it is a wonderful time to be a developer with so many tool options, we are afforded the opportunity to switch tools anytime one 'feels' better than another for particular scenarios.

 

I haven't used VSCode much at all, but for speed, I've found the IntelliJ products to feel quite a bit faster than VSCode on my MacBook.

IntelliJ is quite RAM-hungry though, I've got 16gb of RAM and IntelliJ chews through a good portion of that. If you are using a computer with less RAM, that might be the main cause for slowness you're seeing with WebStorm.

 

Nope. Macbook Pro 13", 8GB RAM, WebStorm flies like a bird, even for huge projects. VS Code is also there, front row on the dock, for quick hacks. IntelliJ-based IDEs have years of real-world knowledge behind their weight (because of IDEA and the Java ecosystem).

 

I think ppl struggle with 8GB (macOS) setups, because they have shit load of browser tabs, like whatsapp, gmail, github pages open, along with lots of electron apps, like slack, discord, telegram, gitter, notion and those "steal" a lot of memory from the IDE.

There are a lot of things which are loaded but not very actively used during coding, like GoogleDrive/Dropbox/Box, Evernote/Joplin, Mail, Skype. It's tedious a bit to stop them it worth it, because you also reduce distractions. Lot of ppl feel FOMO though because not being connected...

I've noticed that even my iTerm2 hogs 0.5-1GB... Considering to switch to sw.kovidgoyal.net/kitty/ because of that.

So while I agree that JetBrains IDEs might be a bit wasteful with memory, but so are all the other apps you use... Have you summed up ALL your browser processes' memory usage lately? You will be shocked. I'm battling that kind of waste with the github.com/tabwrangler/tabwrangler/ browser extension.

 

Even though I don't use WebStorm, I completely agree that JetBrains IDEs blow VS Code out of the water all the time. I use RubyMine on a day to day basis.

I once thought of switching to VS Code for Ruby development, mainly because it is free, and I wanted to see if I could cut on the license cost.

I truly found it unusable. I could not get proper code inspection to work, it would refuse to follow function definitions, it would not show me documentation, code completion sucked. I decided it was more trouble than it's worth. I am very happy paying JetBrains for a top of the line IDE, that does everything I need and more.

I do have to say, though, that the Elixir experience in VS Code is far better. I have yet to give it a proper try using IntelliJ and the Elixir plugin, so I can't make a recommendation here.

 

I wouldn't agree to all the points, but in generally from my point of view IDE is always better than just code editor; so in certainly I think WebStorm is a good choice against VS Code.
Thanks for this good comparation

 

IDEs tend to make developers dependent on them. So much so that after awhile people seem to forget how to do things and depend on the IDE to do it for them. I can't tell you how many times people have effed up our git repositories because they don't understand Git, but use it anyway with the IDE or GUI tool. Likewise, when you outsource things like testing, builds and debugging to the IDE, the moment you take it away people get lost and have no idea what to do.

Rise above. Focus on coding, not on letting the IDE do all the work for you. Having everything in one place is nice, but is it worth sacrificing visibility into your own project?

 

True, for unexperienced developers!

 

Your argument is based on the absence of an IDE, the problem is they got into a situation without firmiliar tools. I did what this post did and I can somehow still use a terminal 😂

 

I dislike IDEs because there is too much noise and stuff I don't really use. I like my coding environment clean and entirely understandable, as little noise as possible. I get that it's great to have some helpful tools catch those pesky useless methods... But I don't really like using classes so I don't need that, and everything else seems really just something that shines in a very big codebase while I prefer keeping stuff tidy and modular with functional programming and services. So this article does little to convince me to give it a try, but maybe I will just to have some fun. Actually speed is a big factor to me since I have many different projects around so while it's useless to you, that's a big plus for me - VSCode is even a little bit too slow for my tastes these days but I won't find something better and faster unless I'm willing to use Sublime Text as a side editor.

Perhaps I should thank you for letting me know about local history.

 

Well, I've been using Sublime Text as my main editor for many years and I'm pretty happy with it.
I don't really why I should use VS Code or even WebStorm for my coding projects.

 

Until you start using it, you don't know. It's like eating low-quality and junk food, it seems fine to you until you eat real good and organic good.

I had the same point of view before. For instance, I was using Geany and Sublime for PHP for several years (and I thought they were really handy...), until my CTO suggested us to move to PHPStorm, and now I can't life without it.

Still my case, I had even the same thought for Java IDE with Eclipse. I thought it was great until I moved IntelliJ! 🙃

 

I don't know! I like both, VS Code just captured me with extensions - which also exist for Sublime Text btw - and the fact that it's just free.

 

It's been almost 3 years I've been using VS Code (almost since its release) for both PHP and JavaScript projects but then I switched to PhpStorm I can definitely tell you that it is awesome. It has a slower launch time though.
VS Code is perfect when you don't need many tools or if you want to install them manually, but I rather have them already there so if I need them anytime there would be there for me.

 

JetBrain's background indexing is the biggest win for me.

VSCode seems to only see the code in currently open file. If you reference something from a different file, it has no idea what to make of it. This works fine when you import all the types you intend to use (a la typescript), but falls apart for pure js with JSDoc annotations which I prefer.

WebStorm has a daemon running in background that maintains knowledge base of all the symbols defined in entire codebase. This makes all the difference in the world if you like intellisense-style tooling.

 

Indexing is also one of the things which makes the typing experience very laggy and it can be really really annoying that you can't do anything responsively when a bigger reindexing job kicks in...

But it's a good trade-off most of the time!
You can also pause it and use the IDE just as a more traditional editor, while still having access to scope-selection expand/shrink (cmd-up/dn), refactoring (shift-f6, cmd-alt-v) and fuzzy search in many places in a snappy way...

 

Great post! I had IDE fatigue at one point switching from Sublime to Atom to WebStorm to VSCode. Webstorm worked great for me when I was developing an PHP application. However, the cost is always a factor hence why I'm sticking with VSCode for now. But your post gave me the impetus to consider WebStorm.

 

Webstorm def has some better refactoring tools and I think their intellisense in general is better but the thing that really keeps me using vscode besides speed is the fact that being open source and being plugin friendly and being written in web technologies it's an absolute joy to hack out customizations. I have a ridiculously ornate set of configuration files, extension settings and injected css and Javascript scripts that allow me to make it exactly what I want. I love it.

This is also the reason I like the hyper.js terminal emulator is because it's super hackable.

I'm also a designer turned developer so I'm not particularly good compared to what some people can do but that's very motivating to me. Nothing makes me want to learn something more than it being a tool I use daily. It's a little self serving maybe ha!

 

What have you hacked in it? And I don't mean just installing/configuring plugins for it. It eats a lot of memory for what it does and quite slow too...

But if you like hacking, maybe you can consider sw.kovidgoyal.net/kitty/index.html too ;)

 

Basically using a code injection plugin you can inject your own custom css and javascript to manipulate or change the UI in ways that no plugins or default configs allow for. I'm currently just using it to style things in ways which the current theme tokens don't allow for, but eventually I'd like to explore actually directly manipulating things with javascript. Though at that point I should probably just fork vscode itself or perhaps write a plugin for it. Though I believe plugins are limited to what the extension API allows for and I don't think code injection has that limitation. Not sure.

You can see if you'd like here: github.com/jcklpe/Configs/tree/mas...

I'm still learning a lot of dev stuff and I'd like to package up the changes I make into their own extension eventually once I have time.

 

Google showed me this when I asked for "vscode vs intellij". For some reason (I blame the hype), I was wondering how vscode stacked up against the IDEA Ultimate I've been using for half a decade.

Thank you for saving me the trouble ♥️

 

Very good comparison.

In the end there is no winner, they are different tools for different jobs.

Like every craftsman with a toolbox full of tools; I use both and Notepad++ and even open up Notepad occasionally.

Hiring a developer with only one tool is like hiring a painter with only one arm.

 

I've used JetBrain products (IntelliJ and WebStorm) for many years, recently I've given VSCode a good try but it just doesn't match up to the convenience of having a full IDE.

Sure you can do the same tasks with plugins and playing around with the settings.json but its fiddly and not as intuitive (I think)

 

I'm only a enthusiast in programming and have few experience in big and/or big projects. However, I keep studying some concepts of front and back-end, in general looking to java, android and web environments.

I think is good for you all got noticed about someone with this level. And I say: WebStorm (and any other jetbrains products) are always my first choice! I tried VS Code and others various tools and always back to JB once my productivity is heavily affected by the main tool I'm using.

I think, JB tools are the best to improve speed of coding!

 

I love WS it feels just right for my needs. However, I also use VS Code, specially for smaller projects, and I’m getting the best of both worlds.

Definitely there’s value in both apps. I pay my WS license because I really like the product. I use VS Code because I also really like the product!

 

@Michale Hoffman, have you tried material-theme.com/ ?
I love JetBrains products and I use them.
Thanks for the cool post.

 

Yes, I mention it in the section below the conclusion ;-)

 

When I was working for an automotive company some of us were using VSCode as our main tool for developing the project. I didn't had a any problems with it, except with some git related extensions that weren't working properly because of the large number of commits we had.

 

So true, man. People who prefer to use VS Code don't know what they are missing. I have written code on Notepad++, Sublime Text, Atom, VS Code, VS Studio, PHPStorm and WebStorm. Jetbrains IDE blows all of them out of the water. And no, I am not paid by Jetbrains for saying this, nor I work for them. Jetbrains's Find All and Replace All in Project alone beats all other editors. It's so intuitive and comfortable to use. I can make change to existing projects easily, and with much smaller risk of messing something up. The refactoring works wonder too, there's so many customization on it to suit your needs and coding style.

 

Your statement about not being able to mark floating promises is untrue. If you set the tslint rule no-floating-promises and use the the Microsoft official TSLint extension, these can be labeled.

 

Yes, but you, therefore, enable type checking which did not always work for me. But maybe it improved meanwhile.

Nevertheless, it is nice to have in the IDE without any additional configuration

 

I'm aware this is a year old by now and I'm not sure if what I'm going to say was relevant back then. I don't personally remember what I used / if i encountered these issues. Just here to offer my opinion on these things as a proud vscode user and a webstorm licence holder (tho i've never used it)

VS Code does not detect unused public methods

Funny enough, your example clearly proves you wrong as Vscode displays ~"is declared but never read"

Unused Promises

TSLint: no-floating-promises

GIT

Gitlens, git history + vscode's out of the box functionality is more than enough. If you need more complex functions the terminal is your best friend. The second paragraph is a 'I don't want to customize & configure my enviroment and prefer someone else to do it for me' statement. To each their own, I prefer to have full control of my enviroment. Be it pump it full of third party features or strip it down to barebones. Meanwhile i know a lot of people who don't enjoy customizing everything and just wanna pick something up and work. Different kinds of tools for different kinds of personalities. However with vscode, 'configuration' is 1. search a keyword 2. check if downloads is in the millions, 3. install 4. code.

Debugging

I cant speak here as most of my debugging is done when writing nodejs apps and vscode works perfectly fine for that. Yes, you have to generate a config, but again more power to the power user. As far as debugging react, I'm perfectly fine using firefox's devtools / chrome's. But that probably comes down to the bundling tooling you're using, with webpack in dev mode you've got access to the linked ts files. IDK how angular works in that regard.

Angular CLI Integration

no clue, not an angular dev

Accessibility Inspections For HTML

Ummm.... fuck Accessibility? I generally work on software for other companies, so my experience is skewed towards having a clearly defined target user and being that most of my clients are in the aerospace and defence field that basically eliminates most disabilities you'd normally want to support. One easy example is blind people because aint no blind flight instructor gonna be using my sim web control panel.

Code Refactoring

Theres an extension for extraction. Renaming is out of the box.

Price

For anyone interested in getting a webstorm license and is a student, you can apply for the github student package.

I'd like to add some other great benefits of vscode:

  • Live Share: which makes remote/smartworking with colleagues a great experience. (live share also has other optional extensions for e.g. voice chat or whiteboarding)

  • Remote SSH: Essentially do what you normally would do with vim, with vscode. Same with Remote Containers.

Recently I also installed Peacock which lets you change the frame color. I use it to easily differentiate my vscode windows based on project.

 

Just to counter a bit. I don't like it use angular. I find the amount of boilerplate I have to write unreasonable for the functionality and the overhead to be too big. I tend to favor react as it lets me keep my controls, logic and workflow simpler. Beyond this I am a very big proponent of discoverable feature based file structure. I've worked in a few very large applications where each developer could choose their own tools and keeping the structure in tact helped more than an ide over vs code.

As you mention there are extensions that take care of adding most of the features you mention. A lot of it can even be done with linting in a precommit hook.

 

VS Code does not detect unused public methods

Aint the whole point of public method is that it can also be used by third-party code.
How can an IDE predict that this method might be used by something eventually?

 

Both are great, but recently there are many extensions for vscode not exists for webstorm, and vise versa many features at webstorm are not exists at vscode. I hope that webstorm lighter and have all missed extensions. I really love it, but see my self using vscode because of missed extensions. vscode is growing for sure because it is free and light weight on PCs.

 

I've been saying this for years, the git integration is the num 1 feature. Webstorm is like the Mac of IDEAs.

VScode is just plugin and config hell.

 

At work I use WebStorm / other jetbrains IDEs, best for teams.
At home I don't have a lisence, so for my personal projects it's vscode :)
Also I find WebStorm to crash quite a bit, while never the case with vscode.

 

Webstorm has to be one of the ugliest editors I've used. Bloated menus, poor UX, to much stuff I just don't care about. I like editors that give me a base and allow me to configure what I need. Spent way to much time trying to get themes such as Darcula working only to constantly find unreadable text.

I also think open source vs closed source is important.

 

VS Code can only debug web application on Chrome by using the Debugger For Chrome extension which you then need to configure for your application.

WTF? VSCode has a great integrated debugger!
code.visualstudio.com/docs/editor/...

The whole comparison is a series of uneducated conclusions about VSCode

 

i switched from jetbrains products and never looked back, i started with buying phpstorm and it worked for around a year, then there was an ugly bug introduced which almost 4 years later hasnt even been attempted to be resolved, the devs just blame the users. the stupid ide on linux always tries to index the entire drive, last time i attempted it ~ 6 months ago i just let it try to index came back from work waited and still 15 hours later it was still retarded, uninstall update to latest version, and still there, theres literally thousands of comments on this bug. the bottom line is that company makes so much money they arent interested in fixing the core problems with phpstorm one of which is regex replacing,. which is so slow it crashes the ide due to the java vm, apparantly it has some probe with large regexs.

 

This could be because the article is a year old but, most of the "out of the box" features mentioned about WebStorm are actually plugins and most are available as VS Code extensions or even out of the box.

There are extensions for integrated Karma/Mocha/Jasmine/etc tests; Git integration, including diffs, merges, reviews, push and merge requests; Angular CLI and Angular Console integration; accessibility audits for HTML.

Also, out of the box, VS Code dims unreachable and unused code; allows for code refactoring (plus extensions); and lets you debug any Javascript application from within VS Code with breakpoints, watchers, and a bunch of extras (plus extensions for time travel, remote debugging, Edge and Chrome debugging, and lots more).

Not to mention that you can easily write your own extensions if you are lacking any functionality. This in itself, plus monthly official releases, means VS Code will eventually overpower WebStorm in every respect.

In short, the only thing that WebStorm has on VS Code is some refactoring/dead code functionalities and both could be tackled with extensions.

 

My 2 cents: I have been using VSCode since 2017 and currently VSCode beats IntelliJ out of the box at everything related to JS development. (maybe the debugger is not that nice).

I tried IntelliJ again with a large multi-workspace project and indexing takes ages, after the indexing is complete it doesn't find paths in scss, in jsx files, autocomplete is random for props, I know you can go and set everything manually and then IntelliJ is a wonderful IDE for a lot of money. But VSCode on the same huge project works out of the box and is slower by 0.2 seconds when navigating through a react codebase.

Prettier and linting support is uncomparable, just install recommended plugins in vscode and everything just works, in IntelliJ it's a pain to set up for everyone.

VSCode also has support for WSL on Windows, which is incredibly useful when you have a codebase that requires a unix environment to run as expected.

I don't try to make an Ad for VSCode, but people with a lot of experience say that it's the best and that VSCode is bullshit and that it's a toy, then I try IntelliJ, fiddle with it for 2 days, still doesn't work as VSCode works out of the box just for that nice search window when you press shift shift.

 

One thing I'm surprised no one has mentioned is that Webstorm's support for prettier not as good as Vscode's.

 

I totally agree. Prettier in VC Code works just out of the box. But in WebStorm you need to configure FileWatchers which is not very nice.

 

Going from visual studio to VS code is akin to going from a word processor to a rock and chisel. It is nothing but an overrated notepad

 

Is WebStorm an IDE or am I wrong?

Vscode is just an editor...

 

Once you include plugins for debug and Git it is an IDE so the comparison is entirely fair. Refactoring, search/replace in jetbrains IDE (whether webstorm or pycharm etc), widening selection, and regression testing blow the doors off vs code. But you won't understand until you experience it first-hand with an open mind because it is almost possible to foresee how small differences in GUI can have such incredible impact. The only real advantage of VS code is startup time and price.

 

Yes, I mention that in my conclusion

 

VScode is just a code editor, it has a long way to be a IDE.
But we may not need a IDE in some light useages.
They are different, i like both of them all.

 

Nice post. I'm actually about testing out Webstorm's features cos I've been using VScode for years and I'm kinda addicted to it.

 

VSCode is much faster and highly customizable which is why I love it.

 

Everything you said is possible in vs code.

 
 

I can use vscode to see unused variables and methods using typescript just fine.

 

Great, but I never use Typescript, so it's useless for me.

 
 

For me, ES6 and TypeScript work just fine. as of (1.31.1) in VSCode. I'm not sure about ES5, but ES6+ works. I have used both VSCode and Webstorm, as well as others, and I always encourage people to keep using different ones in your day-to-day work, even if you have a preference. Because VSCode will not always be king, Webstorm will not always be king. I simply prefer VSCode over Webstorm for now mostly due to the weight of each application. VSCode is much lighter and takes up far fewer system resources. That's simply my $0.02

 

I think this is grossly outdated today.

 

Using VS Code lets me spend $80CAD/yr on Droplets and Dynos. :D

 

I'm copying my own comment from above.


I used to spend 4-8 hours a month to configure or keep updated my VS Code / Atom. That's roughly $100 MONTHLY.

The WebStorm costs my employer $50 YEARLY. I don't waste that time any more.

WebStorm is CHEAPER than VS Code.

 

I am slowly but surely making the transition myself, but oddly enough the steepest learning curve I have to do with is transitioning to new shortcut keys

 

I prefer to use Codelobster IDE for Angular development - codelobster.com/angularjs.html

 

I went the other way around, from JetBrains IDEs to VSCode. Never looked back!

 

It would be nice if WebStorm supported Airbnb's linting as a preset...

 

My WebStorm supports. No any configuration/plugins needed. It just pick up my project's ESLint settings. Automatically.

 
 

Tldr; because your company bought a license

 

Would you use an inferior product just because the company bought a license?
The article doesn't prove it's worth the price, but it would suggest it's worth at least something.

 

I would try it...which is what I think kicked off the trying it, in the authors case.

Yeah, I agree with the trying.
Just arguing that a sensible person wouldn't keep using it just based on that.

 

I'm copying my own comment from above. It's exactly about worth part.


I used to spend 4-8 hours a month to configure or keep updated my VS Code / Atom. That's roughly $100 MONTHLY.

The WebStorm costs my employer $50 YEARLY. I don't waste that time any more.

WebStorm is CHEAPER than VS Code.

 

I was just being a little snarky about the post's title. ;) I definitely appreciate people trying things and writing about them!

 

In my first web project, the company bought a license. In my current project, I have no license and use the EAP version.

code of conduct - report abuse