Hacker News new | ask | show | jobs
by Zikes 5175 days ago
My primary issue with CoffeeScript: people that use it insist that it's JavaScript.

Example: I see a post on HN or in one of my RSS subscriptions about a great new JS library or plugin, only to click through and see a page full of CoffeeScript examples, and the source code is written in CoffeeScript as well. This is not JavaScript. I will not learn CoffeeScript just to decipher your plugin or library and integrate it into my JavaScript project. And no amount of forceful whining on your part will convince me that it's so readable and intuitive and minimal that there is no significant learning curve there.

3 comments

It is readable. It is intuitive. It is minimal, and it has a small learning curve.

CoffeeScript syntax is very simple. It takes about a half-hour, at most, to learn using the language overview (http://coffeescript.org/), assuming you know JavaScript. There's also many well-commented examples you can learn from, such as Conway's Game of Life: http://willbailey.name/conway/docs/conway.html

Do you want to integrate a CoffeeScript library into your JS project? Compile it (many CS libs already have a pre-compiled version available) and use it. Hell, if you really don't want to learn CoffeeScript, compile it without minifying, and use the output for reference instead of the CS - it produces more readable JS than some coders I know.

It really is that simple. You don't have to use it - I only use it for large-scale projects - but you shouldn't get annoyed that people use it for their libraries. I don't want to argue this issue much, but I just don't see any difficulty involved here. I'm a terrible, still-learning coder who's still baffled by every Lisp code sample I see, but CS was super easy to grasp. If I can get it, I'm sure you can too :)

> My primary issue with CoffeeScript: people that use it insist that it's JavaScript.

Because, semantically, it is the same as JavaScript (for the most part). It just looks different.

The output is there for you to take. It is javascript.