Proper Web Dev
This question was offered to me recently after I posted this thought:
Rather than replying immediately, I wanted to take the time to carefully consider what I would say. Because it’s a damn fine question. He was absolutely in the right to call me out on that. I mean, who am I to define the meaning of “proper web dev” for anyone? In that, I knew that there was something that we could all take away from this conversation.
Some background: David and I used to work together. He even supervised me at one point. Like me, he is also incredibly adept at transitioning between platforms. I have nothing but the highest respect for his abilities in authoring code. The guy is a beast. I also know that he has, for several years now, worked fairly exclusive in a Windows-based enterprise environment. So, I can deduce that our workflows have become very different over the years.
In my case, relying on a Bash CLI (or ZSH with Oh-My-ZSH, as I prefer), to execute NPM commands that pre-process a directory into both development, and production folders, using GIT hooks to deploy to a server, was essential. I would use OS X spaces to zip back-and-forth between full-screen instances of Chrome, iTerm, and Atom. It was a flow that I become incredibly comfortable with. But when I switched to Windows, It became necessary for me to find new ways of getting similar things done. It was certainly possible, but it felt very strange.
Which brings me to the following thought:
Proper web development is a personal journey. There are a vast number of tools available for you to accomplish your goals, on nearly any platform, but to really get in the zone, you need a system that becomes muscle-memory. Freeing up your mind to focus on the work, rather than having to stop and think “How do I do this?”
One of the most important things I’ve discovered while working with Windows and Linux for web development, is that it’s not really all that different. There are ways to execute bash commands, there are multiple desktops, and, there is still Atom (granted, I needed to build from source on Linux). There’s certainly things that might trip you up, but with enough diligence and research, it’s pretty easy to figure out.
My current environment consists of a Manjaro i3 VM running on a Windows 10 host. There’s also an older PC with running Debian off to the side that quietly serves as a localhost for me to test on. And, as always, Atom will be my go-to scripting editor, thanks to it’s fantastic library of plugins.
So, how do I define proper web dev? Easy.
Proper web dev is a personal journey workflow, conditional to the teams we work with, the clients that we produce for, and the goals we hope to achieve. Because the “right” way to write our code is liquid, as long as we strive to continue producing high-quality content that works in the browser.