But challenge accepted. Avalander already has very good arguments in her reply. I'd like to add that Coffeescript has a rather unique history. It's not so much a programming language of its own, but rather a syntactic sugar version of Javascript. It was created by Ruby-on-Rails developers specifically "in an effort to enhance Javascript's brevity and readability" (Wikipedia), to make it more Ruby-like. You've got to know that his was in a time when you didn't have separate developers for frontend and backend and there was no ES2015.
In other words: Coffeescript is the product of backend developers, who hated Javascript (but had to use it as the output of their transpiler), and thought that the frontend is just a tiny part of their web app.
Do you think a good programming language can be the result of such a mindset? I don't. And there are lots of articles out there describing Coffeescript's shortcomings like its ambiguous syntax or how hard it is to debug. So we have good reason to say that by Coffeescript is not a well-crafted programming language.
Sometimes technology doesn't need to be good to succeed, it just needs mainstream adoption. So you could argue that it's good to learn Coffeescript in order to get a job. But that's not the case. Frontend development has changed dramatically during the past 10 years and JS is not less important (~Coffeescript mindset), but more important than ever before! So from a practical point of view it's also not advisable to learn Coffeescript.
One of the most salient features of our Tech Hiring culture is that there is so much bullshit. Everyone knows this. Each of us contributes his share. But we tend to take the situation for granted.
You have really good points, but the evil advocate has found something to reply.
Well, if everything you say is true, then learning Coffescript and the story behind it is super valuable for a programming language designer who would like to know which basic mistakes to avoid when designing a new programming language. Don't try to pretend to replace something you hate and don't really understand.
That's a tough scenario. ;-)
But challenge accepted. Avalander already has very good arguments in her reply. I'd like to add that Coffeescript has a rather unique history. It's not so much a programming language of its own, but rather a syntactic sugar version of Javascript. It was created by Ruby-on-Rails developers specifically "in an effort to enhance Javascript's brevity and readability" (Wikipedia), to make it more Ruby-like. You've got to know that his was in a time when you didn't have separate developers for frontend and backend and there was no ES2015.
In other words: Coffeescript is the product of backend developers, who hated Javascript (but had to use it as the output of their transpiler), and thought that the frontend is just a tiny part of their web app.
Do you think a good programming language can be the result of such a mindset? I don't. And there are lots of articles out there describing Coffeescript's shortcomings like its ambiguous syntax or how hard it is to debug. So we have good reason to say that by Coffeescript is not a well-crafted programming language.
Sometimes technology doesn't need to be good to succeed, it just needs mainstream adoption. So you could argue that it's good to learn Coffeescript in order to get a job. But that's not the case. Frontend development has changed dramatically during the past 10 years and JS is not less important (~Coffeescript mindset), but more important than ever before! So from a practical point of view it's also not advisable to learn Coffeescript.
You have really good points, but the evil advocate has found something to reply.
Well, if everything you say is true, then learning Coffescript and the story behind it is super valuable for a programming language designer who would like to know which basic mistakes to avoid when designing a new programming language. Don't try to pretend to replace something you hate and don't really understand.
Indeed. There is nothing so bad that it couldn't at least be a bad example.