Node is Done

By Ev Bogue - November 13th 2013

[Update June 2016: In hindsight, it is apparent at the time of this writing that Node was not done at all. In fact, it needed to be forked by rebel programmers into io.js and liberated from Joyent, and finally restructured under the Linux Foundation before things would calm down in the Node.js world.]

When I first discovered Node, it was a year ago. It was already mostly done, but Ryan Dahl was still kicking the code around. The streams API wasn't quite there. It wasn't done yet. But it is now.

The hardest thing to do is walk away from a done project. Perhaps this is harder with Node, because we all thought Node was going to be this amazing esoteric thing that solved all of our Internet problems. The closer I've gotten to Node, the more I've seen what it is. It's an http server. It's for generating and serving websites.

Yes, you can try to make it do other things. But it won't do them very well. If we take the Unix theory of 'Do one thing well', then we wouldn't make Node do all things. We would figure out what other things need to be created that aren't Node, and move on from Node. Because it is done.

Node is done.

For people who code in Node, it's time to realize that Node won't solve all of your problems. It certainly won't feed you. Node is not a taco, you cannot eat it. Node is certainly not a burrito. It's just an http server you use JavaScript to configure.

This isn't to say I'm not going to be one of the few people who use Node to deploy my own website. One of the most disappointing things from the past year has been realizing just how many supposed Node programmers use platforms other than Node to deploy their websites. This might be the saddest thing about Node, how no one actually uses it. They just write elaborate JavaScript config files and upload them to Github.

Github is done too. But not in the same way. Github is cooked. Meaning you better get off there. They've hired hundreds of spamurai to keep the site from getting spammed down, but eventually this will not be enough. Github will run out of money, it will fire all of the talentless people it hired, and all of your Node module code will go down with it. Diversify your repo hosting, or be prepared to lose your commits. Whether it happens two months from now, or five years from now, it will happen. Github is cooked. Flat company structures only obscure how bad a company is doing, they do not save it.

The best modules written for Node were written by TJ Holowaychuk. Almost everyone uses them. They're pretty boring, and also very large, but they do the job. There's no need for another Node.js framework. Express works just fine. That is because Node is done, and a framework is what you need in addition to Node. You might as well use the best one. The best one was written by TJ.

Done is Node.

Now that Node is done, you might be worried about your job security. But the good news is, and I've checked, there are very few Node.js jobs. So you don't have to worry about losing yours, because you don't have one. In fact, you're eating ramen, and every startup in the valley is pretending to be hiring Node.js devs. If they really did need Node.js devs, the best of them wouldn't be unemployed, would they?

Now that Node is done, here's a few things for the Node community to think about doing.

  1. Get off Mac. The Mac platform is so overcooked, it's impossible for me to comprehend why you haven't figured out how to get off it. There are other package managers on this planet besides npm. Check out pacman, or yum, or use Ubuntu for three weeks before you can't take it any longer and switch to Arch Linux. Get off your Mac, it makes you look out of touch.
  2. Try hosting your own website in Node. If you think Node is the future, well, live the change you want to see in the world. Duh. Get off Tumblr. A kitten has a seizure every time a Node.js dev posts to Medium. I'm talking about you, Node.js dev who's reading this with a Medium account.
  3. Learn C. All of the software is written in it. Every person I've talked to who is actually hiring in the valley needs C programmers.

It might be the best web server out there, but we have to admit that it's just a web server, and get on with our lives.

Node is done.

Learning C →