This is just development.
Mattias Petter Johansson

Composition in JavaScript is quite different from composition in Java or C++, where composition becomes class functions. These languages do not have JavaScripts ability to arbitrarily add variables and functions to an existing object.

Languages and environments are tools. I reject the idea that they do not matter and they are all the same. The reductio ad absurdum argument is that we could all be using assembly language.

Building large software systems is very difficult and you need all of the help you can get. Java, Groovy and Scala give you tools for structuring and easily building large systems. This is just not present in JavaScript.

I think that you should use the best language for the job. nderground could not have been built without JavaScript. We use JavaScript on the client side. JavaScript supports out automation, our processing and our editing (via the Redactor editor). On the backend we use the Grails development environment, Groovy and Java.

We are very interested in security so we don’t use PHP.

We wanted to leverage the massive Java ecosystem, so we didn’t use Ruby on Rails.

As a matter of taste, we like Java more than Python, so we used Grails rather than Django (but Python is a great choice in many cases because of the large Python ecosystem).