Abstract:Looking back on the rise and fall of programming languages in recent decades, it seems to reflect the demise of the entire information industry. If you want to venture into the torrent of technology, it is more important to find and master one or two programming languages.
TIOBE recently updated its July list of programming languages, and perennial champions C, Java and Python remain at the top of the list. Unexpectedly, R language rose to eighth place, setting a record for the best language in history. And with the subsequent rise in the industry’s demand for data statistics and mining, the popularity of R language is quite overwhelming.
However, as a tool for programmers to eat, programming languages also form a kind of chain of contempt, the atmosphere of the major forums filled with swords, difficult to agree. No wonder many beginners wonder why there are so many programming languages out there, and what should I learn?
Looking back on the rise and fall of programming languages in recent decades, it seems to reflect the demise of the entire information industry. If you want to venture into the torrent of technology, it is more important to find and master one or two programming languages.
The golden age of programming languages
“Someone didn’t like curly braces and developed Python; Someone came up with JavaScript over a weekend; Some people invented C because they were bored at work. There is a lot of gossip about programming languages, but in the end, a programming language must be driven by demand.
From machine – oriented languages, process – oriented languages to object – oriented languages, the history of programming languages has also experienced from complexity to simplicity. The rise of the Internet in the 1990s is undoubtedly the golden age of programming languages.
To paraphrase Wikipedia, “the 1990s saw no major innovations, mostly reorganizations or variations of previously conceived ideas.”
But it was an era when programming languages began to shine.
At that time, the most mainstream programming language was C/C++ language invented by two big men in Bell LABS. The carrier of the Internet, computer infrastructure, was written with this language, including Linux operating system, database, compiler and so on.
As long as there are computers, C/C++ will certainly have their place.
But there are also stories of late arrivals, in this case the fallen giants Netscape and Sun.
In 1994, Netscape released a true Web browser called Navigator, but limited by the technology at the time, Navigator was more of a local display page than anything interactive. Coincidentally, Sun launched their Java (or Oak language) in 1995, with “write once, run anywhere” features. Netscape saw this potential and chose to partner with Sun.
Java at the time could be embedded into web pages as scripts for interactive functionality, known as Java applets. However, Netscape decided that Java was still too complex for web scripting, and programmer Brendan Eich developed Javascript in 10 days, which is now the basis for all browser front-end libraries.
The popularity of computers, the rise of the Internet, the emergence of Web applications, Ruby, PHP and other languages have also emerged.
As the author of Zhihu “Qiang Ge Xuetang” said, “During this period, although no programming language was created, due to the participation of a large number of enterprises, programming language achieved unprecedented development and formed the basic form of today’s programming language. It also makes software development more standardized and scalable.”
At the same time, there are a number of niche programming languages waiting in the wings, just waiting to explode.
Ecology is key to Apple’s spoiler
When the iPhone 4 came out in 2010, Jobs used the smartphone to rewrite the trajectory of the Internet. The smart phone market supported by iOS and Android makes the mobile Internet the absolute leading role on the stage.
Apple has created a brand new ecosystem. As an application development language for iOS, Objective-C, which started in 1984, has gone from unknown to famous. Relying on the development of various iPhone and iPad applications, Objective-C once reached the Top 3 of TIOBE.
However, At WWDC 2014, Apple introduced Swift, a new programming language that supports writing software applications for macOS/OS X, iOS, iPadOS, watchOS, and tvOS, and announced open source support for Linux the following year.
Objective-c’s market share has declined every year since, from 12% in 2014 to 1% in 2016. As you can see from the chart below, Swift, the new language, has been growing steadily for several years since it started at zero, breaking into the ninth place on TIOBE’s list in January this year.
Although a computer language from compiler, syntax, base library to the popularity of programmers can not be achieved in a short period of time, Apple still single-hand brought Objective-C and Swift into the mainstream of programming language market, which shows that programming languages are closely related to the ecological scale of a product.
The relationship between Microsoft and Visual Basic is the same. Before the mobile Internet era, VB used to rely on the Visual development environment to become the most popular desktop development tool, and at one time had 3 million developers. And with the Windows operating system market at its edge, VB is still very popular today (sadly, Microsoft says it has no plans to evolve Visual Basic).
Back in the era of mobile Internet, Java was chosen by Android on the other side. As the Android camp grew bigger and bigger, Java was always the first in TIOBE list, and even the worst could get the second.
The longevity of a programming language, in addition to its own advantages, is also crucial to the construction of its ecology, after all, a large number of people can also become their own, which is fully reflected in the popularity of Python.
In the age of big data and AI, Python has been wiped out
While learning Python began as a catchphrase for kids, the programming language moved from IT circles to the masses.
In the era of big data and AI, Python can be said to be unique. From data analysis, machine learning, Web development to crawler development, Python can be easily solved with the help of Python.
Statistical analysts can use Python to solve data crawling and analysis problems, college students can use Python to solve renting problems…
The most important thing is that the learning threshold of Python is lower than C++ and Java. With concise syntax and mature third-party libraries, even non-programmers can learn in a short time.
R language for statistical analysis, mapping, data mining is the same, catching up with the trend of data application analysis, naturally can stand out from many programming languages.
In response to the record-breaking success of R on the list in July, TIOBE CEO Paul Jansen made it clear that two major trends were at play: One is that the era of commercial statistical languages and software packages (such as SAS, Stata, and SPSS) is over, with universities and research institutions adopting Python and R for statistical analysis. Second, statistical programming languages that are easy to learn and use are gaining popularity as COVID-19 related research requires a lot of statistics and data mining.
The Mozilla led Rust language, which was born in 2010, puts more emphasis on features such as security, storage configuration, and concurrency. Libra, Facebook’s blockchain project launched last year, was built in Rust because it was secure enough.
Rust also broke into the Top20 on the latest TIOBE list, up from no. 200 in 2012.
Taking the rise of the Internet as a dividing line, we can see that the rise and fall of programming languages are inevitably accompanied by new products and technologies. Programming languages that adapt to new technologies can regain their luster even after decades. And as the open source community grows, a good programming language can learn from others and become an up-and-comer.
conclusion
If you want to make a living as a programming language, it is recommended that you learn Java first, then Python and C++, because these three programming languages can basically solve most of the problems we encounter in our work.
So, might as well try huawei cloud launched Java development full stack growth plan, let you 0 basic entry, build Java skills system, to full stack engineer!
Finally, as Anders Hejlsberg, the father of C#, once concluded: If I had to summarize what will become of the programming language in the next ten years, first of all, I think programming language should become more “declarative”, we need to try to language programming such as elements, functional programming ability, at the same time may also seek allows users to extend the grammar, so that they can construct a domain specific language, and so on. But in general I want to emphasize that the new paradigm for programming languages is “multi-paradigm” programming languages.
Some contents of this article refer to the following articles:
1. 30 Years of IT Industry – A History of Programming Language Change
zhuanlan.zhihu.com/p/106808045
The History of Computers and Programming Languages
Blog.csdn.net/abc6368765/…
Click to follow, the first time to learn about Huawei cloud fresh technology ~