Lowest price ever! Learn Generative AI for 48% less!
Get my discount+ 11
[Part 1]
Its a question that I m seeking answers as well. My answer will be bit biased on JS side & based Google as an example. IMO these factors :-
- Big Companies (Yes) After their decisions majority follows their footsteps. When Kotlin was made one of the official language at Google then many small companies followed and they picked Kotlin for their new projects but domains with tight regulations like Healthcare and Aerospace will stick to old well tested technologies.
- Framework ( Yes) : On 2008 Google launched V8 with chromium browser. Fastest JS Engine of the time. It catapulted the practicality aspect of JavaScript in many domains and because of that server side framework Nodejs seemed plausible.
To my knowledge V8 was the greatest milestone in JS growth as evident from the 2008 chrome launch event at Google.
Also chromium framework played a key part the UI base for every desktop application that's y we can make applications on JS. Electron framework.
Example:- VSCode, Ramme Instagram client
+ 9
[Part 2]
- Simple syntax and good architecture: ( yes)
Its interesting to know that Nodejs creator Ryan Dahl moved to GoLang because of its clean architecture and abstractions. He is currently working at Google as a Research Scientist on the Brain Team. As per him when working in the server side we shouldn't be bothered with unnecessary details, GoLang does a great job in abstracting away those unnecessary details from the user. ( I might have misinterpreted him but plz refer to his video "10 things I regret about Nodejs").
So if a language has clean syntax and better architecture then it ll scale up like a charm. C# is definitely a best example for this.
In negative examples we have PHP, as per many professionals - "a bad choice on scalability".
Good programmers or language experts will do well even in bad languages by implementing cleaner architecture/ patterns themselves, but the goal of a language should be that even mediocres should do well.
+ 8
rudolph flash For every plausible answer provided, there will likely be an example of another language of tech stack that will be popular for a completely different reason.
I'll reflect on two strong influencers that come to mind.
1. Enterprise Businesses:
Expanding on what Morpheus already covered, big businesses will impact the popularity of a language or tech stack based on the availability of commercial support, size of community, maturity, and licensing.
2. Media / Student Hype:
Then, there are other influencers that drive popularity that make no sense for professional developers and simply aren't reflected in what we've seen in the real world.
The greatest example of this is the massive hype of Python being this highly popular language that's everywhere in all companies, etc, etc,
However, I joke with many developers in my network on how very few of us use Python on business critical applications and don't know where the hype is coming from.
(continued...)
+ 8
Yet, you can read countless articles, surveys, forums, etc, and you would think Python has made it's way into every facet of life for every developer. In reality, I believe that Python has become a strong language among niche slices of software development related to data sciences, it's hugh among academia and students, and it's big among tech bloggers who might be reflecting on the buzz more than reality.
I'll stop rambling since I can't tell if I'm making sense at 3:30am. I may follow up tomorrow. 😉
+ 8
[Part 3]
Good documentation(No) is must, but even if it is not awesome, we ll eventually have a good Samaritan who will update the docs or create a better documentation.
Revolutionary new quality (yes but no) - I don't know of any revolutionary quality that any language is bringing, all new languages are an attempt to revise the mistakes in predecessors but when that language itself matures it gets full of faults.
I guess it's a slow evolutionary process.
IMHO revolution might come when the underlying computer architecture changes radically, giving birth to new powerful languages. It might already be happening at some companies like intel but I am unaware of it or the language + new architecture will take time to enter mainstream.
+ 7
Tibor Santa Indeed... Not only are large companies investing in other open source projects, they are making many of their own flagship projects open source.
Then, you have open source projects that really exist to boost their commercial licensed and support revenue.
+ 4
In addition to all the arguments, I think 'open source' can also be a contributing factor for popularity.
For something proprietary to be vastly successful, it must have hell of an added value, or deal with some very sensitive or difficult problem where the solution is very hard to copy.
The notion of 'free lunch' is always prevalent in online communities, especially if someone comes from specific cultural and economic background that is less wealthy. So if you can get something for free, why pay for it?
Another side of the open source coin, is that enthusiasts willing to contribute, can actually draw satisfaction from the fact that they can make a difference to the world (however small it is), and other people can benefit from their creation.
Even big companies ride the open source train like Google, Facebook and Microsoft investing a lot of resources into projects like the development of python machine learning libraries.
+ 4
All what you mentioned really.