Back to Basics: The Text Editor
Goal
To use a minimalist toolset to build and manage an HTML and JavaScript/NodeJS project from the ground up.
Minimalist Toolset?
Simple: no Visual Studio or other IDE. This would allow me to do development on any device, in the literal sense.
Here's what I considered to be minimalist:
- Text Editor (i.e. Not an IDE)
- Browser based developer tools
- Command line
That's it. I haven't done this sort of thing since I first got into programming back in university, prior to falling into Visual Studio in my third year.
Why?
Since the introduction of Windows Apps with the Surface and Windows 8, I've had the facination about having a consistent way to code across all my devices that can handle a keyboard.
As an avid Visual Studio user, I started to see that the Microsoft development flagship did a lot of magic behind the scenes without me knowing what it was.
Now, not only did I want to write code across platforms, but I also wanted to build something from the actual beginning rather than wait for Visual Studio to build the beginning for me.
To do this, I need to step away from my all-in-one toolbox and get back to basics with some simplier tools.
I ended up trying out a few, but these were my top three notable ones.
Sublime Text 3
I found the aesthetics of Sublime Text to be the best of the three, especially the high level view of the file on the right. Still, it didn't win me over in the end.
The negative I had about it was trying to figure out why there was a price point on it. I get that software like this takes time and effort, and ultimately money. I just didn't understand why I would pay for something that I deemed as a "pretty" application.
I know the application has a lot to offer. For example, the large number of plugins through the package manager and the ability to write scripts to customize and tailor the experience. Still, it just didn't grab me other than the aesthetic.
Moving on.
Notepad++
I have used Npp a bunch over the years, but never as a primary code editor. Generally, it's the replacement to Notepad on a server so that I can edit config files on the spot once and a while. This time around, I gave it a real shot.
Ultimately, I was impressed. More specifically, I was impressed with the ability to set the syntax colouring on any language and the officially managed plugin list.
I ended up installing a few plugins to allow me to browse through my file tree, and thanks to the Github community, I added syntax highlighting for both CoffeeScript and LESS.
I'm still using it now with my JS projects, but the web hipster in me misses Sublime.
Vim7
And then it finally happened: I dropped the GUI. Through the years, I have always tried Vim as I know it can be powerful. Unforuntely, I was never really able to get the hang of it...until now.
Vim gives me the ability to write my JavaScript on any platform, Linux or Windows as it's totally command line based.
Here's what got me sold on it: the plugins. Again, the only ones I wanted should allow me to explore the file system and have syntax highlighting. Thanks to Github, I found that and managed to get it going in an hour.
In the end, I'm using Notepad++ probably because I'm a cheapskate and don't understand the price point for Sublime Text. I use Vim when I need to use a shared machine or device that has a terminal.
Still, the experiment was a total a success that between Vim and Notepad++ I get the ability to build code and project structure from the ground up myself, and be able to code from anywhere on any platform.
Thanks for playing.
~ DW