Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

If I plan to use Node, is it a mistake to jump right in to a CoffeeScript framework like Zappa?

I haven't used much JavaScript since the early 00s, and I'm starting to see that my current app is well suited for Node.js. But as a ruby developer, coffeescript looks like it will be more my forte. But I'm concerned that if I jump right into a framework like Zappa without having spent any time with bare bones Node.js, that there will be some holes in my understanding. Is this a valid fear?

like image 903
Jeremy Smith Avatar asked Oct 08 '11 14:10

Jeremy Smith


2 Answers

To a certain extent yes. Zappa is a very new framework in very active development. I wrote an app in it in July and since then the framework has undergone two backwards incompatible updates. In an environment like that it is often helpful to be able to understand what the framework is doing behind the scenes.

Also since coffee script allows you to mix in JavaScript libraries (and Zappa itself does that) their documentation will provide examples in JavaScript - so you have to be able to speak JavaScript fluently.

On the other hand, experience with Node itself is not that essential, since Node provides a rather minimal API, which is for the most part well abstracted by Express.js (also a component of Zappa). Most of what you need to know about Node can be learned in an afternoon.

TL;DR Not knowing coffee and JS perfectly may be a problem, not knowing Node not that much.

like image 121
Jakub Hampl Avatar answered Nov 06 '22 09:11

Jakub Hampl


If by "Ruby developer" you mean "Rails developer," Zappa may be the shortest leap for you to make. It provides a lot of "magic," the way Rails does. That's good in some ways (it takes less code to execute a conventional web app), and bad in others (it can be hard to figure out where things are happening, e.g. where is a particular HTTP header being set).

So is it possible to be a good Rails developer without knowing Ruby's core HTTP library, or Rack? Sure. And similarly, you can probably be a good Zappa developer without learning much about Node's HTTP library, or Connect/Express. I expect that'll become more true as Zappa matures and its documentation expands.

like image 28
Trevor Burnham Avatar answered Nov 06 '22 10:11

Trevor Burnham