What really is the problem with having all “the plugins installed”/features, nicely integrated, always compatible, reasonably configurable, maintained and with support vs inflating a minimal editor (framework, *) yourself, without all the advantages mentioned earlier.
Yes it may cost some cheap memory, vs costs of fixing plugins yourself.
My advice: Embrace it. Everything just works. Bloated in many cases is a non argument.
Disclaimer: long time bloated fan. Pycharm, django, monoliths. I rather spend time fixing things that matter.
That's... That's a huge stretch. I've been on an outdated version of pycharm for nearly a year now because they broke support for docker-compose in a pretty huge way. Moreover, I have yet to have a pycharm project where I didn't need to create my own docker override file.
Also cannot judge it because you gave no examples.
Maybe your project is an outlier?
Pycharm is still better though in the general language support department. However I feel that if you were already a VSCode user, VSCode has become good enough. Pycharm like other IntelliJ based IDEs has many other QoL features which I can't find anywhere else. But if you haven't been using them already I doubt they would seem to make a difference.
PyCharm autocompletion, autoimport, red underline errors and type hinting tools are also better than in VS Code.
VS Code Jupyter Notebook integration as better. PyCharm tends to do very badly with complex notebooks.
Using both 5+ years.
+ much better git support
Yes, the memory usage is higher, but spending like 50 € on an extra RAM stick to run the program I spend 70 % of my work (and often free) time in seems pretty reasonable.
The number of little 'intends' that make your life easier is just next level.
If you are using other IDEs of the intelliJ set you can use all the familiar refactory workflows etc.
As a long time pycharm user who recently switched to vscode, I have found pycharm's understanding of type annotations to be borderline broken.
def foo(value: Optional[str]) -> None:
print(value.replace("bar", "baz"))
mypy and vscode both point out this will fail when value is None, but my pycharm seems to think this is perfectly fine.Aside from that, PyCharm has a slightly better debugging interface but otherwise it’s quite close to VSCode for Python development. Sane version control is a bit aside though.
Going around code is faster. Global search is faster. Autocomplete is faster. Refactoring is faster.
Using the Java Language Server Protocol in VS Code was very painful even for very trivial Java Spring Boot projects.
Granted, their boot and first pass of project analysis is really slow.
That being said I still use VS Code very often (as a cool text editor, not as IDE), and I have no clue how VS Code boots and feels so snappy when most other Electron apps that I use feel like unresponsive slow garbage.
First thing to think about: Pycharm is an IDE, VSCode is an editor. You're going to bloat VSCode to get anywhere near the functionality of Pycharm.
I believe jetbrains products have made me a better developer as it should provide more context and intellisense to give you guidance away from code smells and bad practices, without becoming a crutch (moreso for statically typed languages).
Also, very fond of the keybindings on macos as they mirror chrome, os, and electron applications.