Working with IDEs can for sure speed up our development, but using Text Editors for sure has some advantages which helps us in long term. They not only help us understand the code much better, but also helps us develop some good habits of coding.
As a developer I am very choosey about the tools that I use during development. Things like which Terminal software do I prefer (Terminal or iTerm), which browser do I use with which Debugging Tools. But one of the most important tool for any developer is the IDE / Text editor.
IDEs like PHP Storm does make our life very easy during development and gives us a lot of tools like Version Control, Refactoring support, Intelligent autocomplete but somehow when we use such tools we tend to get very dependent on them. And that’s why sometimes, I feel it is a good habit to use a simple text editor (for me it has been Sublime Text for quite some time now) so that we can understand the things which are happening in background.
One good example (here goes Laravel based code example) is whenever we are injecting the Request object inside a controller to get post data we need to add a use statement and specify that we are going to use the Request call. But, if you dig deep then you will find that there are many request classes under different namespace. So, which one do we use? Well we need to pull Illuminate\Http\Request class. So, if we rely on doing this automatically then we will never get to know this.
One more very common thing is using git. If we use git inside our super smart and intelligent IDE, then we never know some of the critical things / commands for git. And then what happens if we have to work on a Linux server? We only have the black terminal in front of us. No GUI, no hints nothing. In such situations, I have seen that a habit to control things through command line always tends to solve the problem.
So very quickly if I need to list some of the things which will develop are:
- More knowledge about the framework and it’s structure
- More control over tasks which are automated inside IDE
- Forces us to develop habits like indent code yourself as per the standard and forces us to remember them so that they become second nature
- With less auto complete for function names, we tend to follow a very standard convection to name functions so that we don’t have to always open the file check the function name
I am sure the list will be long. But yes, clearly there are many advantages of using a very simple text editor and get some habits in our muscle memory instead of relying completely on IDE.
Again, this is my personal view on the advantages / benefits of using a text editor and many of you all may think otherwise. Would be happy to know your views on this.