This is a bit tangential, but I really don't get the value of using the same language on the client and the server. The advantages I see would be:<p>1) You need to know / be comfortable with one language less<p>2) During development, you can easily move functions back and forth between the client code and the server code, progressively deciding what will be computed on the server and what will be computed on the client<p>3) You can generate, exchange, and execute code in real time between the client and the server<p><i>but</i><p>1) I don't know any programmer who's both competent and monolinguistic.<p>3) is of course insane for security reasons<p>2) I used to think this would be a thing, but once you take the approach of making the client a GUI to an API, this doesn't tend to happen. It's generally very clear what's going to be server side and what's going to be client side.