I've been coding professonally for around 10 years ( plus 4 year degree ), did the vim thing for the first 7, switched to emacs for the next 2, and I finally gave up the ghost and switched to vscode this year.
I disagree completely with point #2. My emacs and vim environments were way more complicated to maintain with the same level of functionality. Coding without autocomplete is an exercise in frustration. The tools are out there, they are mature, use them. They make you a better coder.
VSCode has been so delightfully BORING and USABLE, I do not see myself going back. The VIM keybindings have been good enough.
However, I HAVE been eyeing the intellij products... if a FREE product is this good, and all my friends are raving about intellij... maybe there is something there.
I also have an OniVim2 license, but we will see if that ever becomes more than vaporware.
IntelliJ blows anything out of the water for at least Java/Scala development. I’ve used PyCharm a little bit but I don’t think it’s that much better than what’s available in vscode.
It may be silly, but the thing that pushed me away from RubyMine/Webstorm/etc was the lack of a Ctrl/Cmd +/- for changing font size. (I do still use DataGrip)
> I’ve used PyCharm a little bit but I don’t think it’s that much better than what’s available in vscode.
I have a hard time fathoming the kind of python development you would be doing that would lead you to say such a thing. Let's just take the built-in library, nothing fancy, no type signature checking required:
import re
re.search(r'[A', 'oops')
Using the VS Code 1.47.1 with ms-python.python v2020.6.91350, mypy, and their preview ms-python.vscode-python v2020.7.2 ("pylance") installed, it says nothing about that snippet
I hear a lot of "oh, I run linters, I don't need an IDE" but my experience with linters is that they are great at enforcing line length constraints but are useless for finding logic errors -- the primary purpose of using an IDE
>>> and all my friends are raving about intellij... maybe there is something there
I liked their software but I got estranged after they switched to their subscription model and their software badgered me so much on every update to exchange my perpetual license to a free year of their new model that I gave up switched IDEs.
Trying to turn vscode into an IDE is awful in my opinion. You have to use a lot of third-party extensions that not so rarely goes unmaintained or are security issues waiting to happen. It's the same agony I get from languages without a solid stdlib. And if you're really going to use MS tools you're better of with vscodium or whatever people are using these days that remove the "extra" features.
Can I ask which languages you work with? Working with python and HTML/CSS/JS I find that VSCode works almost perfectly out of the box and the few extensions you have to install are well maintained. But for more niche languages I could see there being an issue.
Like most of the mainstream ones at least on a basic level, some niche, I work for multiple companies. My last attempt was over a year ago when I tried the LSP people were raving about here. Once I started digging it was very ugly. It's not only basic support but each language has a lot of extra integration you can take for granted when using an IDE (not naming what I use to avoid brand wars). For vscode that becomes an extra package you have to consciously know it's there.
E.g. I get pissed off when basic features like toggling comments for markup/data interchange/build files doesn't work or produce the wrong format. With an IDE once the feature is implemented it's usually forever and you don't have to think about it again. With third-party packages it's the wild west.
Yes a lot of people don't have this issue and love vscode, but not me. I consider "third-party" extensions a huge liability.
I don't know what constitutes an IDE. All I expect is syntax highlighting and fast code navigation that understands enough of the source language to mostly find what I mean.
Other than that merely saving a file should be enough to hot-reload whatever toolchain you're using and doesn't much depend on editor integration.
> I am still a young 22 year old fresh out of school
At 43, spending as much time in architecture and infrastructure as a code editor, optimizing my editor barely moves the needle. If I was still spending 6-12 hours a day pounding the keys I'm sure I'd feel differently.
13 comments
[ 2.1 ms ] story [ 41.7 ms ] threadI disagree completely with point #2. My emacs and vim environments were way more complicated to maintain with the same level of functionality. Coding without autocomplete is an exercise in frustration. The tools are out there, they are mature, use them. They make you a better coder.
VSCode has been so delightfully BORING and USABLE, I do not see myself going back. The VIM keybindings have been good enough.
However, I HAVE been eyeing the intellij products... if a FREE product is this good, and all my friends are raving about intellij... maybe there is something there.
I also have an OniVim2 license, but we will see if that ever becomes more than vaporware.
I have a hard time fathoming the kind of python development you would be doing that would lead you to say such a thing. Let's just take the built-in library, nothing fancy, no type signature checking required:
Using the VS Code 1.47.1 with ms-python.python v2020.6.91350, mypy, and their preview ms-python.vscode-python v2020.7.2 ("pylance") installed, it says nothing about that snippetI hear a lot of "oh, I run linters, I don't need an IDE" but my experience with linters is that they are great at enforcing line length constraints but are useless for finding logic errors -- the primary purpose of using an IDE
I liked their software but I got estranged after they switched to their subscription model and their software badgered me so much on every update to exchange my perpetual license to a free year of their new model that I gave up switched IDEs.
E.g. I get pissed off when basic features like toggling comments for markup/data interchange/build files doesn't work or produce the wrong format. With an IDE once the feature is implemented it's usually forever and you don't have to think about it again. With third-party packages it's the wild west. Yes a lot of people don't have this issue and love vscode, but not me. I consider "third-party" extensions a huge liability.
Other than that merely saving a file should be enough to hot-reload whatever toolchain you're using and doesn't much depend on editor integration.
At 43, spending as much time in architecture and infrastructure as a code editor, optimizing my editor barely moves the needle. If I was still spending 6-12 hours a day pounding the keys I'm sure I'd feel differently.