Which two programming languages are competing to get the most popular spot? What is the qualification of most programmers? What is the ethnicity and gender of most of the respondents? These are questions that are highly common in the programmers’ community and gives us an insight into their likes and dislikes.
Every year StackOverflow conducts its annual survey with similar questions. A 20-minute survey with a gargantuan sample size of programmers numbering in tens of thousands. Like every year, StackOverflow released the responses of its annual survey and in this article, we will analyze what are the facts we can safely concur upon seeing the answers of the respondents.
Most Talked about the Facts of the 2019 Survey
#1. Python has established itself as the favorite of most programmers and its evident by its rise in popularity. It’s now the second most popular language, with Rust occupying the first position.
#2. Most developers from China believe that people born in this era have a better life than their predecessors. That is the most optimistic viewpoint among all the countries. The least optimistic developers come from nations in Western Europe such as Germany and France.
#3. DevOps experts and site reliability engineers receive the highest salaries, are most satisfied with their job and are looking for new jobs at the lowest levels.
#4. At 16, most of the developers wrote their first ever code, according to the survey conducted by StackOverflow.
#5. There is also a difference of opinion as to the challenges they face based on gender and orientation. Men are more likely to say that jobs that pertain to non-developmental tasks are a challenge for them while gender minorities are likely to say that harsh and toxic environments could pose a challenge to them.
Out of the 81,335 responses that were received in the StackOverflow 2019 survey, it was concluded that 50% of the people who responded to the survey are full-stack developers. 17% of the respondents are mobile developers. High correlating pairs include site reliability engineer and DevOps specialist, front end engineer and designer, and scientist along with an academic researcher.
Open Source Contribution
Open Source is usually a key aspect developer look for the kind of technology they want to pursue. Programming languages, editors, IDEs, etc are often free sourced. Perl. Python, Java along with a plethora of other programming languages are open source while Vim, Notepad++, and Sublime texts are examples of open source Text editors.
These open source technologies are kept alive and robust with the support of individuals and communities. There are many who believe that such technologies should be open sourced and they want to be part of an active community. The reasons to contribute are numerous and each has their own reasons.
In 2019, StackOverflow conducted a survey in which out of the 88,883 responses, it was deduced that an approximate of 65% people contribute to open source networks at least once a year. Developers adept at Elixir, Rust and Web assembly are more likely to contribute while SQL, VBA, and C# are the least likely to contribute.
It is great to see developers are trying to make programming easy for everyone.
Years of Coding ProfessionallyYour experience plays a crucial role in perfecting your skills in coding. However, in the survey, that out of 74,331 responses, over 40% of people have been adept at programming for less than 5 years. Developers who use languages such as Clojure and F# has the most experience in their profession, while PHP and Python users are relatively novice.
Developers as Students
Many students around the globe prefer to learn to program in their leisure time. Sometimes students pursuing a particular major might be highly impressed with the possibilities of learning programming. Also, they might be working on their personal projects. However, the majority aren’t enrolled in any learning institute.
The StackOverflow’s survey 2019 showed that out of the 87,014 respondents, around one-quarter of them are pupils at a university or college, studying either in full time or part-time.
Method of Learning the LanguageLearning to code can either be a part of the college curriculum or can start out as a hobby, depending on your institute and geographical location. However, for those select few who possess the predisposition to learn it, they are naturally inclined towards other languages too.
Once they begin their journey of learning programming, they often try to learn other languages too. Some can opt for coding while others can use YouTube videos to teach themselves the language they want to learn.
From an approximate 84,260 people surveyed in the 2019 survey of StackOverflow, close to 90% of people respondents say that they have learned a new programming language, tool or framework by themselves, without any formal coaching or class. Around a quarter of the people also, say they have taken part in some form of a hackathon.
For any survey, knowing the demographics is crucial. Conditions might vary from nation to nation and their gender, economic statuses and other criteria can leave a huge impact on what they learn and how do they learn technologies and programming languages.
An equal representation of people from all communities serves the best for everyone’s benefit. People of color, sexual minorities, differently abled people, and others might represent a minuscule minority in the community of developers. So, StackOverflow makes this a part of their survey in order to to get a wholesome picture.In the 2019 survey, it was yet again seen that people of color were under-represented in the developers’ community. Also, women and members of the LGBT community were under-represented in the developer’s community as well. About three-quarters of respondents were below the age of 35.
Mental issues such as depression can be found among many developers, mainly from the United States.
Social Media Usage
Social media such as Facebook, Quora, YouTube, and others serve as powerful platforms to extend the reach of developers who want to know more about programming. Often social media is an outlet for any individual to get in touch with people who share similar interests, even if they live miles apart. In the same way, programmers might be curious to know what’s the latest trend and know about different communities.
Facebook has many pages as well as groups that can allow access to the questions of the programmers. In fact, there are many such groups dedicated to programmers. Quora is an excellent place to put forth your queries of any kind. A developer can put forth the doubts he or she is facing and within hours people would be responding to that query with helpful links. Of course, it all depends on the knowledge of the one who’s attempting to solve that query.
Even outside these, there are many forums where people can exchange their ideas and even get connected to each other.
So, when the 2019 survey was out, it was seen that YouTube and Reddit were found to be more in use by developers out of any other, according to the responses received from 84,437 respondents, even though Facebook has a lot more users (2.38 billion monthly users) when compared to Reddit (330 million active users)
“A programming language is a computer language engineered to create a standard form of commands. These commands can be interpreted into a code understood by a machine. Programs are created through programming languages to control the behavior and output of a machine through accurate algorithms, similar to the human communication process. A programming language is also known as a programming system, computer language or computer system.”- That is the definition according to Technopedia.
Also, it was seen that Rust is the most loved programming language for the four consecutive years, with Python just behind it. Python also came out to be the most wanted programming language for the third consecutive year. VBA, Objective-C, and Assembly are the three most dreaded languages according to the survey.
Web application frameworks (web frameworks) are primarily used to build web-enabled applications. It is used for the basis to build software. Web Frameworks allow us simple, clear structures that are easy to maintain and lets developers create applications that are highly powerful in a short amount of time. Which is why it generally relies on three design principles:
• Don’t Repeat Yourself also called DRY halts the repetition of the codes which can negatively affect the performance of the application.
• Keep It Short and Simple or KISS which is highly parsimonious and utilization of the least amount of code takes place.
• Convention over Configuration (does not have any cool abbreviation, unfortunately) is the more complex out of the three. It helps us to lower the number of complexities. This is why web frameworks should let us access the best approaches in their default settings.
The reason for using Web Frameworks is to save both time and costs since codes can be reused. Also, they promote the generation of clean source codes. This is because reliance on tested and tried codes would be safer.
After 63,585 responses received in the 2019 StackOverflow survey, it was concluded that jQuery is the most widely used web framework. Also, many have started using React instead of Angular this year. React along with Vue are the most loved frameworks of this year while Drupal and jQuery are the least favored.
Tools, Other Frameworks, and LibrariesTools simply help the development of the project but isn’t an imperative part of it. They include compilers, image compressors, build systems, deployment mechanisms, code minifiers and more. They make the development process easier.
Frameworks can more aptly be described as the application skeleton. It dictates a more specific approach towards software design and inserts one’s own reasoning at wherever you think is needed. Imagine a car along with its components. Frameworks can be described as the working chassis, engine and the body. Here you have the freedom to add or remove minor components provided the car can operate its daily functions.
To understand libraries, imagine the same vehicle but here you can use or dismiss the use of any component to build the car, but you must build the engine yourself.
Often times people are unable to read the differences between the three. For example, jQuery and React are libraries while Angular.js and Vue.js are frameworks. Sencha ext js is an example of a framework and a component library.
Out of 58,543 respondents that responded in the survey, it was concluded that Node.js is the most commonly used technology. Many respondents also said that they use .NET than .NET core and deep learning framework Torch/PyTorch is not as popular as deep learning framework TensorFlow.
.NET Core, Torch/PyTorch, and Flutter are the most beloved in this category while Chef and Cordova are the most dreaded.
Databases can be defined as a collection of information that is compiled together so that it can easily be accessed and managed. Data is organized in the form of rows and tables which makes information easier to find. Computer databases usually contain the aggression of data records or files like product catalogs, customer profiles, and sales transactions.
They are more present in large mainframe systems and also in small distributed workstations as well as mid-range systems.
Out of 75,023 respondents that participated in the survey, MySQL is still the most commonly used database with PostgreSQL taking the second position. Also, Reddis is the most preferred database and Oracle and Couchbase were seen as the most dreaded one.
“In personal computing, a platform is the basic hardware (computer) and software (operating system) on which software applications can be run. Computers use specific central processing units (CPUs) that are designed to run specific machine language code. In order for the computer to run software applications, the applications must be in that CPU’s binary-coded machine language. Thus, historically, application programs written for one platform would not work on a different platform.” That is a general overview of what Platforms mean according to Technopedia. Macintosh, Windows, Linux, etc are all examples of Platforms. Platforms for Android includes WebOS, Forefox OS, Android, and many others.
In the 2019 Survey of StackOverflow, it was observed that out of 80,144 respondents, respondents said that they are using Linux and Windows, mostly. Docker comes in the third position. Linux is also the most favored while WordPress is the most dreadful in the category.
A collection of tools and procedures for testing, developing, and debugging an application or program is called a development environment.
The three tiers of development environment together are usually called to as the DSP.
• Development Server: Here the developer tests his code and checks whether the application runs successfully with that code.
• Staging Server: The application is examined on the staging server to check its reliance.
• Production Server: After approval, the application becomes a part of the server.
Out of 87,317 responses, it can be concluded that the Visual Studio Code is the dominant player among the others according to the StackOverflow survey. Also, developers who write code for mobile applications are more likely to use Xcode or Android Studio.
It will be highly rare to see a PC or a laptop not popping up the Windows screen upon starting. Windows has come a long way from its 1.0 version. We witnessed Vista, 7, 8, 8.1, and many other versions. An Apple computer system would obviously be blessed with MacOS that also has evolved with time.
An operating system is any software (usually low level) that supports computer’s fundamental functions such as controlling peripherals and scheduling tasks along with an ample more.
Almost half the population surveyed out of 87,851 results admitted that they use Windows. MacOS came in the second position here. People using Linux based OS and MacOS are almost evenly divided.
A growing chain of records, which are called blocks, are linked with each other with the use of cryptography is. Every block possesses a single cryptographic hash of the previous block along with transaction data.
However, according to the 2019 survey, developers in India were more likely to use Blockchain technology. Around 80% of the respondents responded by saying that they do not use any Blockchain technology as of their current circumstances.
Although, the same survey also revealed that the same people were largely optimistic about its future usefulness. Though most of them who believe do are among the young and less experienced developers.
Language with Highest Paid Salaries
In the 2019 StackOverflow survey, it showed that Clojure is the highest paying programming language across the globe. Along with it, F#, Elixir, and Rust are occupying the latter three spaces. These four languages usually have their developers being paid above $70,000 with Clojure possibly touching $90,000 per year.
However, there are geographical differences of course. The above results give an average calculation of the global figures. The situation according to countries can differ. For example, Scala developers in the US are paid the highest while in India it is the experts at Rust and Clojure who get the highest pay.
When it comes to learning a new technology, the salary factor will certainly be a strong motivation. But the nature of the job too plays a tremendous card in how the person feels about his job. And with the more and more emerging companies coming up and expanding their hold, it is clear that they have to adapt to the digital world, i.e. have programmers work for them.
Today we even have real estate companies and religious organizations hiring programmers to create websites and applications that will make them generate more leads. As the usage of mobile phones is surpassing the use of computer browsing, leaders of many startups and other SMEs are building applications to speed up their sales through it.
So, developers aren’t restricted solely in the IT or the technical sectors. In the survey of 2019, most developers said that they work for companies creating software and other technical products. Also, the finance and banking sector and IT sectors remain a top hub for developers to work in.
The survey also revealed that people working in sectors of consulting and nonprofits have more years of experience in coding.
• The StackOverflow report of 2019 is based on the total responses of 88,883 people (Qualified responses for analysis) from 179 nations.
• The survey played out from January 23rd to February 14, 2019.
• Respondents were mainly called to fill the questionnaire by the channels that are under the proprietorship of StackOverflow.
• Incentives included a “Census” badge for anyone who’d complete the survey.
• Some nations such as Iran, Crimea, Syria, North Korea, and Cuba remained absent from the survey as their traffic didn’t entertain this surveyed
• There were many questions that came to the respondents based on their previous answers.
• Data from last year was analyzed to see which technologies are to be included in this survey.
We hope you enjoyed this article and found it informative. Let us know in the comments if you would like to share your views about the StackOverflow Survey 2019 and the insights it has revealed about the current and future of technology.