Using good text editors or Integrated Development Environments (IDE) is important to new programmers as it is to well-experienced ones. While advanced text editors like Notepad++, Sublime text, etc. fulfill basic requirements of many programmers such as syntax highlighting, word completion, multi-tab for editing multiple files, etc. but lack the environment to run, test, debug and version your code all under one roof. Many might argue that some functionality can be replicated via plugins forgetting, IDE was developed for the same exact purpose. Yes, text editors are lightweight but offer very less functionality as compared to IDE.
Text editors are very useful for certain situations like when we have hardware constraints like RAM as IDE tends to eat as much as they can or while editing few files which are not of a part of a big project. Can't text editors be used for big projects? Yes, you surely can use it but IDE will help you avoid unnecessary errors like function references which we could miss while using a text editor. Yet both text editors and IDE play an important role during various phases of code development but selecting a wrong one can definitely cause some hardship.
As a developer, you want to write and execute your code faster and test its working rather than finding the line of code where you missed a semicolon. IDE are very helpful in such situations to find errors, unreachable code, clean up the code repository for unused imports or even refactor a piece of code throughout your project which doesn't sound much of a big deal but can cause unwanted bugs if done incorrectly and save time.
Here are few popular text editors and IDE which are highly recommended. These would not just cater the needs of new programmers but also experienced programmers and would ease your work process by letting you only worry about writing code.
Notepad++ is a Windows freeware text editor providing basic features like syntax highlighting, word completion, etc. Full feature list can be found here. It is easy to use without any learning curve and also has options for minimalist layout and no theme options which can be very useful for new programmers for avoiding confusion to learn the text editor's basic features.
Download - Link
Vim is a lightweight Linux text editor which pre-installed in many Linux distros but can also be installed from the default Linux packages. It also has support for many other distributions including Windows and MacOS. It is customizable and supports plugins via utility scripts like vim-pathogen. Since this text editor works in CLI mode, installing plugins are not exactly easy as compared to Sublime Text 3 which would be discussed further in the article. Vim might loose points in easy customizability but is very powerful and smooth CLI text editor. There is a very small learning curve to this text editor for editing, searching, and saving files on the go.
Download - Link
Sublime Text 3
Sublime Text 3 is a heavy customizable text editor. It has a lot of developer support in terms of theme creation and plugin creation. It has inbuilt package control for easy installation of themes and plugins created by 3rd party developers. If you love to use text editors and customize it to your needs, don't look further. It is free to use, just shows a popup to buy a license when saving files but doesn't block the usage of the text editor.
Download - Link
Buy - Link
Download - Link
JetBrains is a premium software but also provides educational bundles with limited functionality. JetBrains offers various flavors of IDE for different development stack and has more over same functionality as Eclipse. The only visible and apparent difference visible is when JetBrains uses its IntelliJ plugin which creates a huge difference between both IDE working. Jetbrains IDE indexes or loads the previously made indexes of the whole project when the software is started. This makes the IDE more context aware of the code you write and suggests only those functions and methods which would be applicable to the current line of code where as Eclipse would suggest all methods and functions without knowing if it would be applicable.
Website - Link
These text editors or IDE will surely help you save time, and let you focus on software development life cycle from writing code to the deployment of code to live or production servers. They are environment configurable so you can easily run the environment needed for the software/project to compile and execute locally before they can be pushed to live servers. The code versioning is made easy with inbuilt/plugins for git commands and actions which will help you collaborate with other developers/team members. Moreover, IDE can connect to databases remote or local for running and testing the software/project locally.