Why Node.js devs should deploy with Node.js

By Ev Bogue - October 10th 2013

I've been trying to write this piece for six months. It's a hard piece, and I'm sure it will get me flamed, hated, condemned, and perhaps hunted and killed on the streets of the information superhighway. But this peice has to be written, so I will attempt it. To the sound of Kanye West's Yeezus.

I'm open to hear what you think. I'd prefer if you email me. But you can also find me on IRC at the channels Node.js devs frequent. You can also spread your hate for me all over Hackers News or Reddit, if you so choose. Just know, you hate me because I'm right.

Nutgraf: If you call yourself a Node.js dev, you need to be deploying your website using Node.js. If you cannot figure out how to do this, you probably don't know how to use Node.js in production.

As far as I can tell, the standard workflow for MOST Node.js devs right now is this

  1. Write Node.js code
  2. Run it once
  3. Publish it to npm
  4. Push it to Github

What it needs to be is

  1. Write Node.js code
  2. Use it in production
  3. Publish it to npm
  4. Push it to Git (not necessarily Github)

As far as I can tell, the easiest way to use Node.js code in production is to write a functional website with Node.js. By functional, I mean your code works.

Too many Node.js developers are using non-Node.js software to deploy their websites. This leads me to believe these people, as much as they talk about deploying Node.js, do not know how to use it. If they did, they would use Node.js to deploy their website. Not Tumblr, not Github pages, and you're a fuckwad if you use Medium.

I can count on my right hand the number of Node.js developers I know who are deploying their websites with Node.js. The rest? Using centralized, read EASY, services.

Some of the most well reknown Node.js developers I know have not figured out how to deploy their own website with Node.js. This is a sad state of affairs.

Can you imagine how shitty Linux would be if all Linux developers used Windows or Mac OS X? It'd be pretty terrible, right? Node.js has some pretty rough edges because Node.js developers can't figure out how to deploy their own websites with Node.js.

Reasons why you should deploy your website using Node.js if you are a Node.js dev

  1. A Node.js website demonstrates your abilities. You want to be hired to Deploy Node.js at some company somewhere? Well, the best example you can give them is deploying with Node.js yourself. Can figure it out? You're not a Node dev, you're a fuckwad who uses Medium.
  2. Node.js is useless without systemd. If you deployed your website using Node.js, you'd know that at Node.js always crashes for some unknown reason every other Wednesday at 3am. And you would wake up at 7am to find your site has been down for an unknown amount of time. But you're a fuckwad who uses Medium, so you have no idea Node.js crashes.
  3. You'll learn more. Think you know Node? Well, try deploying your website with it. You'll learn A LOT more than being a fuckwad who uses Medium.
  4. I won't refer to you as a fuckwad for using Medium. <-- makes sense, right?
  5. You'll reduce your dependence on Github. Everyone knows Github is a closed-source, centralized social networking application. It will eventually start fucking its users, in the same ways we've seen every other company do this. If you used Node.js for your website, instead of a Github Jekyll website, you'd have the freedom and independence to recognize that Github is not the be-all-end-all of Git repository hosting. Yes, it's one option, but at some point in the future it will become a bad one. Plan now, before Github sells to Microsoft/Google, limits your free public repos to five, and destroys all of your unmirrored hard work. Git is distributed, don't be a fuckwad, use it in a distributed way.

In parting: eat your own dogfood. You might find it begins to start tasting better.

Pretty Good Privacy →

← Free money advice

Hi! I'm Ev Bogue. I serve at a restaurant in Fayetteville, NC.

I no longer use email. Please use Decent to contact me.

about | ev@evbogue.com | gitmx