An Inconvenient Truth about Social Justice in programming
Recently, there has been increasing discussion in the media on the topic of social justice. Especially with the rise of artificial intelligence, there are frequent warnings about the dangers of racist AI. Here, the impression is quickly created that only the AI has a racism problem.
The last article in the picture addresses the problem from a different perspective. It is implies that not the AI but we people have a racism problem.
To further draw attention to this problem in our society, I’d like to present in this article how social justice is faring in the professional developer space. To do this, I examined Stackoverflow’s Annual Developer Survey from 2017 for the following questions:
Is there equal opportunity in the programming profession?
How does your social environment influence your chances of being successful as a developer?
As a bonus, the end of this post examines the mindset of successful programmers. So make sure you read the block article to the end.
I. Is there equal opportunity in the programming profession?
To answer the first question, I evaluated the following survey results in the Stackoverflow dataset.
To answer the first question, in the Stackoverflow dataset I used the survey results on a person’s “starting conditions”: Highest educational level of parents, gender and ethnicity.
As evaluation criteria whether a developer is successful I considered the overall satisfaction as sum of job and career satisfaction, as well as the current salary. Particularly on the basis of the salary, it must of course be taken into account from which country the survey results are.
We can see across all countries that people who self-identify as Black or of African descent have the lowest or second lowest average income. This is reflected in the overall satisfaction.
The charts show that even in a modern industry like programming, there is a clear problem of racism. When it comes to gender, you can see that men are better off than women in terms of salary. For people who assign themselves to a gender other than male or female, whether they belong to the best or the lowest paid group depends heavily on the country.
However, if you also consider job-related general satisfaction, there is also clear discrimination in the gender question
As the last starting condition, we want to consider the education of the parents. In this point, there is again a high level of inequality of opportunity. To put it simply, it can be said that the average salary scales almost linearly with the highest educational qualification of the parents.
As the graphics show, all the initial conditions have an impact the success as a developer. The first question can be clearly answered in the negative. There is no equal opportunity in the job profile of professional developers!
II. How does your social environment influence your chances of being successful as a developer?
We have already seen clearly that the parents education not only has an extreme impact on salary. Now we have to check how the circle of friends affect the success. Here, however, it must be taken into account that a correlation does not necessarily mean a causality.
If you are successful as a programmer, you have a lot to do with other developers and the probability is high that you will find new friends among them. In addition, many friendships are made during an academic career and in our society people with high degrees tend to earn higher incomes.
Contrary to my original assumption, we can see from the graph that people whose circle of friends includes few developers have the highest salary.
The people who mainly surround themselves with developers earn even the lowest salary.
With regard to the second question, it can be said that the social environment has a significant impact on success as a programmer. The parents in particular have a major impact. As far as the circle of friends is concerned, it is advantageous in terms of salary not only to surround oneself with friends of the same professional orientation.
III. How important is an open mind and tolerance to succeed as a programmer?
We have already seen that many things are strongly influenced by a person’s starting conditions. Now let’s take a look at something that you have in your own hands. The mindset of successful developers. Therefore, we want to evaluate the following survey questions:
“There's a right and a wrong way to do everything”
“Diversity in the workplace is important”
This result is perhaps unsurprising. People who believe there is only one solution earn by far the least. So your take away should be, be open to different views, ways of thinking and solutions.
Also, people who value diversity are happier than those who don’t.
Conlusion
In this article, we looked at what social justice looks like in the developer profession. For this, we analyzed the results of the Stackoverflow survey from 2017.
I. We saw that the starting conditions have a major impact on success as a developer. The education of parents, ethnicity and gender are factors that have a measurable impact on salary, job and career satisfaction. There is no equal opportunity in the job profile of professional developers.
II. In addition, we could see that people who do not only have developers in their circle of friends have higher incomes than those who only surround themselves with people from the same profession.
III. We also found that it is extremely important to be open to different solutions when it comes to maximizing salary. Also, be open to diversity to increase satisfaction.
To make a short turn back to the introduction it remains to say in conclusion that racism is not a problem of AI, rather AI only reflects our society.
For deeper insights into my work, feel free to checkout my gihub repository. If you facing trouble loading the Jupyter Notebook, you can see it here.