Node.js Development

If you’re using Node.js, you’re evil.

Node.js Development

Liked that headline?

It’s called an grabber. If we wanted to be more dull and had more space for a headline, a more accurate would be:

“If you’re using bleeding-edge Technology, you might be putting your client at risk, and if you’re a client and asking for Node.js without understanding the ramifications, you might be putting yourself at risk.”

See why the headlines in your newspapers might seem bias?

Allow us to explain.

We pick on Node.js, which we happen to love and think it’s going to be more revolutionary in the Web Development world than the plethora of MVC frameworks such as Ruby on Rails, Grails, Symphony, CakePHP, and the thousands of others that sprang up over the passed eight years. But the fact of the matter is, Node.js is young.

Node.js is an event-driven I/O server-side JavaScript environment based on V8. It is intended for writing scalable network programs such as web servers. It was created by Ryan Dahl in 2009, and its growth is sponsored by Joyent, which employs Dahl.

So as amazing as it is and will be, Node.js is two years old.

That brings up two points

      It hasn’t reached that milestone 1.0 release yet
      It’s going to be damn hard to find expert resources who can use it

Does this mean that Node.js is a non-starter?

Absolutely not. In fact, we’ve used it for a few of our projects.

However, companies hiring developer agencies and agencies pitching companies need full disclosure and honest discussion before making the decision to use Node.js or any other bleeding-edge Technology.

Yes. We here the “Duh’s” coming now.

But, seriously, we’ve noticed two pretty scary trends.

First, developers and programmers love to play with new toys. It’s what keeps us interested in our jobs. If we just banged the same nail with the same hammer, using the same motion day after day, we’d probably shoot ourselves in our collective heads.

However, new Technology can be like tuna in shark-infested waters (hey, it is Shark Week). Developers swarm to it and clutch it like the One Ring.

Suddenly, it becomes a magic hammer that can do all things.

So, logically, every time they pitch a prospective company, they extol the virtues of this new Technology.

Here’s the problem. Most agency-company relationships are temporary. What happens when that relationships is over?

Even if the agency delivered a pristine project, they’re potentially still leaving the company in a tight spot.

Some maintenance will have to happen and if you used a bleeding-edge Technology, you’re making it harder and more expensive for the client to hire a full-time developer to come onboard and do the maintaining.

Think of it as temporary vendor lock.

Clients aren’t completely innocent, either.

We’ve also noticed requests for proposals that specifically say to build the project using Node.js (or another bleeding-edge Technology).

We understand the attraction. The web buzzes with the next best thing, and clients want the next best thing now.

However, they need to be aware of the consequences.

What’s the solution?

It’s simple really. Communication. Explain the risks. Clients willing to take the risks may reap the benefits that the Technology offers. And check yourself. Does this project really benefit from being built in Node.js?

At this point, chances are it won’t.

There are reasons you don’t see Formula One cars on the US-1. Sure, they have their place, and when you need maximum performance, that’s what you go for.

But ask yourself if you’re using a grenade to eliminate and anthill.

Bleeding-edge technologies work best when they’re used for a specific purpose with a transition plan in place.

For example, if we know that an application we’re building will require significant asynchronous or real-time processing, we’ll give Node.js a serious consideration to supplement Rails as the backbone (as opposed to EventMachine).

However, in an ideal situation, the client contracting us will have a developer on staff whom we can train as we go to eliminate the negatives we mentioned above.

So, keep using Node.js, you non-evil people. Maturity requires adoption. But make sure you consider the negatives and the risks to your client before you run with your latest toy.

You may poke some eyes out.

About Cody Swann

Cody Swann is an entrepreneur, developer, strategist, banged up ex-football walk-on, retired body builder and former journalist born and raised in South Florida. He currently splits his time between his hometown of Stuart, FL and Los Angeles, CA. Cody founded Gunner Technology, a highly sought after digital agency, specializing in helping companies maximize profits through custom web development, technology efficiencies, social media strategy and search engine marketing.

As a manager and developer at ESPN for nearly six years, Cody led development and vision for two of ESPN’s most popular online features: Sports Scoreboards and GameCasts. Additionally Cody oversaw all aspects of MyESPN and ESPN’s social network, ESPN Fan Profiles. Cody worked with Technology, Editorial, Sales, Marketing and relevant business stakeholders to mold ESPN’s social media strategy, develop custom applications for it and execute it. Under his direction, ESPN successfully ported large portions of its core product from a proprietary Java stack to an open source Ruby on Rails stack, capable of standing up and performing under the tremendous load world's most popular sports site delivers.

Cody began forging his technological knowledge more than 10 years ago, developing and designing websites in college. His development work has included web development, web design, content writing, digital photography and digital video production for award-winning sites like Gainesville.com, GatorSports.com and ESPN.com. He has helped set digital strategy and direction for companies in the New York Times Regional Newspaper group, ESPN, ABC and Disney.

He is a recognized expert in web development, social media strategy, search engine optimization, conversion optimization, analytics tracking and business planning. He has worked with large interactive media companies to small and medium sized businesses. Cody motivates and inspires creative teams to deliver superb, polished work under tight deadlines.

Leave a Reply