3 ms·
PyCharm has saved me from so many stupid mistakes that would easily waste 15 minutes if I hadn't noticed them. I don't know how you could write high level code
by RockRobotRock 3y ago
PyCharm has saved me from so many stupid mistakes that would easily waste 15 minutes if I hadn't noticed them. I don't know how you could write high level code without an IDE.
- zer00eyz 3y agoI use jet brains products, and I spend a fair bit of time in all sorts of flavors and setups in vim. Neovim will let you configure your env to provide 90 percent of what an ide will do. The 10 percent isnt "missing" its just going to be very different... See how the other half lives and you might find some features you like and bring back home. You might find yourself running vim in pycharm ;)
- jiggawatts 3y agoYou really can’t even begin to approach what the IntelliJ tools can do with a mere text editor. You’ll also spend more time tinkering with your Vim plugins than actually coding.
- xcv123 3y agoYep. With IntelliJ you just install the ideavim editor plugin with default settings then get to work. https://github.com/JetBrains/ideavim https://github.com/JetBrains/ideavim Or you can waste months pissing around with Vim plugins to create a poor mans IDE out of sticks and stones like a caveman.
- Nullabillity 3y agoIdeaVim has the usual Vim emulation problem. It does an okay job emulating baseline Vim, but it doesn't emulate your Vim setup, nor does it even try to integrate the rest of IntelliJ in a way that feels native (compared to something like evil-mode). It's clearly not used by either its developers or the people who keep recommending it. It's the Microsoft POSIX Subsystem of text editors.
- xcv123 3y agoMy IdeaVim setup is the default and most people just use the default. Obsessing over custom weird Vim configs is for junior devs who enjoy wasting time. I have been using it professionally for 10 years and it integrates well enough. All of the IDE shortcuts are available. No issues.
- Bjartr 3y ago> It's clearly not used by either its developers or the people who keep recommending it. Or, you know, different people have different preferences and are perfectly satisfied with what the emulation does provide.
- jeroenhd 3y agoNeovim can be configured to practically become an IDE, complete with code analysis, refactoring tools, and AI assistants. It'll also become as slow as an IDE, though. I think it's the Arch Linux (or maybe the Gentoo) of IDEs, where you have to know and configure every subcomponent of your IDE yourself. I have tweaked my Neovim for small code snippets where a full IDE is overkill, but I can't be bothered to turn it into a full IDE like some others do.
- pvorb 3y agoAnd that's the USP of JetBrains IDEs. You don't have to spend days to configure your editor/IDE until it works for you. Just pick the right flavor for your favorite language and start working on your actual code.
- bb88 3y agoIn honesty, I love pycharm today. 8 years or so ago I didn't so much. Also, goland isn't terrible either. It's really the only way to write go beyond say 1000 lines of code.
- deleted 3y ago[deleted]
- zer00eyz 3y agoAs I said I go back and forth between jetbrains products and vim and neovim. As someone who crosses those boundaries I can tell you that you're dead wrong. Im happy to sit down and write code in something like Goland. Im happy to pick pycharm to work on a LARGE python code base. But the moment that I need to deal with a JS spa, legacy code (python, ruby) and go im probably NOT going to pick intelij. Sorry but IntelliJ is just as much plugin nonsense anything else and sometimes your going to go backwards just to get things working: https://youtrack.jetbrains.com/issue/PY-70729/?_ga=2.164368127.1963206361.1712359015-7907449.1712359015 https://youtrack.jetbrains.com/issue/PY-70729/?_ga=2.1643681... "tinkering with your vim plugins" is "tinkering with your Intellij plugins"... both involve search engines and RTFM, the former has more choice and a bit more downloading but the transition in either direction would amount to the same loss in productivity. And I have played with VS code as well (and it too has its uses). The only editor I dont like, is Emacs, and not because it is BAD but because you will spend more time tinkering with it than working.
- xcv123 3y ago> "tinkering with your vim plugins" is "tinkering with your Intellij plugins"... both involve search engines and RTFM, the former has more choice and a bit more downloading but the transition in either direction would amount to the same loss in productivity. The OOTB setup for IntelliJ just works. The plugin with the bug you linked to is the "Rainbow Brackets" plugin. That is created by a third party and it is a useless toy plugin, not required for professional development. https://plugins.jetbrains.com/plugin/10080-rainbow-brackets https://plugins.jetbrains.com/plugin/10080-rainbow-brackets Why would you be pissing around with that "rainbow brackets" nonsense instead of getting your work done with the OOTB setup that just works? Pointless and irrelevant.
- RockRobotRock 3y agoI might try that, thank you. Would love the best of both worlds
- sva_ 3y agoI wonder what type of errors that are? My last experience with PyCharm was on an older 2014 ThinkPad on which it lagged too much, so I abandoned it. Could probably run it much better with my current laptop... I just use VSCode for most things, or nvim if I want to edit something very specific that doesn't require much navigation between files. I'm not a huge fan of my editor annoying me with stuff all the time, but I'm wondering if I'm missing out.
- xcv123 3y ago> I wonder what type of errors that are? The type of errors are type checking errors.
- mdaniel 3y agoFun fact, not only that, since their support for "embedded languages" is second to none: import re if re.match(r'[aoeui', sys.argv[1]): print('ok!') is a red error in the ide because it understands regex syntax, and similar if it can either prove what the syntax is (based on its position, as seen in that re.match), or in all cases one can annotate the string literal to have it help you: # language=json not_json = """ {"oops:true} """ json.loads(not_json) is similarly marked as red because that's not json it's turtles all the way down: # language=yaml gitlab_yaml = """ stages: - build my build: image: docker.io/library/busybox after_cript: # language=sh - | if true; then echo "awesome" fi """ spots the suspicious "after_cript" (in yellow, because it cannot prove it's wrong, just suspicious) and then it also highlights the embedded shell script in the embedded yaml string literal Regrettably, it doesn't seem to run the shell validity checks on injected shell scripts, but I think that's a bug and not a limitation of the platform