>The point is, a language’s popularity should not determine its usefulness. [...] More importantly, we need to stop treating them as fads, religions, or special memberships to the cool kids clubs.
I think a lot of debate about "popularity" boils down to 2 different meanings of "popular".
The folks defending a language that's losing "popularity" are thinking of "popular" like a high-school prom queen type of popularity. E.g. Maybe the language is no longer the prettiest girl at the dance but I don't care and nothing you can say will change my mind!
But as I tried to explain in my previous message about ColdFusion popularity[1], others are using the word "popular" as an imprecise proxy for up-to-date-language-I-can-easily-get-a-job-in. E.g. Is this language widely used enough where I can tap a vast community's help to solve problems? In this 2nd meaning, "popularity" does indeed determine its usefulness.
An example is Python being "more popular" than Lisp. Again, don't think of "prom queen popular" to trigger defensive essays; instead think of "ecosystem popular". Here's an excerpt[2] from Steve Huffman about migrating Reddit from Lisp to Python:
>If Lisp is so great, why did we stop using it? One of the biggest issues was the lack of widely used and tested libraries. Sure, there is a CL library for basically any task, but there is rarely more than one, and often the libraries are not widely used or well documented. Since we’re building a site largely by standing on the shoulders of others, this made things a little tougher. There just aren’t as many shoulders on which to stand.
> Node.js, as a language, is almost worthless without its immense open-source ecosystem. You won’t find any real-world applications running on Node without the use of dozens or hundreds of npm libraries simply because Node is not useful in and of itself.
Nonsense. It's a general-purpose programming language like any other. JavaScript isn't my favorite language in the world, and I agree that there are a lot of packages that make working in it a lot nicer, but come on.
If the ecosystem doesn't matter at least as much the language, why isn't Deno taking the world by storm, given that it fixes a lot of Node's problems and that it supports Typescript natively, which is a "better Javascript"?
Deno by itself isn't useless, but without an ecosystem, it clearly isn't that useful either.
I think the point is fair, but you could substitute "Node.js" with any language, and "npm" with "Standard Library/Underlying Framework". The ecosystem is as important as the language.
Great to see several articles on Basic and Visual Basic in the space of a few days. I think VB and VB.Net (Pre WPF) as well as the ubiquitous VBA were very popular with that population of coders that is often ignored I.e. folks whose primary job is not programming but need to develop tools to facilitate their job. Many of these folks live on trading floors and investment teams, where either they cannot rely on timely solutions from their IT group, or simply smaller shops that have no developers on-hand. Many such folks have switched to Python, which unfortunately lacks easy GUI design tools. I had a lot of fun with VB6 and VB.NET, which I used to code quant apps, relying on compiled matlab DLL’s for the computational bits.
From what I recall, Malwarebytes (which is more or less the antivirus package to use if you're on Windows) is written in VB .NET. It using .NET in lieu of a native language gave it a leg up on certain other insecurely designed C++ based AV packages where it was possible for malware to exploit the AV scanning engine as a vector for arbitrary code execution.
Visual Basic got torpedoed by Microsoft during the .NET introduction. VB.NET and Visual Basic just aren't the same language. Visual Basic would have been much better off not to be included and remained a separate product. Microsoft wanted it as part of .NET but not enough to make it anything but a C# skins.
VB would have died immediately, as it should have, if MS didn't bring it along on the .NET ride. I've spent thousands of hours maintaining code I knew (with 100% accuracy) would be dead in less than 5 years, simply because it was VB, because of MS' choice. Anyone that chose to be an eternal beginner didn't deserve to keep being a professional developer, but MS handed them that opportunity for a few years. I'm glad it's over.
General purpose programming language is general purpose programming language. There's nothing unique about VB other than it's kinda looks like English to the reader. Just the reader. Yes, the programmer is often the reader, but the reader is often not the programmer. The English-like reading gets people over one relatively small barrier to entry which is "this looks foreign to me, I'll never understand it". Day 2 of VB is "this looks like English, but it's clearly not". At that point, it should be obvious that the language is optimized for the beginner, not the intermediate and certainly not the expert. When most people can qualify as intermediate in any language in less than a year, it should be obvious the design choices are terribly skewed in the wrong direction.
I think a lot of debate about "popularity" boils down to 2 different meanings of "popular".
The folks defending a language that's losing "popularity" are thinking of "popular" like a high-school prom queen type of popularity. E.g. Maybe the language is no longer the prettiest girl at the dance but I don't care and nothing you can say will change my mind!
But as I tried to explain in my previous message about ColdFusion popularity[1], others are using the word "popular" as an imprecise proxy for up-to-date-language-I-can-easily-get-a-job-in. E.g. Is this language widely used enough where I can tap a vast community's help to solve problems? In this 2nd meaning, "popularity" does indeed determine its usefulness.
An example is Python being "more popular" than Lisp. Again, don't think of "prom queen popular" to trigger defensive essays; instead think of "ecosystem popular". Here's an excerpt[2] from Steve Huffman about migrating Reddit from Lisp to Python:
>If Lisp is so great, why did we stop using it? One of the biggest issues was the lack of widely used and tested libraries. Sure, there is a CL library for basically any task, but there is rarely more than one, and often the libraries are not widely used or well documented. Since we’re building a site largely by standing on the shoulders of others, this made things a little tougher. There just aren’t as many shoulders on which to stand.
[1] https://news.ycombinator.com/item?id=19992813
[2] https://redditblog.com/2005/12/05/on-lisp/