Picking a Text Editor or IDE

Length: 00:06:36

Lesson Summary:

Before we start writing code, we should think about the tools that we're using to do the development. Having a well configured text editor can make the programming experience much more enjoyable. Much like a carpenter, having sharp tools leads to a more productive creative experience.

Documentation For This Video

Terminal Based Editors

There are a few different terminal editors that you can work with. The main reason to use a terminal based editor is that you can run them on servers that you're connected to and you can stay in a terminal to carry out any programming task, whether that be developing the code, debugging, or deploying. There are two terminal based editors I would consider to be extremely popular:

  • Vim - Modal editor, extremely customizable.
  • Emacs - Unbelievably customizable, not modal (at least not by default).

Both of these tools are either pre-installed or readily available on all major Linux distros.

The third option is Nano/Pico and it's more of a tool that I would suggest using if nothing else is available.

For this course, I'll be using a lightly customized version of Vim.

GUI Based Editors

GUI based editors can be extremely powerful and more aestetically pleasing than terminal based editors. This list is comprised of classic "text editors", but most of them can be enhanced using plugins that add additional functionality. I'm going to divide them into two camps: native applications and Electron applications (built using JavaScript). This seems like a weird distinction, but plenty of people don't like the resource overhead that running Electron based applications requires.


  • SublimeText - Multi-platform. Very performant and extended using Python 3.
  • Notepad++ - Windows only. Not as powerful as the others, but a good starter text editor that won't get in your way.

Electron Based:

  • Atom - The original Electron based editor. Aestetically pleasing and very extendable through plugins.
  • VS Code - Arguably the most popular GUI based editor. Vast ecosystem of plugins and built-in debugger.


The primary IDE that is used by people in the Python community would be PyCharm. There is a free community edition and there is also a paid edition. To connect to a remote server to do your editing, you'll need to have the paid version.

This lesson is only available to Linux Academy members.

Sign Up To View This Lesson
Or Log In

Looking For Team Training?

Learn More