Live data from Hacker News

Announcing CoffeeScript 2

coffeescript.org

21–30 of 220 posts

Re: Announcing CoffeeScript 2

#21
post #10

I can't imagine CoffeeScript will see much adoption these days as most people seem to think ES6+ is "good enough". I miss how concise functions are in CoffeeScript and also miss being able to do object literals without the braces. But there's no chance at all in convincing my team to adopt it, as modern JS really is "good enough".

And that's totally fine! I don't get a chance to use it much these days either. But for the folks who still do — or have existing codebases — this update is for you.

Thank you! I love CoffeeScript! It's been so sad to see it slowly fade away in favor of, in my opinion, inferior and uglier things. I -- and many others, I'm sure -- appreciate this update a great deal. I hope I get to write beautiful CoffeeScript code again soon.

To parent post, why should we settle for "good enough"?

Re: Announcing CoffeeScript 2

#22
post #12

> So a CoffeeScript => is now output as => Wait, using the arrow function notation doesn't bind this , arguments , super , or new.target [1] in javascript, as opposed to the normal function syntax. Not being a user of coffeescript, did coffeescript not do that already, or did they also throw in code to change that in the generated code? It seem to me it would make sense to map items that match conceptually, not just…

In coffeescript 1.x fat arrow functions already bound "this", although binding "arguments" is an actual change.

http://coffeescript.org/#breaking-change-fat-arrow

Re: Announcing CoffeeScript 2

#23
First congrats, this is hard-work. Second I implore people not to use a language where the designers think breaking changes are OK, while giving no real advantage over plain modern Javascript or the use of a linter. Worse, since CS has slighly different semantics than JS it will lead to so much confusion. Coffee Script served its purpose, now let it rest.

Re: Announcing CoffeeScript 2

#24
post #10

I can't imagine CoffeeScript will see much adoption these days as most people seem to think ES6+ is "good enough". I miss how concise functions are in CoffeeScript and also miss being able to do object literals without the braces. But there's no chance at all in convincing my team to adopt it, as modern JS really is "good enough".

And that's totally fine! I don't get a chance to use it much these days either. But for the folks who still do — or have existing codebases — this update is for you.

Hey, I'm working on a template language that compiles into Redux + IncrementalDOM. Part of it involves a pipeline syntax similar to underscore or lodash. I'm wondering what you would consider a modern equivalent of those two libraries using native methods, iterators, etc. or if vanillajs is sufficient now.

If anyone wants to take a look it's at tmzt.github.io/isymtope and github.com/tmzt/isymtope

The #cleanup-symbols branch is much further along and has a mostly working TodoMvc.

Re: Announcing CoffeeScript 2

#25

Jeremy, First off thank you for Underscore, Backbone and CoffeeScript. Your work really has helped me and my development team. This question is a little off topic but one I've been wanting to ask for a long time: Last year you took a year off from The New York Times to ride your motorcycle across the Western Hemisphere. Just recently you were hired back at the paper, doing what it appears to be the same thing in the…

I can't answer for him. but it would seem to me that there is a pretty universal shortage of quality developers, much less superstar developers familiar with your existing codebase. Rehiring him would be a no-brainer.

That is a good point. The NYT is responsible for other awesome tools: d3.js, ai2html, etc.

I'm sure if the company has a person who creates a tool that is used all over the world under its watch, they would allow that person to take as much time off as he or she needs.

Still, I know people who are --- no pun intended -- the backbone of codebases at their company, and taking a year off and being rehired is out of the question.

What's to stop the company from finding a replacement who can be up to speed with the code in a short amount of time?

Re: Announcing CoffeeScript 2

#26
So great to see a good release after all these years. Congratulations to all!

I'm curious though about what happened to the Kickstarter project that took a few grand to write what was to be "CoffeeScript 2" at the time - did any of that code end up in this release?

Re: Announcing CoffeeScript 2

#27
post #10

I can't imagine CoffeeScript will see much adoption these days as most people seem to think ES6+ is "good enough". I miss how concise functions are in CoffeeScript and also miss being able to do object literals without the braces. But there's no chance at all in convincing my team to adopt it, as modern JS really is "good enough".

The only reason most people used CS was short hand function declaration and classes, It really made writing javascript easier as dealing explicitly with prototypes is a pain in the ass AND it also eliminated differences between browsers when it came to JS implementation (yes IE8 was still a thing back then).

All these things are irrelevant today.

1/ Most of CS features are supported by javascript

2/ ECMASCRIPT spec is big and complex. Learning another syntax on top of something every front end developer should know is a wasted effort in my opinion.

Re: Announcing CoffeeScript 2

#28

Jeremy, First off thank you for Underscore, Backbone and CoffeeScript. Your work really has helped me and my development team. This question is a little off topic but one I've been wanting to ask for a long time: Last year you took a year off from The New York Times to ride your motorcycle across the Western Hemisphere. Just recently you were hired back at the paper, doing what it appears to be the same thing in the…

Happy to answer, although this is a bit of a funny forum for it:

From a work perspective, it's pretty simple. I quit, and then was rehired to the same position a year later.

But The Times' Graphics Desk was super nice about it. We had a handshake agreement that I'd come back when I got back, and they even lent me a laptop to maybe file some travel-ish bits and bobs from along the road. So in that sense, it was partially justified.

In the end I didn't end up writing anything for them for a few reasons: I didn't want to turn the ride into work; I wasn't on my best NYT-standards behavior (booze, bribes, women) — well, one spectacular woman, and we're married now; and finally, I personally hew somewhat to the Janet Malcolm attitude:

“Every journalist who is not too stupid or full of himself to notice what is going on knows that what he does is morally indefensible. He is a kind of confidence man, preying on people's vanity, ignorance, or loneliness, gaining their trust and betraying them without remorse.”

Especially with respect to travel writing. You can do it right, but you really have to take the time and be invested and involved. And I was riding to follow the seasons and wasn't.

Ultimately, even though the industry as a whole is in decline, the NYT and other world-class news sources are still strong, and in some ways, getting stronger. In particular, the visual journalism The Times publishes every year keeps pushing the state of the art.

Re: Announcing CoffeeScript 2

#29

Earlier quoted context omitted.

And that's totally fine! I don't get a chance to use it much these days either. But for the folks who still do — or have existing codebases — this update is for you.

Thank you! I love CoffeeScript! It's been so sad to see it slowly fade away in favor of, in my opinion, inferior and uglier things. I -- and many others, I'm sure -- appreciate this update a great deal. I hope I get to write beautiful CoffeeScript code again soon. To parent post, why should we settle for "good enough"?

> To parent post, why should we settle for "good enough"?

Because it's an actual standard and benefits from wider mindshare and support.

Re: Announcing CoffeeScript 2

#30
post #12

> So a CoffeeScript => is now output as => Wait, using the arrow function notation doesn't bind this , arguments , super , or new.target [1] in javascript, as opposed to the normal function syntax. Not being a user of coffeescript, did coffeescript not do that already, or did they also throw in code to change that in the generated code? It seem to me it would make sense to map items that match conceptually, not just…

Coffeescript's => binds this. Javascript's => also binds this (more or less)

Seems to map fairly well conceptually.

Post reply on HN