4 ms·
Well this is your use case. I use Linux every day but I never touch python code directly on remote systems (it's getting automatically or manually deployed). Al
by therealmarv 10y ago
Well this is your use case. I use Linux every day but I never touch python code directly on remote systems (it's getting automatically or manually deployed). All my python code lives in virtualenv locally here. But I understand when people work for many projects they maybe want to encapsulate it more (vagrant etc.).
- general_ai 10y agoI prefer console in general, for everything. I've been doing this for 20+ years, and you can pry it from my cold, dead hands.
- dotancohen 10y agoI've only been coding for 11 years professionally, but also as a hobby before that. Only in 2016 did I move most of my work out of VIM into an IDE: the Jetbrains family. That mostly started for better interactive debugging, but with IDEAVim handling 95% of my VIMisms I find that I'm simply coding in PyCharm and PhpStorm by default now. The base editor is open source but you can get the full PyCharm for $99 per year. Worth every cent.
- Arizhel 10y agoI've used PyCharm. The editing feature is beyond useless to me, because it does not have vim key bindings. How am I supposed to cut and paste code when commands like "y}" don't work? You actually expect me to use a mouse to select things or move the cursor? Ridiculous. The only thing I've found PyCharm good for is doing other functions, like linting, not for the actual code editing. No IDE is any good for that. Luckily, PyCharm works just fine when the code it's working with changes on the filesystem below it because of the use of an external editor.
- xbrother 10y agoThere is VIM plug-in for Intellij family IDEs. It covers the great part of VIM functionality. It even supports some sort of VIM configs. "y}" works fine, as well as "yi{".
- therealmarv 10y agoThis sound you are trapped in vim keybindings. There is no need to use a mouse on "normal" editors.
- lenkite 10y ago"y}" works with IdeaVIM. https://github.com/JetBrains/ideavim https://github.com/JetBrains/ideavim
- therealmarv 10y agoConsole for everything is the same like saying I never touch console, only GUI. There is a usecase for everything... I also want to see how you manage a bigger Java project from console with your 20+ years of expertise.
- xyzzy_plugh 10y agoWhat about Java development necessitates a GUI? I've never found I needed to use a GUI for developing software, outside of a browser.
- geoka9 10y agoWorking on a big legacy Java program spread over many dozens smallish files in deeply nested directory trees is very annoying without some IDE features (e.g. jump to definition). And I haven't seen a tool that can provide that kind of support for a classic text editor (Vim/Emacs). So you have to use an IDE (which necessitates a GUI). To be fair, most other mainstream languages (except maybe Go) lack that kind of tooling too, but at least their cultures do not encourage liberal use of deeply nested directory trees and overengineered abstractions, the way Java does.
- xyzzy_plugh 10y agoWhat? There are most certainly tools which provide jump-to-definition for vim/emacs. With respect to vim, at the primitive end of the spectrum is ctags. At the opposite end there are things like the fabulous vim-go, which provides all the functionality that you'd expect in a traditional IDE. There are many similar plugins for other languages. Regardless, I contest the idea that you have to use an IDE. I find traditional UNIX tools more than sufficient for programming in any language. I can find definitions with grep, use ctags and vim's chugger to manage definitions across many files in many directories. I'm also not limited to the scope of just one project. The tools I use and my expertise with them can then be applied to any language or problem. I use the same tools to write emails and commit messages. Large legacy Java programs may be frustrating, but they're not all that bad, and certainly don't warrant requiring maintainers to learn and use an IDE.
- sametmax 10y ago+1. I use VIM all the time on my remote servers, but never to dev.
- annnnd 10y agoOf course, use cases are different. In my case I usually deploy either automatically or manually, but in those rare cases when you can't replicate bug locally there is nothing better than vi. But of course, to each his own.
- rantanplan 10y agoDebugging directly on the production system? Yeah, nobody does that. Well, nobody who has any kind of serious operation going on. If you can't replicate a bug outside a production environment you have a serious deficit in the devops department. You should be able to stage a machine with a copy of the production DB/data and the same reproducible package(code) that currently runs on your production systems. Everything else is just an accident waiting to happen.
- thinkmassive 10y ago>> in those rare cases when you can't replicate bug locally > directly on the production system? Why does 'non-local' have to equate to production? Are you able to use an IDE in your container/VM/cloud server?
- rantanplan 10y agoYes, PyCharm supports Vagrant, Docker etc. My host system is Fedora but since our production code is deployed on Ubuntu, I have a Vagrant Ubuntu image. PyCharm reads the Vagrantfile and it has access to the virtualenv(python in our case) of the Vagrant's image. UPDATE: I am not sure if that's what you were asking. Maybe this response(https://news.ycombinator.com/item?id=13543158 https://news.ycombinator.com/item?id=13543158) I gave is more relevant ?
- thinkmassive 10y agoThat VM/container is still essentially a remote system. Do you never ever log in to it? What types of instrumentation are you using to characterize the performance and operation of your app in the dev instance?
- Daviey 10y agoMy developer machines I have a neovim setup with a bunch of extra config and plugins, but when doing remote work I often have to use vanilla vi or vim.. and I just put up with it. If I need to do something significant, i'll scp the file around. I know vim can edit over ssh, but I honestly never do. I've never tried vscode, but I am tempted to try the remote support: https://github.com/DonJayamanne/pythonVSCode/wiki/Debugging-over-SSH https://github.com/DonJayamanne/pythonVSCode/wiki/Debugging-...