Python becomes the Darling of GitHub Developers! JavaScript takes second place...
JavaScript is no longer GitHubs’ most used language - Python has taken first place. Let's take a look at why that might be the case...
25-11-2024
You may have seen several headlines lately commenting on the fact that JavaScript is no longer GitHubs’ most used language; it is now Python. In this blog we are going to look into this headline in a bit more detail and try to understand what has been going on.
The Octoverse Report
Back at the end of October, GitHub released this year’s Octoverse Report, giving insight into trends they have observed in the world of open-source software. Originally it focussed on the impact of open source on both commercial and non-commercial developments, plus key trends shaping software development. More recently it has placed a significant emphasis on cloud computing and increasingly on AI.
Why this emphasis on Open-Source software as well as AI? Well firstly open-source software is used in almost any software development project somewhere; whether it's a logging framework (such as Java’sLog4J), a server-side infrastructure (such as Python’sFlask), a database access library (such as Go’sgo-mysql) or a template engine (such as JavaScript’sNunjuncks); you will find open-source software being used somewhere.
Of course, the recent prominence of AI software (and in 2024 particularly Generative AI or GAI) within business and commerce is its own story; but much of the software behind many of the AI, GAI and Machine Learning (ML) tools available are themselves open-source software.
This means that the combination of open-source software and AI is tremendously powerful and very pertinent to any software development discussion. Add to this the fact that GitHub is the most common and ubiquitous repository of such software, then any analysis they perform of their own hosting service is worth taking note of.
GitHub Goes from Strength to Strength
As GitHub reported in October 2024, Python has overtaken JavaScript as the most popular programming language on GitHub. They also noted that the use of Jupyter Notebooks had ‘skyrocketed’! Jupyter notebooks is a web-based development environment beloved of Python data scientists and AI/ML users.
They further noted that during 2024 a very large number of new developers had joined GitHub and had become involved in open-source software projects, some of which were ‘empowered by AI’. Although they note that the surge in the growth of GitHub users can't purely be explained by the increased interest in AI (although there are signals that AI is probably driving much of the new interest in software development).
GitHub found that in 2024 there was a 59% growth in the number of contributions to Generative AI (GAI) projects and a 98% increase in the number of such projects overall. It also noted that although the country with the single largest number of contributors to these projects is the USA, the rest of the world outstrips this number with contributions coming from as far afield as India, UK, Germany, Japan and China.
But what has all this to with our opening statement that Python has overtaken JavaScript on GitHub? Well Python is very heavily used by those working in the GAI, AI and Machine Learning fields. It is also widely used by Data Science and Data Analytics developers as well as scientific users.
All of these areas have seen a huge growth in interest over recent years. In addition, numerous widely used AI /ML libraries are either written in Python or have been made available via Python (either by being ported to Python or by the provision of a Python interface). These libraries include PyTorch, TensorFlow, SciKit-Learn (aka SKLearn) and ollama. This means that for many new to these fields, Python is the obvious language of choice. If they then create or work on an open-source or public project they are likely to use Python. As GitHub is the most common choice for such projects the number of python projects increases etc.
Of course, Python is not per se an AI language (in the way that perhaps Lisp
and Prolog might have been considered AI languages); it is a general purpose programming language and can therefor be used for a wide variety of types of application. For example, another group who are avid users of Python are hobbyist or personal software developers. Python’s huge eco system of libraries and modules cater for almost any type of project you want to work on from games using PyGame to word processing libraries, movie editing or mathematical animations. Interestingly the number 1 project on GitHub in terms of contributors to public projects in 2024 is home-assistance/core
which is a Python library to help with home automation. In its documentation this project says ‘Open source home automation that puts local control and privacy first. Powered by a worldwide community of tinkerers and DIY enthusiasts. Perfect to run on a Raspberry Pi or a local server.’.
Generative AI
The Octoverse report indicates that in 2024 developers on GitHub created over 70,000 new public and open-source Generative AI projects. Many of these projects are also implemented in Python. The report authors noted that the fastest-growing open-source AI project in 2024 was in fact ollama; which is primarily a Python project (although a JavaScript version is also available).
JavaScript on GitHub
Where does all this leave JavaScript? If Python is now the most popular language on GitHub what has happened to JavaScript? Well, if you are a JavaScript developer don't worry; it is still the second most popular language on GitHub. And note that JavaScript was the most popular language on GitHub for 10 years prior to 2024 so there is a wealth of JavaScript projects still out there being hosted on GitHub. Interestingly TypeScript jumped up to 3rd
in the most used league overtaking Java
which fell to 4th.
AI and Software Developers
You may have noticed another headline recently from Google CEO Sundar Pichai who said that ‘Over a quarter (25%) of Google’s internal source code is AI-generated’. As a software developer for the whole of my working career this sounds dramatic and headline grabbing – and it is. However, GitHub’s Octoverse Report draws a different conclusion. It says ‘Remember when people said AI would replace developers? Our data tells a different story. As AI rapidly expands, developers are increasingly building AI models into applications and engaging with AI projects on GitHub in large numbers.’
Why the difference of opinion, well let’s look at what GitHub has said, it says that developers are developing AI projects (such as AI frameworks, libraries and modules) and that they are using these projects to add AI elements to their applications. That's not to say that some developers aren’t using an AI library to generate say a classifier system or a LLM (Large Language Model) to provide a ChatBot
style feature in an app – it’s just that someone has to write the original AI system, GAI framework or ML library in the first place. Following this it is only natural that these new options are integrated into new and existing systems by other developers.
This does actually align with what Google’s CEO went onto say; assuming you look beyond the attention-grabbing headline. Sundar Pichai said ‘Pichai explained that the firm is using AI within its development teams to improve coding processes, as well as to boost productivity and efficiency.’ Thus, they are using GAI, AI and Machine Learning as a tool and productivity aid not as a replacement for the poor human developer.
This reminds me somewhat of the move from a simple vi or Emacs editor to an Integrated Project Support Environment (IPSE) of the late 1980s as part of the government funded research programme Alvey. At the time I remember some die-hard coders telling me that IPSEs would take all the skill out of programming. Today, what we think of as a standard editor such as IntelliJ or Visual Studio Code have absorbed much of what was an IPSE into their basic features and yet we still need skilled developers!
What all this Means?
Well, it certainly does not mean that JavaScript is going to fade away; nor does it mean that every developer will jump ship to Python. Indeed, looking at the statistics both Python and JavaScript are hugely important on GitHub, and both will remain so for a very long time to come. However, what it does man is that if you want to exploit or develop AI/ML or GAI/LLM skills or to use the open-source libraries that are of increasing importance to many developers daily lives; then Python is a must to learn!
Would you like to know more?
If you found this article interesting you might be interested in some of our Python Training Courses:
To help raise awareness of challenges and vulnerabilities and ways to reduce risk, we've got a bumper crop of cyber security blog articles. We've also got a robust range of hands-on training courses covering security for non-technical staff and IT professionals
We use cookies on our website to provide you with the best user experience. If you're happy with this please continue to use the site as normal. For more information please see our Privacy Policy.