DEV Community

Cover image for Why I switched from VsCode to WebStorm

Why I switched from VsCode to WebStorm

Daniel Castro on July 03, 2021

I want to start saying that I'm not trying to claim that WebStorm is better than VsCode and it is because I think that someone can feel more comfor...
Collapse
 
nicolus profile image
Nicolus

The "free" argument really depends on where you work. In most western countries the 60€-35€ per year for Webstorm represents about an hour of work, so if you spend more than an hour per year configuring VScode plugins you already lost money by not buying webstorm. The enterprise license is a bit pricier, but if 120€ per year per developer is making any kind of difference to your employer you should already be looking for work elsewhere.

Also it's not opensource in the sense that you can't build webstorm from source directly, but most of the codebase (The IntelliJ platform and many plugins) is actually opensource : jetbrains.com/opensource/

If you're hobbyist or work from a country where 60€ a year is a significant part of your salary, it makes sense to favor a free and opensource alternative. If not you should really just use whatever is the best tool for you.

Collapse
 
ianwijma profile image
Ian Wijma

Also don't forget with VScode you send metrics to MS. Although you can turn it off. Your never sure how off it is.

Collapse
 
klvenky profile image
Venkatesh KL • Edited

I get your point. It's the classic "Nothing fits all" problem. There's no single thing that makes everybody happy. The choice of IDEs is like music. Someone likes hip-hop, someone likes jazz & someone like heavy-metal. There's no real point in saying someone is Right/Wrong when we're not standing in their shoes.
I've used Intellij IDEA & Webstorm both in the pro versions aug my previous employer. They had enough budget to get them all. We worked on just one front-end & one backend repositories for almost 2 years. There these work like a charm, keeping all the indexes up to date all the time. I'll just have to open the IDE once & I'm done with the initialisation. There I barely needed CLI tools. So that made me of sense.
However now, I use vscode as a Daily driver. I've put lot of effort has making it my own. The main reason being

  1. my employer doesn't have budget(sadly 😓)
  2. I've to open atleast 7+ projects everyday sometimes atleast 3 or 4 of them at the same time. So Webstorm might (not will) literally kill(🔥🔥🔥) my machine if I do so.
  3. I use lot of CLI tools(🖥️) due to the kind of work I do. So that's something which I can do irrespective of IDE. So that's an added bonus.

Due to all these points I use vscode. I do get some hearing issue at times, but I think I can live with it.

I've nothing against the #abcd editor/IDE fanboys, so just use whatever makes you happy & better

Collapse
 
siy profile image
Sergiy Yevtushenko

I've found VSCode much heavier than IntelliJ tools resource-vise.

Collapse
 
klvenky profile image
Venkatesh KL

That's really achievable, no pun just joking. Vscode is running on chrome(v8) which is hungry & would love resources at stake. Probably you need to checkout what all extensions are taking your resources because as a standalone build vscode is lean compared to Webstorm.
However if there are too many extensions which run at the same time then it can try to spawn multiple threads & can literally eat your resources like a hungry bear. So that's completely understandable. You might have to run your vscode in debug extensions mode to see which one is causing the trouble.
Otherwise just remove everything & install a plug-in only when you need.

Thread Thread
 
klvenky profile image
Venkatesh KL

The main reason for my advice to remove all extensions is simple. There were quite some extensions whose functionality has been built into vscode when compared to 3 years ago. So you might have to unlearn & learn again.
This is an example that I've found, path intellisense plugin maynot be required any more. Similarly organise imports. So you can make it leaner. I won't guarantee that it'll be always lean.
However if even that doesn't help, try going to something like lunar vim(neovim + vscode like functionality). Since the core is built outside electron it can help you a lot.
(TypeScript only!!!)
If that doesn't help much then you can check your project structure. If there are too many yarn workspaces built with TypeScript or something similar which requires the editor to do some heavy lifting for every small change done to the code then that will be a good place to start. I've recently seen a post about the same in dev. I'll try to share it if that might help.

Thread Thread
 
siy profile image
Sergiy Yevtushenko

Too much ceremony, as for me. One of the advantages of IntelliJ tools - that ceremony is already done for me and every new version is better and faster. For my purposes (I'm mostly writing Java code) VSCode has no advantages at all, because Idea Community Edition is free and open source.

Thread Thread
 
klvenky profile image
Venkatesh KL

There's no challenge for intellij IDEA when you're doing Java. I agree to that 200%.
Premium version has much better support for multiple frameworks like spring, hibernate etc

Thread Thread
 
siy profile image
Sergiy Yevtushenko

Fortunately I have no need to use garbage like spring or hibernate.

Thread Thread
 
klvenky profile image
Venkatesh KL

I don't like to call them garbage at least. Even though I don't use them in my day-to-day work work, I think they're great abstractions.
I do understand hibernate had some limitations with respect to query tuning (my assumption) as it doesn't control the creation of indexes & views (another assumption). But I wouldn't dare to call them garbage. They're not useful to do many people of they were.
Maybe hibernate is (SQLly) poorman's Mac Book Pro (a premium product is what I mean) into the database world.

Thread Thread
 
siy profile image
Sergiy Yevtushenko

I've used them for more than a decade, and I'm pretty sure they are both garbage. It's hard to express how much harm they did to whole Java ecosystem and still doing to developers and enterprises.

Hibernate is poor in every respect - it's poor in query optimization, poor in abstracting out DB access, poor in regard to writing queries, poor in regard to performance, etc. Anyone who needs performant, convenient to use and typesafe DB access should look for alternative. For example, JOOQ is good in every above-mentioned aspect - it has great performance, writing typesafe, arbitrarily complex queries is a breeze, optimization of queries is not different from doing that in plain SQL, etc.

Spring is not different to Hibernate - poorly designed and implemented, a lot of hidden "magic" which causes countless hard to nail down issues. Beside that it promotes bad practices like overuse of annotations and business-level exceptions.

Thread Thread
 
klvenky profile image
Venkatesh KL

You've a lot of fair points to think about. I've faced issues with hibernate earlier as I had to forcefully change the database schema as some query was not supported by it. I get you.
Probably you can create a post & share it with us so that lot of us can understand what can be improved in those systems & help us get better. Not sure if you've done that already. Please share it with us if it's already there.
I'm also against annotations of spring. I personally think that they cause issues in understanding the entire system. I like them old way of using XML to configure the entire beans loaded. But it's little hard for newbies to enter(was for me). I think brilliant documentation can help in that.
I support you fully with the annotations part.

Thread Thread
 
siy profile image
Sergiy Yevtushenko

Taking into account a huge wave of articles with promotion of Spring and Hibernate, article with critics will be considered a clickbaiting and hardly change situation. Nevertheless, if you're interested, just look around. Try Guice instead of Spring DI, JOOQ instead of Hibernate, Project Reactor instead of Spring Flux. There are a number of microframeworks for web services - Spark, Jooby, Rapidoid just to name few.

Thread Thread
 
klvenky profile image
Venkatesh KL

Sure. I'll give them a shot.
Thanks 👍

Collapse
 
stojakovic99 profile image
Nikola Stojaković

You can't really get the diagnostics WebStorm has with any VS Code plugin (like catching unused promises, code duplications etc). It also has much more powerful debugging tools in my opinion. There is a reason why JetBrains IDEs are used so much by the professionals in the industry.

 
dcastro profile image
Daniel Castro

You have a point.

This is my point:

  • TODO Comments: I have to install a plugin.
  • Auto Import: Does not work when I copy/paste code.
  • Git Integration: I don't like the interface that it shows when I have conflicts.
  • Debugger: I tried it once and I did not like it
  • Refactor: Every time that I renamed a variable in my code it opened a bunch of tabs with all the files where I was using my variable, just annoying.

Of course, is is a matter of preference. Thanks for sharing your opinion, it is great.

Thread Thread
 
remejuan profile image
Reme Le Hane • Edited

Have to agree, I too switched and while back, to IDEA, but that’s the big brother, I could just as easily have gotten away with the free community edition, I choose to pay for it, the paid one has a few useful benefits, honestly have not needed them much, but rather have them for that time I do…

It’s true that VSCode has the potential to be great, the amount of effort is too great and even then the bulk of the UI just sucks. I used it for many years, not knowing there was something exponentially better out there.

I honestly even tried to switch back, more of a verification than an actual desire to switch back and the clumsiness just frustrated me in minutes. You can’t go back from the ultimate tool to a tinker toy, just does not work.

I get paid enough to use proper tools, no need to save pennies on toys.

Collapse
 
msaaddev profile image
Saad Irfan

Hey! It's great that you are using WebStorm. Being a VSCode Power User, I thought I might share some resources for VSCode that can help you to achieve almost the same thing for free (and also other people who are looking to do the same thing but don't want to switch).

Todo Highlight
React Debugger

You can press CMD + Shift + F in VSCode, type in the name of the variable you want to rename. Type the new name and press Ctrl + CMD + Enter and it is going to rename every single instance for you.

replace

Also, I love using VSCode integrated source control. It is quite easy to use. You should check it out. You may like it

Collapse
 
dcastro profile image
Daniel Castro

Thank you for this!

Collapse
 
lachlanv profile image
lachlanv

Although I really love VS Code, lately I have been finding that it kind of suffers from an issue that extension-based applications tend to face. That is, getting decent functionality relies on finding and installing many plugins which are maintained separately, don't necessarily integrate together, have different levels of performance, and have their own issues. Some extensions are extremely useful and virtually flawless. Others which seem great turn out to suffer from issues that disrupt your workflow. An examplesl I have found is the Jest Test Explorer, which is unable to find tests unless that are at the root of your workspace.

What Webstorm does (at a price, to be fair) is provide an extremely capable IDE experience with no extensions necessary. You know it all works well and works together. The more capable I become as a developer, the more I find that VS Code definitely lacks in a lot of important areas.

I still love it though. I still find it so quick and useful for many use cases.

Collapse
 
dcastro profile image
Daniel Castro

You're right I'm sure that I can get all the things that WebStorm has with many plugins and configurations. However I prefer to have everything that I need after installing it :)

Collapse
 
andreidascalu profile image
Andrei Dascalu

Which you can achieve with vscode sync. It used to be a plugin but now I think it's part of the core. It the background it's done through github I think. So once you have your plugin set, next time you install vscode on a new machine (or wipe your current install) you'll have your setup downloaded and installed in seconds.

Thread Thread
 
dcastro profile image
Daniel Castro

I have not heard about that before.. it sounds great!

Collapse
 
adam_cyclones profile image
Adam Crockett 🌀

VSCode out of the box experience, plugins vary with quality, some anoy me so much, and most are not great. Webstorm does just work and it works well.

 
stojakovic99 profile image
Nikola Stojaković • Edited

Linter can't do that because linter is not doing static analysis of the code. Your source shows the usage for JS - I'm talking about industry in general, which includes C#, C++, Rust, Python and developers using many other languages along with Java developers. It's not about being in majority but about developer's preferences. I don't know where you got the idea that JetBrains IDEs are used so rare. And it's not even IDEs only - they have DataLore which is the best database management tool I've ever used and TeamCity which is amazing CI/CD tool.

Collapse
 
rangercoder99 profile image
RangerCoder99

You start up by saying that you needed to setup VSCode again on your new computer... Why not just use Settings Sync?! It would have taking your plugins and settings from your old computer and you would be up and going faster then you could download and install WebStorm 😁

Collapse
 
presidenten profile image
Johan Hernefeldt • Edited

I like webstorm as well, but usually end up using vscode since it starts up faster.

The webstorm diff tool is amazing though, just like you said. Resolving git conflicts couldnt be easier.

Also wanted to mention, that if you are having a problem with getting started with vscode on a new machine, checkout the extention:
marketplace.visualstudio.com/items...

There are similar plugins for sublime and atom as well.

There is also a native settings sync in vscode preview that you can use:
code.visualstudio.com/docs/editor/...

Collapse
 
vladi160 profile image
vladi160

In Storm everything is there and with configurations by default. Also, ftp/sftp, ssh, upload on save, good for PHP, auto import, format. With VScode sometimes there are bugs between the different extensions, the docs for them are different or unclear.

 
stojakovic99 profile image
Nikola Stojaković

Of course you can have, but it's always good to have additional checks which you can't get by default when using ESLint. I don't really care what's popular or not - I was replying to your comment because it seems like you don't understand why someone would use proprietary solution. There are good reasons for that, as I stated above.

Collapse
 
leadegroot profile image
Lea de Groot

One feature I am unsure is available in VsCode is the superlative project search, and search-replace that Storm offers.
Very excellent.
(I looked for a vscode plugin for it at one point, and failed to find it, so would be glad to hear there is one)
The Refactor tools are also awesome and reliable.

Collapse
 
elmuerte profile image
Michiel Hendriks

Editor/IDE wars will never die. Emacs4ever!

 
adam_cyclones profile image
Adam Crockett 🌀

I have used both professionally for years they are both great, its the person behind the keyboard that counts. Forget this debate it's not realy worth it.

Collapse
 
adam_cyclones profile image
Adam Crockett 🌀

Why I swapped to Vs code from Webstorm: I moved into a new house in Feb and Im trying to save money on subscriptions 😑... Otherwise I would still be using it

Collapse
 
dikamilo profile image
dikamilo

You can always buy 1-year subscription once and use WebStorm forever without future updates ;)

Collapse
 
dcastro profile image
Daniel Castro

Hahaha I hope you can go back to WebStorm!

Collapse
 
adam_cyclones profile image
Adam Crockett 🌀

The critical thinking to be thankful, I still have hands, and my eyes work enough to operate a computer 😂

Collapse
 
leob profile image
leob • Edited

Years ago I made this switch, but the other way around, and I never looked back - WebStorm isn't bad but VSCode feels so much more simple, snappy & lightweight, and most of the things that you mentioned can be achieved with a couple of plugins. For me WebStorm and its advantages (if any) didn't justify paying a license fee anymore.

Collapse
 
rihdusr profile image
Sudhir

Just to add, you can buy a annual license for WebStorm, which you can continue to use perpetually. Only catch is you won't get any further updates after the first year of purchase.

Collapse
 
kylereeman profile image
KyleReemaN

For me after weeks of comparison I choose Webstorm over Vscode because of the better database tools I didnt found anything near as good as with Jetbrains Integration with mysql/nosql

Collapse
 
eichgi profile image
Hiram

I have always prefered Jetbrains stuff over VS code or any other editor. Don't forget to install this plugin plugins.jetbrains.com/plugin/8575-...

Collapse
 
rangercoder99 profile image
RangerCoder99

Also see you're from Venezuela?! The USD in worth a hell lot more, how do you justifying spending that much money on a sub fee?!

Collapse
 
clorenzojimenez profile image
c-lorenzo-jimenez

Everybody seems to say that all IntelliJ products are Nirvana, but I have to see to believe. So, where can I go to see cases of use for each feature Webstorm has.

Collapse
 
vijaypushkin profile image
Vijay Pushkin • Edited

Sometimes, you forget how great some out of the box features are in Web Storm until you start using VS Code. Extension hunting is a big task in of itself in vs code

Collapse
 
rom858 profile image
Rom858

I dont like webstorm's themes aren pretty as vs code