# Is it better for Discourse to use JavaScript or CoffeeScript?

**URL:** <https://meta.discourse.org/t/is-it-better-for-discourse-to-use-javascript-or-coffeescript/3153>\
**Category:** Development\
**Created:** [February 15, 2013, 1:34pm UTC](https://meta.discourse.org/t/is-it-better-for-discourse-to-use-javascript-or-coffeescript/3153 "2013-02-15T13:34:20Z")\
**Posts on this page:** 1\
**Showing post:** 21

<div class="post-metadata">

**Author:** ![stabbylambda](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/stabbylambda/32/103868_2.png) [@stabbylambda](https://meta.discourse.org/u/stabbylambda)\
**Post date:** [February 16, 2013, 1:05am UTC](https://meta.discourse.org/t/is-it-better-for-discourse-to-use-javascript-or-coffeescript/3153/21 "2013-02-16T01:05:57Z")

</div>

Aside from the points that have already been discussed, I’ve noticed that writing Ember apps in CoffeeScript also just feels a little off. Several of the niceties of Ember, like computed properties, are expressed as extensions on the JS Function prototype:

```
MyApp.president = Ember.Object.create({
    fullName: function() {
      return this.get('firstName') + ' ' + this.get('lastName');
    }.property('firstName', 'lastName')
  });

```

This requires you to use parens in CoffeeScript, which kind of defeats the purpose of the significant whitespace:

```
MyApp.president = Ember.Object.create
    fullName: (->
     @get('firstName') + ' ' + @get('lastName')
    ).property('firstName', 'lastName')

```

In addition to that, there’s the CoffeeScript class vs Ember extend() stuff, CS iteration vs Ember enumerables, etc. I just think there’s enough of an impedance between using CS and using Ember to make it more appealing to just use pure JS with Ember.

---

_[View the full topic](https://meta.discourse.org/t/is-it-better-for-discourse-to-use-javascript-or-coffeescript/3153)._
