What's Your Favorite IDE & Why?

Java developer here with some Go on side project. IntelliJ and GoLand are my main IDEs. I did use VS Code before getting a cheap license for GoLand at a conference and I didn’t go back to it after using it, probably because I was familiar with IntelliJ already but also anything Electron based always feels sluggish to me (which is curious since IntelliJ is not exactly light). Maybe I’ll try VSCodium next time I have some free time…

2 Likes

Emacs… why didnt they try emacs. Lol. I know it’s so un user friendly but it’s the epitome of open source and can do anything.

I may be in love with it, but they should try it! Use doom emacs tho. Else its way too hard to get into.

1 Like

The thing about EMacs (I like it too) is that you have to be dedicated to it. You have to spend the time to set it up, and really get into it. The learning curve is real. The best eMacs tutorial I saw was something like 30 hours. It’s good, but man is it complex.

1 Like

Technically there is at least a telemetry free version of vscode. You can liken it to how there is a Chromium and a Chrome

3 Likes

While I know I won’t be different from the using VSCode perspective. I do think I bring a bit of an alternative view for why it’s required for me to have it.

I do a lot of infrastructure things “developing” Infrastructure as Code (IaC) with terraform, ansible, containers, and ssh’ing into a bunch of different machines.

The quick and subtle auto-complete or IntelliSense (don’t know what the technical term is for it) that vscode does is such a time saver for me! For example, when I was trying to pickup AWS-CDK for each function that I used I didn’t have to go look at the documentation to identify most of the flags that I needed. I tried development without enabling the IntelliSense/documentation and it took me close to twice as long, because I’d have to look up every single argument and all the documentation for each argument before I would feel comfortable moving on to the next line of code.

While it might be possible to use other text editors/IDEs with the different language server + intellisense protocols: https://www.vimfromscratch.com/articles/vim-and-language-server-protocol

the native + supported integration to VSCode/VSCodium enables me to get work done so much quicker.

BTW the language server protocol has been adopted for some major IaC tools:
Terraform: https://github.com/hashicorp/terraform-ls
Ansible: https://github.com/ansible/ansible-language-server


Alternatively, while most of the time I don’t ssh into machine’s for editing different files on a server. I have a weird setup with PCIe passthrough, and one of the things I’ll constantly do is use the Remote - SSH plugin. I’ll ssh from my VM into my main machine, so I don’t have to move (or git clone) all the files that I want to modify. This also saves me from provisioning an ssh key inside my VM (I can just use my main machine’s key to push to my SCM).
https://code.visualstudio.com/docs/remote/ssh

Another really powerful (while I haven’t used it very much) is both GitHub Codespaces and Dev Containers. Having these two different environments that allow you to connect to predefined environments, can immensely help when you are on-boarding a teammate and they want to have the same setup as everyone else on the team for development. You can just define what’s needed in the container/Codespaces config and they have an identical setup, which can be 50% of the challenge of coding (the classic “it works on my machine” situation).

https://code.visualstudio.com/docs/remote/codespaces
https://code.visualstudio.com/docs/remote/create-dev-container

2 Likes

I’m a full-time backend software developer with many years of experience in Java and now Kotlin. My favourite IDE is Jetbrains IntelliJ IDEA, I also use neovim, but not for Java development. I don’t like VSCode (because Microsoft and electron, same reasons for Atom), I tried Sublime, it’s fine, but closed source, used it for a while for note-taking, but now I’m using vimwiki for that.

I love IntelliJ, it’s open-source at its core with some paid features slapped on top. It has a crazy amount of useful functionality and makes my work much more comfortable than anything else. I use it for Java, Kotlin and recently for learning Rust. IntelliJ’s support for frameworks and development tools is unrivalled. Before IntelliJ I used NetBeans for a long time, tried Eclipse on several occasions, it never worked for me.

Fleet is focusing on a little bit different goals from what you’re describing in the video, it’s basically a lightweight code editor which can also be a client for their full IDEs, which will act as servers.
So, if you want to have IDE experience in Python, you’ll still need to buy a PyCharm copy, Fleet will connect to it if you want to do a client-server setup.
This client-server setup is the main thing about Fleet. This allows you for example to have a very cheap client machine, for example, a $300 laptop, and rent a powerful virtual server, say on Google cloud. This way your dev environment is hosted in the cloud, code lives in the cloud, and you’re not afraid lugging a $3000 mobile workstation around. You’re also saving quite a bit of money as renting a preemptible heavy development grade machine on GCP is ridiculously cheap.

2 Likes

I have a student license for CLION, I like that it doesn’t need it’s own project file and just uses cmake files. Its GIT integration is pretty nice too
I learned C in 07 with borland C builder. I’ve used Notpad++ on windows, Leafpad on Linux & Smultron on mac too

1 Like

I’m a Senior Principal Software Engineer and throughout my career I’ve used a lot of different IDEs and text editors, but I’ve never found one quite right.

My first text editor I used for making basic website was Sublime Text and I really enjoyed it, but years ago, when I began as a .NET dev I had to use Visual Studio. C# is a great language, but Visual Studio was so clunky. I tried JetBrains Rider and it was much better, but still too heavy for my tastes. When .NET Core came out and was cross-platform, I moved to VS Code for everything and it was the best experience I had ever had. I’ve tried other things over the years since, but I keep coming back to VS Code. It’s an electron app, though, so it’s resource intensive and that really shows while working in large projects. It’s not ideal.

I’ve recently given Sublime Text 4 another shot since it’s a native app and the performance is unparalleled, but it doesn’t have all of the convenient extensions I’m used to for development in modern stacks so I still find myself going back to VS Code.

I’m waiting for an editor that offers the experience that VS Code or Atom offers, but natively.

That led me to try Sublime Text again.

Here’s a new one I found while scrolling through the trending section of github.

Looks pretty new but seems promising at a glance.