IDElessness: hand-crafting code in a text editor

Should you always use an IDE to write software? Is it sometimes good to get back to a simple text editor and command lines tools?

In the early 2000s I learned C# from the first edition of Andrew Troelsen's book C# and the .NET Platform. In the first chapter he suggested writing a short program in a text editor and compiling it on the command line using CSC - the C# compiler.

I didn't do this because I was keen to get stuck in to some serious stuff using Visual Studio and frankly thought the command line compiler suggestion was a bit daft and archaic. Before C# I had used the text editor/command line method with C, C++ and Pascal but then moved on to Borland C++ Builder and MS Visual C++ so had no wish to revert to what I saw as obsolete practices.

I went on to use C# as my main language for the next decade or so but frequently had the feeling that I was doing things I didn't fully understand because Visual Studio did so much behind the scenes, everything from Intellisense and code completion to generating entire data access layers, UIs and skeleton websites.

I now regret not taking Andrew's advice and wish I had learnt C# and .NET in full using just a text editor and command line compiler, instead of just learning the bits that Visual Studio didn't do.

These days I don't use C# any more, my main languages being JavaScript, Python and a bit of PHP and C, along with HTML and CSS, and for my personal coding projects such as blog posts and a couple of websites I am developing I do not use an IDE at all. This might seem extreme and isn't sustainable for larger commercial development but for small projects and learning purposes I thoroughly recommend it.

ps Sorry Andrew Troelsen for believing you were "daft and archaic".