DEV Community

Discussion on: Which editor/IDE do you use and why?

Collapse
 
nickcraver profile image
Nick Craver

I use several. For my use, I find each has a set of use cases it's strongly suited for:

Sublime (via context menu): useful for single files or scratch areas, because the launch speed is so much faster than VS Code (~10x a few months ago). Hot file save and new tabs for quick notes you don't want to persist to an actual file are very handy. Addons: Package Manager, Material Theme (+ AppBar), Pretty JSON, and language specific extensions like Cisco, Go, Jekyll, Markdown Preview, PowerShell, Puppet, Sass, and Varnish.

VS Code (via context menu or CLI: code .): useful for entire repos/directories, searching across those structures, and actual builds for .NET Core. Also very useful for Go editing and debugging. Available on both macOS and Windows which is a huge plus on the laptop. Recently gained hot file saving like Sublime which is attractive but not quite there yet. Addons: C#, MSBuild Tools, Output Colorizer, PowerShell, Settings Sync (syncs settings via a GitHub Gist), and vscode-icons.

Beyond Compare (via context menu): useful for comparing 2 directories, files, etc. Also very useful for 3-way merges, image comparisons, etc. Very reasonably priced and available on Windows, macOS, and Linux.

Visual Studio 2015/2017 (via start menu pin list or CLI: .sln file): Daily IDE for .NET projects (editing, building, debugging, etc.), far more powerful than any others but insanely heavy and overkill for small/quick projects of investigations (like a file grep in a solution, which VS Code is quicker to launch and accomplish).

Collapse
 
jess profile image
Jess Lee

Anything to be aware of mentally when switching between editors?

Collapse
 
nickcraver profile image
Nick Craver

I rarely switch, a given task usually stays within an editor. As far as different behavior between editors, I find most of them behave the same in terms of command access...except when changing between Windows and macOS. I've hidden VS Code with Ctrl+Shift+H so, so many times.

I find that the very small and fast mental cost of choosing the editor up front is the main mental switch involved. After that the features are just better for the scenario. For example, the file tree (with vscode-icons) is far better in VS Code than Sublime (IMO). Visual Studio doesn't even show a file tree, it's a solution tree. It has an open directory mode in 2017, but it's far slower to start up and generally it's not worth the cost for whatever task I'm trying to do in such a scenario.

Visual Studio is also not as versatile for multi-lingual setups - and I'm hopping around many systems in my role at Stack. For example when I'm doing Puppet, network configs, DNS, Node.js, Go, etc. VS Code just works...and works pretty well. Since you can define build actions in the repo, it's very easy to have one editor where "building" does what you want across so many things. Extremely handy quick editor.

Contrast that with "I just want to take a note" or "I just want to edit one file" - you want to minimize your overhead which (by a much larger percentage) is now startup cost. Sublime 3 wins there, by a huge margin. It's also one window pane rather than many. It's simply optimized for it all around. Note: you can open a directory in Sublime, but it's pretty raw and just a directory browser in the left pane. But, you can open several if that suits your workflow.

This is just additional reasoning and examples of why I choose the editor I do for the scenarios listed in my post above. Hopefully that better explains the upfront context switch decision, in order to avoid many more down the road.

Thread Thread
 
pim profile image
Pim

Thumbs up x 100000 on this. I work in entirely same fashion, with perhaps a slightly strong emphasis on Visual Studio.