Why are there so many programming languages?

A few friends who aren’t in software have recently asked me why there are so many different programming languages out there, and what makes them distinct from one another. They’ve accompanied these queries with rather delightful misconceptions such as “XML sounds like the adult version of HTML”, and “Ruby on Rails, is that like for women?” By the way, the latter is totally understandable, given that there’s a character named Ruby Rails, after the programming language, in the GoldieBlox engineering toy set targeted towards girls. As I’ve attempted to answer this question to them, I’ve come up with a few useful analogies such as European languages and car transmissions. I’d like to share these out more widely, so that a broader audience can get a window into the strange inner workings of the software world. Comparing programming languages to natural languages The dominant languages of the world change as new ...(Read More)