IDE vs text editor
Tags: vscode, helix, vim
Published: 2023-11-26 07:16:03

Working in GUI IDE and terminal text editors has its pros and cons, depending on your preferences, needs, and goals. 
I've already encountered attempts by text editor users to prove that it's the best way to edit code. Though it is certainly not true. Not everyone needs typing speed, having a plugin at hand to help test requests or work with Docker is sometimes more important than minor performance advantages. But sometimes a text editor can be really handy and useful. I use both.
Here are some of the advantages and disadvantages of using VS Code and Helix text editor as examples:

![VS Code screenshot](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/syy1xo88yk037gg1j8hj.png)

VS Code is a GUI IDE that supports code editing, debugging, syntax highlighting, and other features. Some of the pros of using VS Code are:
•  It has a rich set of extensions and support for various programming languages, frameworks, and tools. You can customize your development environment according to your needs and preferences.
•  It has built-in support for web applications, language servers, and Git repositories. You can easily create, test, and deploy web applications, access language-specific features, and manage your code versions.
•  It has a modern and user-friendly interface that offers various themes, icons, and layouts. You can also use keyboard shortcuts, snippets, and code folding to improve your productivity and code readability.
•  Quick mouse click actions, such as open code in a new panel on the right side of the screen.

Some of the cons of using VS Code are:
•  It requires more hardware resources than terminal text editors, such as memory, disk space, and processing power. It may not run smoothly on low-end machines or remote connections.
•  It may have compatibility issues with some extensions, plugins, or tools that are not well maintained or updated.
•  It may not offer the same level of customization and control as terminal text editors, especially for advanced users who prefer to work with plain text and command-line interfaces.


![Helix screenshot](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/p87p6fcrdaqzwvnyownf.png)

Helix is a terminal text editor that offers modal editing, multiple selections, tree-sitter integration, and language server support. Some of the pros of using Helix are:
•  It is a lightweight and fast text editor that runs on a single binary with no external dependencies. It consumes less battery life and system resources than GUI IDEs.
•  It uses tree-sitter for syntax highlighting and code analysis, which produces robust and error-tolerant syntax trees. You can navigate and select functions, classes, comments, and other syntax nodes instead of plain text.
•  Very convenient file browser.
•  Quick navigation with hotkeys.

Some of the cons of using Helix are:
•  Sometimes it has problems connecting Rust. I tested on different Linux distributions running in a virtual box.
•  It has a small community and ecosystem, which means it has fewer plugins, extensions, and support than other terminal text editors. You may not find the functionality or customization that you need or want.
•  It has a different set of key bindings and commands than Vim, which may require some learning and adaptation for Vim users. You may also need to configure your terminal or shell to make Helix work properly.

In general, it is necessary to choose tools for work based on personal convenience and requirements of the direction in which you work. Try not to turn your personal experience into a mandatory absolute for everyone.


_The last words do not refer to human rights issues, which are still not respected in some countries/regions._