Dear new developer,
As I mentioned before, the raw “stuff” of software is primarily text files. Actually, the foundation of software is ideas and information, but unfortunately a computer can’t yet run on those. So you will need to create text files.
Learning a text editor will serve you well in building software.
Why a text editor rather than an IDE? (An IDE combines a text editor with other tools that help development, including tools that help testing and tools that help debugging. It stands for “Integrated Development Environment”.) Text editors can be used for any language, whereas IDEs tend to focus on one or a few. Text editors can be run almost anywhere, whereas IDEs can only be run on your local system. And using a text editor will force you to become more familiar with the command line.
For those reasons, it’s better to become familiar with a text editor. There are many options, but two really good ones, with long lineage and a large amount of functionality, are vi and emacs. But there are plenty of good options. (Most text editors have extensions that help with certain aspects of development, and it’s worth spending some time research and installing them.)
What if you learn the wrong one? “What if I learn the wrong xxx?” is a question you’ll face many many times as a developer. Since you don’t know the future, you’re always gambling when you invest your time to learn anything. But every time you learn one thing (in this case, a text editor), you have more context and understanding about that “thing”. This knowledge makes it easier to pick up the next text editor, map its functionality to what you previously worked with, and get going more quickly. You also learn the jargon around the technology, which makes it far easier to use Google or some other search engine.
Text editors are easy to learn, but difficult to master. It is often easy to open a file, write something and save the file. But to be able to easily navigate between files, move around a file, or do a mass search and replace, you’re going to have to put in some effort.
But there is no better way to convert thoughts into files.
10 thoughts on “Learn a text editor”
Wow, your title is a bit strong. As a new developer, yes learning a text editor is recommended but if you are a new developer, then an IDE is invaluable. A lot will give you the ability to fail fast by flagging incorrect syntax. They also provide a great resource for learning a language with autocomplete. Please do learn a text editor but get the basics first with an IDE.
Thanks for the feedback! I’m planning to write a post about the value of an IDE. I agree with you that they are very valuable, but I think that learning a text editor doesn’t preclude learning an IDE (or vice versa).
Good article. I can’t agree more!
At the beginning of my career, I began to learn an IDE (PHPStorm) and when I add to code in other languages than PHP, I understood how powerful a text editor combined with the command line can be.
For those interested, I wrote an article how to use Vim for beginners. Hope it helps!