Rust vs. other languages on GitHub


One of the aspects we take in account when picking a language for a project is the popularity of the language. It has some indication regarding the availability of programmers and the availability of 3rd party packages. I looked at the number on GitHub topics for some clue.

Language repositories followers
Rust 54,558 38,800
Ada 706 72
C 61,456 110,000
C++ 67,312 124,000
Go 58,155 61,000
Golang 91,210 61,000
Java 232,184 153,000
JavaScript 511,622 170,000
Kotlin 49,809 33,500
Perl 4,450 8,700
PHP 115,931 53,800
Python 428,293 285,000
Ruby 34,901 21,100

The number of projects tagged on GitHub by a language can have some indication on the popularity, but it also has some serious issues.

  • There are two popular tags used for Go/Golang, so I included both.

  • Perl: CPAN rocks indicate that there are about 40,000 distributions (libraries, crates, if you wish), 9,276 that is 23.3% indicate that they have GitHub repository. Despite this we only see 4.450 tagged as Perl.

  • Python: PyDigger indicates that roughtly 63.13% of the packages indicate that they have GitHub repository. PyPi reports a total of 522,170. That would mean about 330,000 Python projects on GitHub while 428,000 are tagged as Python.

  • Rust: Rust digger indicates there are a total of 132,501 crates. Out that 100,013 (75.48%) indicate their repository on GitHub. However, on GitHub only 54,558 actually have been tagged as Rust.

  • C++: vcpkg the largest registtry of C++ libraries has only 2,396 libraries while there are 67,312 tagged as C++ on GitHub.


Gabor Szabo (szabgab)

Gabor Szabo, the author of the Rust Maven web site maintains several Open source projects in Rust and while he still feels he has tons of new things to learn about Rust he already offers training courses in Rust and still teaches Python, Perl, git, GitHub, GitLab, CI, and testing.

Gabor Szabo