dark mode light mode Search Menu

Choose Software to Code With

Paris Buttfield-Addison on Flickr

There are plenty of software tools that make coding easy and fun. Some are simple, and some are more complicated.

All coding software tools are text editors, which are computer programs that let you create and edit programming language files. In other words, the place where you actually write and type in the code. Text editors work differently than word processing programs. Documents created with Microsoft Word (a word processing program), are binary documents. A computer using Microsoft Word translates those characters into clean human readable documents on a computer screen. But when a Word file is opened up with a text editor, there are a lot of odd type characters. Text editors don’t translate into binary form. Typing Python code, then saving a text file, and then running it will process the commands in the file and display any output. Typing HTML code for a web page in a text editor then opening the text file in a web browser will display a web page.

Some of the simplest coding software text editors are Notepad in Windows, TextEdit for Mac, or vi in Linux. These basic text editors are perfect for beginner coders, making it very easy to code and test results. (For years, I used a simple text editor to code complex web pages and WordPress templates in the PHP programming language.)

Most software tools that are used to code are called an Integrated Development Environment or IDE. Working on a large, group project is easier if an IDE can set up projects and connect to a remote server. IDEs have one tool that manages files, connects to the server, and manages versions of files. IDEs often have programming language libraries that scan code and make suggestions. This helps learn a language and reduces the time it takes to look up language functions.

Which type of programming editor works best depends on preference and how it is used. For people working in a group, an IDE everyone uses probably works best. Working on your own, whether a beginner or not, a text editor is simplest.

There are many free programming tools to try. When one works for you, help support the project team that creates the software by making a financial contribution. As mentioned earlier, Notepad, TextEdit, and vi are simple text editors.

For IDEs, Notepad++, Komodo Edit, and Sublime provide a basic, useful set of tools. Atom, Visual Studio Code, Nova, BBEdit, and Sublime offer a set of collaboration tools with a text editor. JetBrains and Microsoft Visual Studio are professional IDEs. JetBrains also makes PyCharm, an IDE optimized for Python, as well as IntelliJ for Java. IDLE also is a Python IDE to consider. Search online for many more options.

Programming tools can be either simple text editors or IDEs. Which tool to use depends on the programmer. I happen to like a basic text editor, but most programmers like an IDE. Here are some features of Microsoft Visual Studio IDE.

  1. Code Completion and Analysis IDEs include full language support for many programming languages, so they can identify features and details for each language as the code is typed. For example, a function might have two arguments. The editor will display a prompt that indicates what the arguments are that need to be included. The IDE sometime scan link to other uses of a function.
  2. Code Highlighting The code completion feature also allows a code editor to highlight types of code with different colors. This helps make code easier to scan and read.
  3. Version Control Many IDEs include version control using Git to manage files within a project and among multiple software developers.
  4. Projects Since software applications often include many files, they can be organized within a specific project. Projects can be shared with multiple developers on a team.
  5. Package or Extensions Manager Many IDEs include the ability to add functionality specific to languages and features. This helps make the code editor responsive while customizing the experience for each developer.
  6. Mini Maps For longer files, many IDEs include a tall vertical mini map of the code allowing users to jump to a section of code with much less scrolling.
  7. Panes Many IDEs include the ability to split their code interface into multiple panes. This allows editing of two or more sections of code at the same time. Panes also can display error messages and other useful information about code quality.
  8. Configuration Some IDEs also include the ability to configure the look and feel of their software, as well as connections to remote servers. Often this is done through Administration screens. Themes Most IDEs include the option to change the background color and other details about their user interface. Some offer many options, but most IDEs offer dark mode and light mode options. Remote Server Management In addition to projects and version control, many IDEs include the ability to use FTP to manage files on a remote server. For example, the ability to edit and update files within the IDE without the need for a second FTP software tool.

Learn More



Integrated Development Environment Facts for Kids




Integrated Development Environment


IntelliJ IDEA (JetBrains)


Visual Studio






Nova (Panic)


PyCharm (JetBrains)




Komodo IDE (ActiveState)


Nine Apps to Help Kids Sharpen Coding Skills


What Does IDE Stand For?


Best Python IDE an Code Editors