Tuesday 4:25 p.m.–5 p.m.

Exploring Github's Programming Languages using Machine Learning and Network Analysis

Amirali Sanatinia

Audience level:
Novice

Description

GitHub is the most widely used social, version control system. It has around 10 million registered users and hosts over 16 million public repositories. In this talk, we explore the popularity of programming languages and existence of patterns in the relations between users, repositories, and programming languages, and build a phylogenetic tree of the use of programming languages in GitHub.

Abstract

GitHub is the most widely used social, distributed version control system. It has around 10 million registered users and hosts over 16 million public repositories. Its user base is also very active as GitHub ranks in the top 100 Alexa most popular websites.

In this talk, we explore the popularity of programming languages and existence of pattens in the relations between users, repositories, and programming languages. By, applying a k-means clustering method to the users repositories commits matrix, we find that two clear clusters of programming languages separate from the remaining. One cluster forms for “web programming” languages (Java Script, Ruby, PHP, CSS), and a second for “system oriented programming” languages (C, C++, Python). Further classification, allow us to build a phylogenetic tree of the use of programming languages in GitHub . Additionally, we study the main and the auxiliary programming languages of the top 1000 repositories in more detail. We provide a ranking of these auxiliary programming languages using various metrics, such as percentage of lines of code, and PageRank.

Sponsors


Become a sponsor.