Atom
Atom is a IDE like editor for programmers, designed by Github to make programming more enjoyable.
Atom is free and can be downloaded straightly from Github website.
Why Atom?
It is a open source project, which means there are a lot of cool plugins. You can even hack it yourself.
A lot of cool features in Atom are developed by the community. Everybody can contribute to the project and write package plugins. Still not fully satisfied with Atom? Write a new plugin for yourself :)
It supports auto completion for all languages (Javascript, Java, C++, Python, you name it).
It might not sound like a important feature at the beginning. However, it becomes really helpful when you start to have more than just one language in the project. Having HTML inside your React web app? Having SQL inside you Python REST api? No problem, Atom can still do the autocompletion.
It is Cross-platform.
Why Cross-platform is preferable? Often a project is developed by several people instead of just one, for example, the group projects. Some people in the group may have a MacBooks which runs Mac OS X, and some may be using Windows. In this situation, it is very hard for them to collaborate since the project setup from Xcode can not be used in Visual Studio. However, Atom doesn’t have that problem since it is available on all the OS. In addition, since the capability of autocompletion comes from packages, so you can get exactly the same experience no matter which OS you are using.
Cool Packages (You can download them inside the editor):
active-power-mode (just for fun)
This package gives you a special effect while you are programming, it doesn’t have any substantial value, but it’s still cool.
autocomplete-XXX (XXX means any language of your choice)
These are package that provide the capability of doing autocompletion for multiple languages. What is really really cool about those packages is that they can even pickup languages even if they are mixed. For example, in JSX, you will have HTML inside Javascript, in Python code you can potentially have some SQL expression. In situations like that, this feature becomes really helpful.
git-plus (git without command line)
Tired of using git through command line? No worries, there are several packages in Atom that allow you to access git through GUI or buttons.
qolor (autocompletion even for SQL commands, isn’t that cool?)
Yeah, most editors can not pickup SQL expressions, but this one can.
More cool packages
How to install packages? Open up Atom, search the package you want in settings section and click download. It very simple.