Everyone parrots the line that programs should be written for people to read. I agree, and that's exactly why I use CoffeeScript: All of the devs in our office read and write JavaScript fluently, but code written in CoffeeScript is easier to read than code written in JavaScript.
> but code written in CoffeeScript is easier to read than code written in JavaScript.
To be fair, that's a personal preference as well. For e.g. some people prefer reading code with symbols (&&, ||) than English keywords (and, or). Also, I have seen people from a C/C++ or Java background find JS easier to read than CS.
The list comprehension syntax can be a bit confusing at first, especially if they're nested.
When I first saw them I just asked jashkenas in #coffeescript and then it made sense. Later I came to appreciate them in Python. Coincidentally I learned Ruby-style string interpolation from CoffeeScript before trying Ruby.
- @ for instance variables
- #{} interpolation
and Python:
- for comprehensions
- significant whitespace