I have always felt that Chinese programmers have a lot of ideas and willing to study hard, but I don’t know that Chinese programmers are the best programmers in the world. It may not be believed, but according to a report in the HackerRank official website, the data shows that Chinese programmers are the world's most cattle programmers. Translate this article into Chinese and share it with everyone.
If you ask the programmer who is the best, many people will definitely think it is the United States. After all, the United States has many outstanding programmers, such as Bill Gates, Ken Thompson, the father of C language Dennis Ritchie, Donald Knut. However, in recent years, the growth of programmers in India is the fastest in the world, and Russian hackers are becoming more and more sophisticated. Is there any way to determine which country's programmers are the best?
Which countries have performed the most in the programming challenge on the HackerRank website? Through the data, we hope to find the answer to the question.
On the HackerRank website, we have held thousands of programming challenges to help programmers improve their skills. Thousands of programmers from around the world have participated in these challenges, from Python to algorithms to security to distributed systems. Our community also has a ranking of more than 1.5 million developers, and the number of people in the community is growing every day.
According to our data, China and Russia have the most talented programmers. Chinese programmers surpass programmers in other countries in mathematics, functional programming and data structures, while Russian programmers dominate the algorithm field, and algorithms are the most popular and competitive areas. Although the United States and India also have many excellent programmers on HackerRank, they can only be ranked 28th and 31st.
1. Overall comprehensive rankingLet's start with the most popular test types from programmers. HackerRank programmers can choose to participate in 15 different areas, the table below shows the proportion of each field:
The leading field is the algorithm field, which is favored by nearly 40% of programmers. This area includes data sorting, dynamic programming, search keywords and other logic-based tasks. For algorithm testing, programmers can use the language of their choice, which may also explain some of the reasons why the field is so popular. The second and third Java and data architectures each accounted for nearly 10% of the total. The distribution system and security account for the lowest proportion.
So, based on these tests, which country's programmers score the highest overall?
To figure out, we looked at the average score for each country's field. Before calculating the average score, we set the scoring criteria for each field (by subtracting the average from each score and then dividing by the standard deviation, also known as the z-score), so that even if the difficulty of each field is different, But we can also score individuals in different fields and form a comparative system from the whole to the individual. In order to make the results more intuitive, we have explained a 1-100 score framework based on the principle of the z-score framework.
We counted the 50 countries with the most programmers on HackerRank and came up with the following form:
Since Chinese programmers score the highest, the score of China is taken as the benchmark score of 100. The score of Russia is 99.9, and the difference between the two countries is only 0.01. In addition, Poland and Switzerland also entered the forefront with a high score of 98. Pakistan scored only 57.4.
India and the United States contributed the most programmers to the world, but did not enter the top 25 of the list, ranking only 31 and 28 with scores of 76 and 78 respectively.
2, specific field rankingsAlthough China's ranking is outstanding, it is not just a list of all the tyrants. Which country's programmers perform best in a particular field? Let's take a look at the countries listed in various fields.
It can be seen that China is quite good in some areas. Chinese programmers have beaten programmers in other countries in terms of data structure, mathematics, and functional programming. In addition, Russian programmers also won the title in the field of algorithms that challenged the most. Followed by Poland and China in the second and third positions respectively.
How to explain the difference in the level of different countries in different fields? It may be because Russian programmers prefer to participate in algorithmic games, and will invest more energy in this field, and most Chinese programmers prefer to participate in data structure projects.
One such software engineer working at HackerRank is Shimi Zhang, one of the top ten programmers in functional programming. He is from Chongqing, China. He came to the United States two years ago to pursue a master's degree in computer science and then came to work at HackerRank.
Shimi Zhang, a top programmer from China, expressed his views on the extraordinary aspects of Chinese programmers:
"Compared with other countries, China's higher education resources are relatively small, and the way young people in China learn programming is narrow. Many extraordinary young people are really obsessed with this when they get hard-won games.
In China, many young people started self-learning programming in middle school, and even tried to solve some problems that not many people can solve in the world.
National competitions for young engineers such as NOIp (National Youth Informatics Olympic League) and NOI (National Youth Informatics Olympiad) are held. At least three people won the championship in NOI this year. This programming competition for young people is a trend in the past decade.
Moreover, there is a special rule in the NOI: if a player wins a gold medal in the NIO, he cannot participate in the Chinese team trials of the International Informatics Olympiad, which means that in the International Informatics Olympiad. The Chinese players who won the gold medals are the first to win. â€
3. The preferences of programmers in different countriesNext, we compare the time spent by each country's programmers on different challenges and then compare the average time spent by HackerRank users. In this way, it is possible to find out the preferences of programmers in different countries in specific fields.
As shown in the above table, Chinese programmers' participation in the mathematics competition is much higher than our expected average, which explains why they can top the list in this field. The Czechs seem to like the shell very much, they are the first in this single item.
4. Programming language preferences of programmers in different countriesBut apart from these two countries, the choice preferences and areas of expertise of other countries do not seem to be necessarily related. We also want to know if programmers in other countries have special hobbies for specific programming languages. For example, are Indian programmers more interested in C++? Are Mexican programmers all coding in Ruby?
In general, programmers around the world use Java at a higher rate than other languages ​​(with very few exceptions: programmers in Malaysia and Pakistan prefer C++, and programmers in Taiwan prefer Python). The Sri Lankan programmer is also the country with the highest JAVA ratio, and ranks eighth in the HackerRan.
Pakistan, Sri Lanka and Nigeria are currently at the low end, and they can learn to study Swiss perseverance. The programmer gave up the challenge without any effort in the HackerRank community and scored zero. The proportion of zero-point users in Switzerland is the lowest, and Swiss programmers can be said to be the most stubborn programmers in the world.
In fact, for programmers all over the world, no matter where you come from, you may become a Gates or Knut.
According to these data, if we hold a hacking Olympics, China will win the gold medal, Russia will win the silver medal, and Poland will win the bronze medal. Although programmers in the United States and India are commendable, if you want to enter the top 25, you still need to continue to work hard.
How does TFT work?
TFT is the abbreviation of "Thin Film Transistor", generally refers to thin film liquid crystal displays, but actually refers to thin film transistors (matrix)-can "actively" control each independent pixel on the screen, which is The origin of the so-called active matrix TFT (active matrix TFT). So how exactly is the image produced? The basic principle is very simple: the Display Screen is composed of many pixels that can emit light of any color, and the purpose can be achieved by controlling each pixel to display the corresponding color. In TFT LCD, backlight technology is generally used. In order to accurately control the color and brightness of each pixel, it is necessary to install a shutter-like switch after each pixel. When the "blinds" are opened, light can pass through, and " When the shutters are closed, light cannot pass through. Of course, technically, it is not as simple as the one just mentioned. LCD (Liquid Crystal Display) utilizes the characteristics of liquid crystals (liquid when heated, and crystallized into solid when cooled). Generally, liquid crystals have three forms:
Smectic liquid crystal similar to clay
Nematic liquid crystal resembling a fine matchstick
Cholestic liquid crystal
The liquid crystal display uses filaments, and when the external environment changes, its molecular structure will also change, and thus have different physical properties-it can achieve the purpose of letting light through or blocking light-which is just like the blinds just now.
Everyone knows the three primary colors, so each pixel on the display screen needs three similar basic components described above to control the three colors of red, green, and blue respectively.
The most commonly used one is twisted nematic TFT LCD (Twisted Nematic TFT LCD). Existing technologies vary greatly, and we will cover them in detail in the second part of this article.
There are grooves on the upper and lower layers. The grooves on the upper layer are arranged longitudinally and the grooves on the lower layer are arranged horizontally. When no voltage is applied to the liquid crystal in its natural state, the light emitted from the light emitting layer of the twisted nematic TFT Display working principle diagram of Figure 2a will be twisted by 90 degrees after passing through the interlayer, so that it can pass through the lower layer smoothly.
When a voltage is applied between the two layers, an electric field is generated. At this time, the liquid crystals are aligned vertically, so the light will not be twisted-the result is that the light cannot pass through the lower layer.
(2) TFT pixel structure: The color filter is divided into red, green, and blue according to the color, which are arranged on the glass substrate to form a group (dot pitch) corresponding to a pixel. Each monochromatic filter is called It is a sub-pixel. In other words, if a TFT display supports a maximum resolution of 1280×1024, then at least 1280×3×1024 sub-pixels and transistors are required. For a 15-inch TFT display (1024×768), then a pixel is about 0.0188 inches (equivalent to 0.30mm), for an 18.1-inch TFT display (1280×1024), it is 0.011 inches (equivalent to 0.28mm) .
As we all know, pixels are decisive for the display. The smaller each pixel is, the larger the maximum resolution that the display can achieve. However, due to the limitation of the physical characteristics of the transistor, the size of each pixel of the TFT at this stage is basically 0.0117 inches (0.297mm), so for a 15-inch display, the maximum resolution is only 1280×1024.
Tft Lcd Module,Lcd Liquid Crystal Display Module,Lcd Module,Lcd Screen Module
Shenzhen Newvision Technology Co.Ltd , https://www.newvisionlcd.com