Choosing a code editor is a highly personal choice—choose the one that you like the most.
It’s usually a good idea to download your code editor and use it for a little while before making a decision.
What code editors do
It isn’t strictly necessary to use a code editor when writing your code. All you actually need is a plain-text editor: TextEdit on Mac or Notepad on Windows.
The problem with using a plain-text editor is that they aren’t optimized for writing code.
A proper code editor will provide a bunch of features to help you write and see code more efficiently.
- Line numbers — automatic numbering for lines of code
- Syntax highlighting — colouring of different keywords to help understanding
- Indentation assistance — helping you indent and align the code for easier reading
- Auto-completion — automatically add and complete code for you and show suggestions
- Multiple file interface — having more than one file open at a time
- Quick movement — moving within files quickly and opening/closing files quickly
Important settings to consider
Changing the theme and colour scheme
Some people like dark interfaces, some like light
Turn on “Show invisible characters”
Will show spaces, tabs, returns, etc. to help you understand your code
Turn on “Indent guides”
Will draw vertical lines to help see the alignment of code
Turn on “Scroll past end”
So your code isn’t mashed at the bottom of your screen
Turn on “Show line numbers”
Make sure to turn those on!
Turn on “Soft tabs”
This is really a personal preference: indent with space (soft) characters or tab characters (hard); whatever you choose, the
tabkey will always work
Tab length: “2”
How many spaces to add when hitting the
tabkey, or how wide the tab characters look
Turn off “Soft wrap” or “Word wrap”
Whether the lines are wrapped automatically or force you to scroll horizontally
File encoding “UTF-8”
How the file is written on the computer, allows lots of different characters and languages; most likely the default)
Recommended code editors
Here’s the top 3 I would recommend for you:
Atom (by GitHub) (free)
Simplest to get into, tightly integrated with GitHub, good community.
☛ Atom setup guide
Sublime Text 3 (freemium)
Most complex listed, requires a little setup, has greatest long term potential, huge community.
☛ Sublime Text setup guide
Visual Studio Code (free)
Comparable to Atom, many people like it better.
Others you may like
Been around for a very long time, has some amazing text processing capabilities, not as modern looking as others.
Textmate 2 (free, right now)
Going through a revival, decent community, may have to eventually pay.
Simple, made by a great company, specifically targeted at web development, some good designer focused tools.