There are a fair number of us at MOB working on software development. I thought it could be interesting to take the time to see which codebases have the most activity on Github. This gives some fun and valuable insight into trending languages, overall developer community interest, and a heads up to emerging projects that are gaining lots of attention.
Let’s explore the top trending ‘repos’ at the time of this writing. If you are like me, you will find the rank somewhat surprising!
To see Assembly language topping the list is curious, seeing as it’s rarely ranked in the top ten languages to learn or use. I found number 42 in my research. So, like me, you may ask, why Assembly at number one? I feel there are a few good reasons why this may be the case.
One, perhaps coincidentally, or maybe not, the number one set of developers contributing to GitHub are pushing from Microsoft. Two, there are loads of legacy applications written in Assembly that need to be modernized and upgraded to today’s more cutting-edge languages. While assembly allows you to handcraft code that is very fast, with meager memory requirements for that code, and very lovely developer visibility, the sad truth is, it’s time-consuming and error-prone. A functional language to potentially migrate Assembly to? How about Python, coming in at number three below.
This is a great one. To me, it screams two things. Lots of computer scientists coming into the industry, and two, innovation. C is an efficient, fast, widely known and supported language and is often at the core of computer science degrees. The fact that the trending repo is focused on creating one’s ‘own’ operating system perhaps points to the trending popularity of Linux and also perhaps the increased desire for controlled security of data that is becoming critical to many users in today’s Blockchain era.
With Algorithms at the core of most if not all great applications, it certainly makes sense to see a trending collection of the most important and popular ones, in one of the worlds most popular languages, Python. This repository shows examples of how to sort through and order various elements of data and sort them by order. For example, a ‘Bubble Sort‘ to sort a line lengths from shortest to longest, and then to do the reverse, or to take a jumbled list of lines and place them in order. Or, a ‘Bucket’ sort, which is an array organizer that sorts similar kinds of data into buckets. For example, sorting all online store orders that were delivered in under five days to ones that took more than five days throughout the year.
I feel for the creators of moment.js to see this repo trending, but what can you do, things evolve, and trends emerge. Clearly, there is a trend out there around _not_ using the moment.js library. The primary argument against moment.js is it can cause bloat in an otherwise simple application. While this isn’t always the case, it appears that many times it is, and can warrant migrating away from moment to dayjs, or others. Many developers claim their bundle sizes being split in half. Worth exploring if your app uses moment.js or you are just curious about how a popular library can fall from grace.
Thanks for reading, follow and get in touch if you have any feedback or ideas to share on this article @jesseseaver.