Clicky

July 18, 2014

Use NodeJS or Waste Money

You are wasting time and money if you are not leveraging at least some of what NodeJS has to offer these days when it comes to your JavaScript project. There was a time when NodeJS and its package manager NPM, in a more incipient stage, could be dismissed as just another cool JavaScript project. Its event-driven non-blocking nature made it great at doing networking stuff right from the beginning. NodeJS has since grown into something far more than just a simple network file server. The productivity software that has been built in NodeJS has extended its reach and made it increasingly indispensable from both a productivity and business standpoint.

Why should you invest time on a JavaScript build process?

Without a doubt the tide has turned from server side MVC to client side MV*. We find ourselves writing JavaScript that is far more complex than ever before as more logic shifts out to the client. This is both a blessing and a curse. As a language, JavaScript is expressive and adds little friction to the development process. The downside, especially for developers coming from a languages such as C# and Java, is that JavaScript does have some major flaws (The Good Parts) and anti-patterns. Mistakes that a Java developer can expect to be caught at compile time now build just fine and can be hard to debug later.

Choosing not to waste time with a NodeJS powered JavaScript toolkit.

With a language that is as dynamic as JavaScript, enforcing best practices becomes critical on any project of size. Things that we should all be doing, but in the past were just such a pain to set up such as linting, minification, concatenation, maintaing a build and src directory, handling dependencies responsibly and running tests now come free and easy.

NodeJS projects such as Grunt and Yeoman have masterfully addressed the pain points associated with many of the previously mentioned processes. For example, setting up all of these things for an AngularJS web app with Yeoman is a simple as entering ‘yo angular some_great_name’. Thats it. You’ll get all the above along with a live development environment courtesy of a built in NodeJS server that updates every time you save a project file. Whether you want a quick proof of concept or are seeding a production application, this is the way to do it.

NodeJS has grown into an ecosystem of projects and tools that is too useful to be ignored. You can still choose to roll your own scaffolding, linting, sockets, dependency injection, testing, etc, but at this point you would just be choosing to waste time.

Enjoyed this post? Share it!

Related Posts

All Posts ->

Featured

Enhanced Deployment Flexibility with OpenFin's Fallback Manifests

At OpenFin, we make digital work frictionless and delightfully productive, wherever you are.

Thought Leadership

Featured

ING Integrates OpenFin for Salesforce to Optimize Workflows

Tiberiu Zulean, Engineering Manager at ING, chatted with our Chief Digital Officer, Vicky Sanders, to discuss how ING is leveraging the capabilities of Salesforce and OpenFin to optimize workflows for their employees.

Thought Leadership