The State of JavaScript, great minds think alike

Contemporary programming language designers seem to be transcending the industry politics and showing a more inclusive attitude towards their peers. This is a good thing, especially given the vitriol that some of the most fervent adopters seem to be inclined to throw at competing camps. If nothing else, self-interest appear to have enough ‘gravitational pull’ in creating convergence where synergies might be the most desirable, this is good for all the users in the longer run.

I watched a presentation by Brendan Eich, the creator of JavaScript, as he spoke I was constantly having flashes of other famous programming language designers, namely these: Anders Heijsberg (C#, TypeScript), Rich Hickey (Clojure), Don Syme (F#), and Martin Odersky (Scala). I’m not citing for example Matz (Ruby) or Gosling(Java) simply  because I haven’t been following them lately as much as I have the others, despite my long history with Java and respect for Ruby. So this post isn’t about saying who is great, there are clearly many more I could cite including Rob Pike, (the late) McCarthy, Gilad Braha, etc, but I just don’t know as much about these other people in the context of this post. This post is simply about what I incidentally realised by closely following a few guys over roughly the same period of time.

I noticed that these folks truly embrace the community in a somewhat similar way, they all seem to be insatiably curious about how other language designers think and what they might want to borrow from others. This is a good sign for the Internet, because it means that the really heavy thinkers and influencers are less concerned about politics, they actually care about their users a lot.

The inclusive attitude of the language designers is in stark contrast with that of some their most fervent followers. It is fairly common to see articles by say a Scala or Ruby developer pouring scorn on JavaScript or PHP developers for example, and some JavaScript fans can’t thrash Java developers hard enough. Patronising is common, suggesting without any subtlety that some people must be inferior minds simply because of their choice of programming language. I obviously don’t condone such attitude, I think that great work can be delivered in any programming environment that the user is comfortable and proficient with. I didn’t mention C or C++ for example, but arguably they are the foundation upon which the Internet is built – all those Unix, Linux and Windows servers are built by C and C++ programmers, but just read what a Ruby or Clojure developer think about C or C++.

Incidentally, the programming languages that receive the most bashing (JavaScript, PHP, Java) appear to be the most successful from an adoption standpoint. C# isn’t thrashed as much from what I read, except for its origin as a Microsoft platform language – though the folks at Xamarin and their community are hard at work to make a good part of the .NET platform a first class citizen on Unix (thus Apple OSX and iOS).

It is encouraging to see that the luminaries in the industry have a more inclusive attitude than some of their users.  From Brendan Eich’s talk, it looks like JavaScript,  in its next two major versions, will gain several key features of the leading functional programming. So we should be seeing more blurring of the functional and object characteristics of the most popular programming languages, that is good for developers at large.

Brendan Eich’s talk is available at Infoq web site: http://www.infoq.com/presentations/State-JavaScript.

Leave a Reply

Your email address will not be published. Required fields are marked *