I got into a lively Corona induced debate the other day with my good friend JR about the general usefulness of languages on the programming landscape. I was being my usual bitter jaded self while he was the unabashed proponent of the technical white knight.
I was arguing that the language you’re already using is probably, around 99.98% of the time, perfectly fine for whatever business challenge you’re facing. In the process I completely dismissed nearly everything else out there. This was not in any derisive way, just that the ceaseless introduction of technologies and features is more often a burden to business software development stretching the continuum of supportability eventually to the breaking point.
During and afterwards, I started to think about how pointless the discussion in many ways to focus on the languages we all use because it seems to me that the trend for a number or years has been to make the specific language almost irrelevant. A cursory glance at the landscape has Microsoft gobbling up any notable language to run on the CLR and other popular languages, such as Ruby, becoming merely implement details of their popular frameworks, Rails.
Yet, my more interesting thought was how the popularity and use of programming languages is reflective of the world’s spoken languages. My mother tongue is English which I equate to the C line of languages. From the Old English of C itself to British Java and American C#, with it’s constant companion Visual Basic (Spanish), ECMAScript from Australia, Asian J#, plus countless frameworks and dialects, these languages represent the broadest and most capable programming mechanism we have. As a near world traveler, I can safely say that anyone I have ever wanted to talk to spoke English, just like every programming problem I will likely ever need to solve can also be done in English, or rather C# and maybe even Java, with a little Scripto-lingo thrown in there.
Before you get too ahead of yourselves, I am not a xenophobic zealot. I am perfectly well aware that certain business goals require do require a domain specific language to be successful, so if your business is oil, you’ll have a corps of Arabic speakers. If you’re mining diamonds, Swahili, Russian or Canadian is in the toolbox, and if you make high fashion, Italian is a must. But all of these are highly specialized industries with their own rules, practices and idioms.
The bulk of the worlds economic industries, Agriculture, Retail, Manufacturing, Services all pretty much do the same thing, over and over again. Sure, it’s cool and trendy to be different, but in this context of human history, I just don’t see any language giving a meaningful and sustainable challenge to C> and English.
*This is the obligatory "Use whatever makes you happy!" part. After all, I’d rather be fishing anyway.