7 ms·
Thanks for the efforts and the framework. Unfortunately, I cannot properly appreciate it for the following reason: Please don't call something JavaScript if it
by eldude 15y ago
Thanks for the efforts and the framework. Unfortunately, I cannot properly appreciate it for the following reason:
Please don't call something JavaScript if it's actually all in CoffeeScript (even if it's just the documentation). A lot of us have not bothered to learn CoffeeScript and a good many of them have no intention of doing so. My time was wasted following a link that says "JavaScript", a language I know well, only to discover it was in CofeeScript, a language I have not bothered to learn, nor do I plan to anytime soon. I would down vote this if I could merely for the mislabeling. If you love CoffeeScript enough to use it as you obviously have, own it, advertise it openly and stop being in denial that CoffeeScript as a written language is different from JavaScript as so many CoffeeScripters seem wont to do.
- krmmalik 15y agoIt was the coffeescript that put me off too. I dont have anything against CS, i just dont want the additional overhead of having to learn it
- franze 15y agolearning is the overhead with the best return on investment.
- zalew 15y agonot everybody wants to jump into learning solutions that solve other people problems, prefer to learn the ones that solve theirs. if someone doesn't need coffeescript, there's no ROI.
- pooriaazimi 15y agoBut you really don't need to learn CS... It's just a slightly different syntax that you can learn literally in 20 minutes, but makes your code more robust and clean (eg; no more comparing against "undefined" and then nil, just put a ? after variable name - it saves you time and you don't accidentally forget about it. It makes your code better) Nobody would argue about his comment if CS wasn't such an easy language to learn. If you know PHP, you can learn writing in ASP.net in a week, but if you know JavaScript, you can sing in CoffeeScript in an hour.
- JangoSteve 15y agoIf you think that tower may solve your problem and the only obstacle is that it's written in coffeescript, then learning coffescript is now solving your problem.
- eldude 15y agoTo the down voters: My comment is civil and explannatory. You may not like my sentiments, but down votes are not intended for unpopularity. Not only that, but in this case, my comment serves to reinforce the standards of HN regarding mis-titling of links and it is being downvoted. A house divided against itself cannot stand.
- pkulak 15y ago"a language I have not bothered to learn, nor do I plan to anytime soon" That's why I down voted you. Is a JS compiler beneath you? Fine. Then post about that. Don't try to slip it into a veiled complaint about title accuracy.
- ericflo 15y agoHis statement is factual, I see no veiled complaint in the text you've quoted.
- sausagefeet 15y agoSo it is fair to call any library written in C an ASM library? C compiles to ASM (in most implementations) after all...
- pkulak 15y agoOh, come on. How can you be at all familiar with JS and not be able to figure out what a CoffeeScript snippet is doing? It's not quite the difference between C and assembly.
- malandrew 15y agoThat's not the point of his comment. It's labeled javascript when it is actually coffeescript. Call it tower.coffee, not tower.js. If I can't fork and contribute to the project in javascript, but instead have to set up my environment for coffee script to contribute, then it's not javascript. This isn't just about readability and comprehension, it's about contribution as well. If the compiled javascript is bundled in there and I can read it, fair enough. If you can't accept patches and code contributions in javascript, then that's not javascript.
- chc 15y agoIt generates JavaScript. If you want to read JavaScript, it's there for you to do.
- ctide 15y agoI think you'll have a hard time running their documentation through the Coffeescript compiler.
- chc 15y agoI know, I must have been reading way too quickly. I thought he believed the actual code had to be in CoffeeScript, so I was explaining that it can compile to relatively readable JavaScript. When I came back and reread my comment, I wanted to edit or delete it, but it was already past the two-hour mark. I do agree, it seems rather silly to have the docs for a JavaScript framework written in CoffeeScript. As sort of an apology, I wrote up a little bookmarklet to translate the page into JavaScript at http://news.ycombinator.com/item?id=3641217 http://news.ycombinator.com/item?id=3641217
- bithive123 15y agoThe irony of course being that you could have learned the basics of CoffeeScript in the time it took you to write that. If you love being ignorant of CoffeeScript enough to publicly form your identity around it then stop being in denial about your tone.
- Cushman 15y ago...you know JavaScript well and haven't bothered to "learn" the second-most-popular dialect? Take ten minutes right now and read through the CoffeeScript reference-- poof, you learned it. It is just JavaScript. Really, no one's forcing you to write it. But if you have a working understanding of JavaScript and you can't read CoffeeScript fluently, it's because you aren't trying. Just swallow your pride and deal with it already.
- untog 15y agoyou know JavaScript well and haven't bothered to "learn" the second-most-popular dialect? Come on, what kind of percentage are we talking about here? Tiny. Absolutely tiny. Take ten minutes right now and read through the CoffeeScript reference-- poof, you learned it. It is just JavaScript. Well, you haven't learned it unless you memorised absolutely every aspect of it, which you're unlikely to do on a first read. And it isn't "just" JavaScript- it has significant whitespace, different object notation, etc. etc. Don't get me wrong, I've started using CoffeeScript and I like it. But it's a tiny, tiny minority language. There are a ton of JavaScripters out there that haven't learnt it because they don't need or want it. That's their choice.
- jashkenas 15y agoFor better or for worse, not so "tiny, tiny" anymore: http://redmonk.com/sogrady/2012/02/08/language-rankings-2-2012/ http://redmonk.com/sogrady/2012/02/08/language-rankings-2-20...
- eldude 15y agoI wonder how much of CoffeeScript's prevalence on Github can be contributed to existing projects ported from JavaScript. Either way it's not a particularly important point as CoffeeScript is a "dialect" as everyone likes to say and not a language, so this will likely always more or less be the case, surprising nonetheless.
- phillmv 15y ago>Well, you haven't learned it unless you memorised absolutely every aspect of it Oh man! I guess I don't know any programming languages whatsoever.
- phzbOx 15y agoCoffeeScript directly compiles into JavaScript. The fact that the source code is written in CS does not mean you can't use it with JS. By comparison, think about Python. Some libraries use C for performance gain. Does that mean you can't use them with Python? No. These are still perfectly valid Python libraries.
- yeswecan 15y agoThat's a terrible argument. I still write and read Python with libraries that use C (for example: the entire standard library). If you want an example that fits the point you are trying to make, consider Lua/C, where you _can_ mix the two easily. The point is still flawed, though - CoffeeScript is not JavaScript, and I have no interest in learning it (I'd rather spend the time learning to write better JS myself). I, and everyone else with my mindset, has their time wasted by this mislabelling; we would not have clicked through if the title said CoffeeScript.
- phzbOx 15y agoBut who said you had to use CoffeeScript? You can perfectly use this library by writing standard javascript. The author decided to write the source code of the library in CoffeeScript, which then compiles to perfectly valid javascript that you can import. The analogy about Python is that you don't have to know C to be able to use a Python library written in C..
- bstar77 15y agoIf I had the ability to downvote your post I would have. Your comment "I have not bothered to learn, nor do I plan anytime soon" goes against everything I believe in as a web developer. Sure, I may not be proficient in everything, but I try to have a working knowledge of all of the latest popular technologies so that I am not ignorant to what's going on around me. Like others have stated, 30min is all you need to really grasp what's going on in coffee script. Is that kind of time investment really that challenging to come by?
- pooriaazimi 15y agoI didn't downvote him because of his civil comment about misleading comment, but because of his un-hackerish tone about him not planning to learn something that is completely relevant to his career (his description in his page is: I'm a JavaScript and Node nerd). Maybe I shouldn't have done it, but I really have nothing against him. I truly wanted him the best and downvoting his (IMO) wrong comment was an effort to make him understand that what he is doing is wrong. We are all online friends and friends ought to warn each other when they see their friend is doing something stupid (I really think writing any script longer than 20 lines in JavaScript instead of CoffeeScript is stupid).
- deleted 15y ago[deleted]
- zalew 15y ago> I really think writing any script longer than 20 lines in JavaScript instead of CoffeeScript is stupid) I think OP will get by without your career advice pretty well.
- pooriaazimi 15y agoYou can never know! That's what I'm saying. it's not like learning a new programming paradigm (like functional) that will take days or weeks, it will take 10 minutes reading www.coffeescript.org front page to see if my career advice is right or wrong. You can't call yourself a nerd without knowing the most thriving dialect of that language... Specially if you're young and reading a hacker website. I realy don't want to get into a virtual pointless argument, but just out of curiosity: do you know CoffeeScript? Because it's very strange to me that someone might be against using CoffeeScript and condemning it like that (its debugging is worse than JS, but on every other front it's the clear winner). if you're not familiar with it, I suggest you take a look at CoffeeScript.org to see how and why it differs from JavaScript.
- eldude 15y agoI'm going to reply to my own comment in order to address the numerous responses all at once. First, I'll establish some modest authority on the subject by pointing out that I've worked directly with Tim Caswell, who helped create CoffeeScript, at multiple jobs now. He's explained to me how they developed it and we've discussed the merits of it. Second, I don't believe CoffeeScript is lacking merit. I make no claims of such. I'm actually happy that CoffeeScript exists in that I hope it brings more people into the JavaScript fold so long as it does not detract in ways like this. Third, I understand what CoffeeScript is and how it works, but have chosen not to learn it. That's my prerogative and I make no claims to the superiority of that choice apart from my choosing it. Fourth, I _could_ talk about how time is not free. Installing a CoffeeScript compiler, learning CoffeeScript, undertaking the mental frame of reference change necessary to switch between context, are equally not free, but I don't feel the need to further this defense as it has been made many _many_ times before, especially here on HN. In reality, this is about none of the above. This is labeled as JavaScript when _it is not_. I repeat, CoffeeScript is _not_ JavaScript. To the many responses this will incite, I'd direct you to my points above. This is not intrinsically a bad thing. Far from it, if CoffeeScript was not different, it would not be relevant. It is its difference that makes it relevant. I will likely eventually learn CoffeeScript when it becomes necessary or worth it. In fact, I attempted to previously, but setting up auto-compilers, etc... took about 20 minutes too long, and given the insufficient value proposition, I didn't bother to finish learning it. I come across many node/JavaScript/Github projects regularly and don't have the time to bother learning or using 90% of them, but I bookmark them because they are intriguing and I hope to have them if and when I do need or want to use them. That's 9/10 _JavaScript_ projects that I don't get to just because I don't have the time. I'll repeat my main point because that is all my original comment was ever about, if CoffeeScript is not different, there's no point in it existing; if it is different, then it's a positive reason otherwise it would receive no attention; if it is positively different, then why not market it as such? It's obvious that those who point out that CoffeeScript is a dialect and compiles to JavaScript so it is therefore an acceptable mis-labeling are attempting to have their cake and eat it too at the expense of people like me that either have not taken the time to learn it yet, or do not care to for _numerous_ philosophical reasons which I defend are quite valid, though being a pragmatist, ultimately will not factor into my reasoning.
- d4tocchini 15y agoLikewise, I care not for, nor to learn, PHP, Ruby, Java, Python etc., but I can understand whatever I need to. If you're a half-way decent js dev, it's hard to believe CoffeeScript could be a cognitive stumbling block for you. Inferring custom baked inheritance in js libraries surely is more difficult. Of course CS isn't for everyone, but a hard stance that a CS lib can't be considered 'JavaScript' seems more of a political stonewalling than an intelligent conversation. But, I've come to expect such thorny defenses cultivated by a coterie of stern acolytes who have devoted themselves to a particular flavor of programming.
- eric-hu 15y agoNo offense to your original statement, what you said makes sense--the link was mislabeled in a common way. I just want to point to this comment and its children as the reason that HN should have comment thread collapsing. There's no reason the majority of people checking the comments for this link should have to see the language debate. It's not relevant to the Tower framework. The only reason this debate is so high up is because people chose to upvote the original comment.