Community - page 2


The State of the Octoverse: top programming languages of 2018

Top programming languages on GitHub

This article is part of a series based on our 2018 State of the Octoverse report—trends and insights into GitHub activity, the open source community, and more from the GitHub Data Science Team.

At the core of every technology on GitHub is a programming language. In this year’s Octoverse report, we published a brief analysis of which ones were best represented or trending on GitHub. In this post, we’ll take a deeper dive into why—and where—top programming languages are popular.

There are dozens of ways to measure the popularity of a programming language. In our report, we used the number of unique contributors to public and private repositories tagged with the appropriate primary language. We also used the number of repositories created and tagged with the appropriate primary language.

Top programming languages by repositories created, 2008-2018

Top repositories, year over year, by number of repositories created

Today, there are more repositories created in JavaScript than in any other language. Repositories created have been rising steadily for the last decade—and you’ll see a steady uptick after 2011. At this point, GitHub was approaching nearly 1 million repositories total, and new JavaScript servers like Node.js (launched in 2009) were making it possible for developers to use the same code for the client and the server.

Top programming languages by contributors as of September 30, 2018

Top programming languages by contributor

JavaScript also tops our list for the language with the most contributors in public and private repositories. This is true for organizations of all sizes in every region of the world. However, we’ve also seen the rise of new languages on GitHub. TypeScript entered the top 10 programming languages for public, private, and open source repositories across all regions last year. And projects like DefinitelyTyped help people use common JavaScript libraries with TypeScript, encouraging its adoption.

We’ve also seen some languages decline in popularity. Ruby has dropped in rankings over the last few years. While the number of contributors coding in Ruby is still on the rise, other languages like JavaScript and Python have grown faster. New projects are less likely to be written in Ruby, especially projects owned by individual users or small organizations, and much more likely to be written in JavaScript, Java, or Python.

Languages ranked by continent and number of contributor

In the last 12 months, we haven’t seen much variation in language usage across regions. However, TypeScript is higher ranked in South America and Africa than in North America and Europe. This might be because developer communities in Africa and South America are relatively newer. The repositories that were contributed to in Africa and South America in the last year are, on average, younger than repositories in North America and Europe. And perhaps this means they’re more likely to focus on newer developer technologies.

Fastest growing languages by contributors as of September 30, 2018

Fastest growing languages by contributor

PowerShell, used in many projects owned by larger companies, is climbing our list. Similarly, Go, which has been on our lists for larger organizations, continues to grow across repository type: it’s #9 this year for open source repositories (and #7 overall). We’re also seeing trends toward more statically-typed languages focused on type safety and interoperability: Kotlin, TypeScript, and Rust are growing fast.

So what makes a programming language popular in 2018? Here’s what we think.

Type safety

With the exception of Python, we’ve seen a rise in static typing, likely because of the security and efficiency it offers individual developers and teams working on larger applications. TypeScript’s optional static typing adds an element of safety, and Kotlin, in particular, offers greater interactivity, all while creating trustworthy, type-safe programs.

Interoperability

Part of the reason TypeScript has climbed our rankings is because of its ability to coexist and integrate with JavaScript. Rust and Kotlin are also on the rise, both of which find built-in audiences in C and Java, respectively. Python’s versatility and interoperability are also impressive; for example, developers can directly call Python APIs from Swift.

Interoperability doesn’t only imply that languages have a pre-existing community to use and build on them. It also means that they can transcend and intermingle with different communities. For example, Kotlin was acknowledged as a first-class citizen on the Android platform last year.

Open source

And, of course, these languages are also open source projects, actively maintained on GitHub. Communities that evolve, answer questions, and create resources for newer languages like Kotlin can help developers start and continue working with them in 2018 and beyond.

Are you as excited about data as we are? Check out other posts from our State of the Octoverse series on trending regions and repositories. Or tune into the GitHub Blog for more insights from our Data Science Team.

Happy second birthday to Code.gov

Happy birthday, Code.gov!

As we celebrate Code.gov’s second birthday, it seems like just yesterday Alvand Salehi was introducing Code.gov from the main stage at GitHub Universe. But now two years and over 5,200 projects later, Code.gov (and the Federal Source Code policy that created it) are starting to hit their stride. I wanted to take this opportunity to highlight some of the exciting government projects currently on GitHub, and dive into the data around how the government community uses GitHub to collaborate. Like the Code.gov team says, “[we] believe in innovation, and are passionate in making these open source projects all available to you.”

Government and open source

Out of the 4,800 publicly accessible government projects on Code.gov, more than 3,600 (or 75 percent) are hosted on GitHub.com. This makes sense, as the majority of the world’s open source already on GitHub. However, it’s also a pretty big deal. Government agencies like NASA and the U.S. Army are using GitHub to share their tools and resources with the greater open source community around the world. Take NASA’s 3D Resources project, for example.

Interested in textures, models, and images from NASA itself? The NASA-3D-Resources repository has it all, including pictures of earth from the Apollo missions and models of the satellite used in the Clementine mission.

You can’t 3D print your own Mars rover—yet. But with contributors like the NASA Jet Propulsion Laboratory and NASA Goddard Space Flight Center, “yet” may definitely be the operative word.

Another exciting government project is ZFS, a file system released by the Department of Energy that runs specifically on Linux. This open source project has not only been embraced by other agencies, but has been adopted by private companies as part of their day-to-day operations.

Notable adopters of ZFS on Linux include GE Healthcare Systems, Intel, and Netflix. As for the Lawrence Livermore National Laboratory (LLNL)—the research facility answering to the Department of Energy and those behind this OSS—they continue to utilize ZFS, and continue to develop and improve the platform. LLNL is working closely with Intel to use a variation of ZFS-ZFS+Lustre—to manage the first planned U.S. exascale system, Aurora. Aurora is capable of a billion-billion calculations per second. (Yes, a billion-billion.) Aurora is slated for 2021 at Argonne National Lab.

How the government community uses GitHub

Aside from how the government is sharing projects, we also took a look at the numbers to find out how the community is using GitHub to collaborate on these projects.

Top 10 projects by stars

Ranking Project #
1 nasa/openmct 5282
2 USArmyResearchLab/Dshell 5098
3 scipy/scipy 5079
4 nasa/NASA-3D-Resources 1422
5 GSA/data 1353
6 GSA/data.gov 1278
7 Code-dot-mil/code.mil 1229
8 openscenegraph/OpenSceneGraph 1177
9 WhiteHouse/petitions 1777
10 NREL/api-umbrella 1172

Top 10 projects by forks

Ranking Project #
1 scipy/scipy 2556
2 USArmyResearchLab/Dshell 1164
3 openscenegraph/OpenSceneGraph 720
4 nasa/openmct 585
5 spack/spack 539
6 lammps/lammps 534
7 idaholab/moose 460
8 WhiteHouse/petitions 373
9 GSA/data.gov 356
10 materialsproject/pymatgen 309

Top 10 projects by watchers

Ranking Project #
1 USArmyResearchLab/Dshell 673
2 scipy/scipy 312
3 GSA/data.gov 251
4 nasa/openmct 233
5 nasa/NASA-3D-Resources 220
6 WhiteHouse/petitions 214
7 openscenegraph/OpenSceneGraph 201
8 18F/api-standards 173
9 nsacyber/Windows-Secure-Host-Baseline 172
10 Code-dot-mil/code.mil 169

Top 10 projects by contributors

Ranking Project #
1 scipy/scipy 669
2 trilinos/Trilinos 197
3 SchedMD/slurm 162
4 18F/18f.gsa.gov 139
5 Kitware/ParaView 136
6 GSA/wordpress-seo 119
7 department-of-veterans-affairs/vets-website 116
8 idaholab/moose 114
9 materialsproject/pymatgen 113
10 petsc/petsc 113

And more

Our top 10 findings are just a few examples of how government projects use GitHub. Looking deeper into the data can tell us even more about how they contribute to the entire open source community. With thousands on thousands of commits, many have sparked the attention of both the public and private sector:

  • From the Environmental Protection Agency, WNTR (pronounced “winter”) is a Python package designed to simulate and analyze resilience of water distribution networks.
  • The Department of Transportation’s ITS ODE offers real-time data to a network of vehicles, infrastructure, and traffic management centers, providing logistics to subscribing transportation management applications and other similar devices.
  • Then there is Walkoff, from the National Security Agency, enabling security teams to automate and integrate apps, workflows, and analytics tools.

This is what Code.gov is all about. All of the government projects we’ve mentioned in this post are designated as open source. That means that you can access a repo, test, debug, submit pull requests, or download your own copy and adapt it for your own use.

As the Code.gov team has shared with us, they believe in innovation and providing everyone the opportunity to perform a civic duty on a digital platform. They’re passionate about making these open source government projects available for all. This spirit is embodied in their hashtag, seen often on their Twitter account: #CodeOn. The invitation to reach out to them on Twitter or LinkedIn is always open, and we highly encourage you to do so.

Want to learn more about Code.gov? Follow them on Medium and Twitter. You can also see what else GitHub is doing to help governments across the country and around the world.

Open source helps people create new and exciting things every day—including the code we used to collect data for this post. Check it out here.

Thank you for 100 million repositories

Thank you for 100M repos

Today we reached a major milestone: 100 million repositories now live on GitHub. Powering this number is an incredible community. Together, you’re 31 million developers from nearly every country and territory in the world, collaborating across 1.1 billion contributions.

Repositories are where you store code, but they represent much more: ideas, experiments, curiosity, and moments of inspiration. To celebrate, let’s take a look at a few trends and achievements, a core sample of what’s possible when we work together by the millions.

What’s behind 100 million?

To put this milestone into perspective, we totaled only about 33,000 repositories in 2008. Today, we’re seeing an average of 1.6 repositories created every second. In fact, nearly one third of all repositories were created in the last year alone—all thanks to the developers who choose to host, build, and share their work on GitHub.

Over the last 10 years, it’s been a pleasure to watch impactful projects build and grow on GitHub. Rails moved to Git and GitHub while the platform was still in private beta, and Node.js launched on GitHub in 2009. Since then, we’ve also had the opportunity to host Swift, .NET, and Python. Supported by thousands of contributors, these projects are raising the bar for how developer tools evolve and engage with their communities.

Just this year, we’ve seen countless projects take off, started by individuals and larger teams alike. Projects like Definitely Typed, Godot, Kubernetes, PyTorch, and more climbed our lists of top and fastest growing projects.

Top open source projects

Projects on this year’s lists have a theme: they make it easier to build software, whether through code editing, automation, containerization, or documentation.

Top OS projects in 2018

Fastest growing open source projects

In the last year, we saw trends in growth of projects related to machine learning, game development, 3D printing, home automation, data analysis, and full-stack JavaScript development.

Fastest growing OS projects in 2018

This year, the open source repositories you’ve created span thousands of topics, but these are the ones you contributed to the most:

Top topics tagged in 2018

Topics in front and backend JavaScript, machine learning, mobile app development, and containerization represent some of the most powerful trends in open source software in the last 12 months. In 2017, topics like “game”, “deep learning”, and “library” were also trending.

Where repositories are created

GitHub started with a small group of developers looking to solve a specific problem—now it’s home to a global open source community. And we’re seeing the proportion of open source contributors outside the U.S. grow every year.

Contributors from the US and outside of the US

As a continent, more repositories are coming from Asia than anywhere else in the world. More specifically, repository creation has picked up across Central Asia, the Middle East, and Africa. While there’s an increase in repositories from developed countries, we’re seeing the same trend in emerging countries as new tech communities grow and new technologies becoming more accessible.

Developers in Egypt, in particular, created twice as many public and private repositories this year. And in Nigeria, a growing developer community created 1.7x more open source repositories in 2018 than in 2017. To see why we think Nigeria has a tech community to watch, read our latest post on the region.

Fastest growing countries by repositories created (as of September 30)

Fastest growing countries by repos created

Fastest growing countries by open source repositories created (as of September 30)

Fastest growing countries by open source repos created

Thank you

After 10 years and 100 million repositories, we’re only just getting started. Thanks to our users, we’re building something bigger than any single repository or project—a community that’s pushing software forward in tangible ways. So thank you for building with us now and in the years to come. We can’t wait to see what you build together in the next 100 million.

Interested in seeing more insights into the GitHub community? Check out this year’s State of the Octoverse report.

Octoverse regional spotlight on Nigeria

Regional spotlight: Nigeria

This article is the first in a series based on The State of Octoverse—trends and insights into GitHub activity, the open source community, and more from the GitHub Data Science Team.

In February, we reflected on a trip to Nigeria and everything we learned about its growing tech community. Economic changes, expanding educational opportunities, and wider internet access are mobilizing a talented and entrepreneurial community. And together, they’re pushing software forward in Africa’s largest economy.

A growing developer community

On our trip, we saw this changing landscape close up at packed meetups and student groups. In our 2018 Octoverse Report, the numbers were clear. Across several measures, the developer community in Nigeria is growing fast. In 2018 alone, we’ve seen:

  • 1.6x more developers contributing on GitHub.* Nigeria represents the fourth fastest growing developer community on GitHub with 1.6x as many contributors in 2018 than in 2017.
  • 2.1x more organizations. Nigeria is high on our list of fastest growing countries by organizations created with 2.1x more organizations created this year than last year.
  • 1.8x more repositories and 1.7x more open source repositories. Nigeria also made our list of fastest growing countries by repositories created, nearly doubling the number of projects they’re collaborating on.

To learn more about our data and methodologies, check out this year’s State of the Octoverse.

*We define contributors broadly as any user taking a substantive action on GitHub (pushed code, opened an issue, or merged a pull request, for example) that added new content to the platform in a public or private repository.

Growth behind the numbers

An important startup ecosystem

Behind our numbers is a young, growing community excited about software development and its potential to address some of the challenges Nigeria faces today. With excitement and opportunity comes an expanding startup ecosystem and the venture capital, accelerators, training programs, and hubs to support it.

Nigerian startups are growing accordingly across industries. The fintech industry is booming in particular, as a result of a changing financial landscape. According to Stephen O’Grady, Principal Analyst at Red Monk:

In 2016 and 2017, 42 percent of Nigerians had access to traditional financial services, which has lead to growth in projects that have tried to bring these to the Nigerian population. Without existing infrastructure, they have the opportunity to take the next step forward.

Nigeria still relies heavily on cash, but fintech companies like AmplifyPay, Paga, and PayStack (which you can find on GitHub) are streamlining the way people bank and gaining tens of thousands of individual and business users. With millions of dollars raised, these companies underscore an investment trend that has spread across African tech ecosystems, reaching a high of $195 million in 2017 alone. These startups have also spurred local developers to build an ecosystem of applications and integrations.

A supportive student community

Through GitHub Education and our global group of Campus Experts, we’ve had the opportunity to support Nigerian students building tech communities that train and mentor new developers within their schools. So far, we’ve watched local Campus Experts create summer coding camps for women, host and speak at national software summits with 1,000+ attendees, organize open source meetups, and more.

Learn more about our Campus Experts program

We’re excited to see what Nigeria’s growing developer community builds on GitHub into 2019 and beyond. Want to learn more? GitHub Data Scientist Anna Filippova and Red Monk Principal Analyst Stephen O’Grady chatted about why Nigeria is trending in a recent GitHub Universe session.

Stay tuned for more posts that dive into data on the GitHub Blog—or check out The State of the Octoverse to see what a community of 31 million developers can accomplish in a year.

Five GitHub Field Day organizers share their playbooks for successful events

As a student trying to ship code without a community to help you, small setbacks can add up to a massive feeling of frustration, even isolation. Who can you brainstorm with? What about sharing the brilliant solution you devised, 10 pull requests later? As rewarding as contributing to open source can be, it’s also a challenge to go it alone.

GitHub Field Day, a day-long “unconference”, solves this problem by bringing together students from their local communities to connect and share experiences. This summer marked the first anniversary of GitHub Field Day, which has grown to meet the needs of communities around the world.

Gathering to solve a shared struggle

Intern (and now GitHubber) Wilhelm Klopp (Wil) created Field Day to share information across campuses and learn from mistakes, all while making friends. With an unconference, participants in each session can freely engage in discussions, collaborate, take a break, or decide to move to other sessions.

When you attend a local Field Day, the structure of the event invites you to participate as little (or as much!) as you’d like. Think of it like a “choose your own adventure” game—you control your experience, and you can suggest topics for technical discussions and activities that are timely and relevant to you. More importantly, you’ll have fun, feel welcome, and enjoy meeting other student leaders.

Field Day HQ Student leaders talk about Field Day

Snapshots from Field Day around the world

Every Field Day is different, and each one has something for us to take away to our local communities. Here’s a walkthrough to give you a sense of Field Days from each region, along with some helpful tips.

Field Day 1.0 at GitHub HQ

Sketchnotes Field Day HQ

As a Campus Expert Wil noticed a trend that every Expert reported: when a student leader experienced a problem, who did they turn to? There wasn’t an outlet for them in their local communities. This was how the idea for Field Day started, and Wil set out to launch a beta event.

Inaugural Field Day Inaugural Field Day

One of the key skills you learn as a Campus Expert is how to observe the needs of your community. The first Field Day showed that Wil was onto something—students want this kind of knowledge base, some form of face-to-face support for their shared struggle.

At the time, Field Day’s project name was “Umbrella”—an umbrella event for leaders of technical student communities. Ultimately the name evolved, but the project name still hangs on as part of the branding: the purple umbrella ☔.

First Field Day Schedule The first Field Day unconference schedule included a Pizza programming contest, teaching CS to complete beginners, creating the membership identity, inclusivity of international students, and building an API for students at university

Takeaways:

  • Reflect about what worked and didn’t work so you have a roadmap to work from for future events.
  • Take note of trends you see across proposed talks—they might be signs of what’s missing in your community.

Field Day in Los Angeles, CA

Field Day Los Angeles

Los Angeles Field Day attendees

Campus Expert Catherine Chung at the University of Southern California has a habit of noticing “what’s missing” in her on-campus community. After joining the ACM chapter, and creating an all-female hackathon for schools in her region, AthenaHacks, she saw how schools in Los Angeles could band together, share resources and distribute the work in ways that would help everyone.

In the spirit of coming together for mutual benefit, Catherine connected USC with UCLA to house Field Day Los Angeles in a larger venue. Working side-by-side to plan the event, both schools shaped it to serve their communities.

For next time, Catherine plans to seed the event with content that students want.

Something that could help add more value to the event is polling the attendees (maybe during the application form) to see what topics or issues they’d like to talk about, or pairing people up into more relevant groups for lunch. For example, it would have been interesting to pair up the ACM (Association for Computing Machinery) student leaders from all the schools in one lunch table so they could talk about collaboration or discuss things they’re working on.

Takeaways:

  • Help your community grow: 100 percent get connections from other schools to help with planning and outreach!
  • Tinker with the format: The first Field Day in SF was hosted from 8 am to 6:45 pm, which was a little long for college students to commit to during the school semester. Catherine changed LA’s event to be from 10:00 am to 4:00 pm instead.
  • Feel free to add a little more structure to the event: Catherine was unsure if people would be proactive and suggest discussion topics at the beginning of the event, so she planned a few topics beforehand. This allowed people to create and rehearse presentations prior to the event, which seemed to be pretty helpful for talks like open source and cryptocurrency.

Field Day in Montreal

Field Day Montreal

With 33 attendees, Field Day Montreal (organized by Campus Expert and former Intern kim-codes) was small enough to focus on one track for the entire day.

Student leaders opened up about their common problems: recruiting new members, the onboarding process for their organization, keeping in touch with members, and learning how to work as a team. With this agenda in mind, the discussion bloomed to offer solutions (including a poutine day for recruitment).

One interesting challenge Field Day Montreal posed was around language: how do you run a conference for student leaders in multiple languages? Perhaps offer slides in English and French, or ask for translation services from student leaders who are multilingual.

Takeaways

  • If you have trouble recruiting new members: use the school’s Association or Club Days. These are great in helping to inform new students about your event. You can also stream sessions with Twitch so that people who are unable to attend can catch up.
  • To train and retain members: try offering small projects/homework, and be clear about membership expectations and requirements.
  • Learn how to teach people to work as a team: no one learns or works the same way. Hold a scrum meetings, or change up the executive teams based on particular projects. Don’t forget to plan a team outing with your members to foster team spirit.
  • Don’t forget to keep in touch: make videos, use Facebook, or even ship a newsletter.

Field Day in Mexico City

Field Day Mexico City Speakers at Field Day in Mexico

Two of the seven Campus Experts in Mexico, Juan Pablo Flores and Fernanda Ochoa Ramirez, organized Field Day Mexico City in February 2018 for both newcomers and seasoned coders.

For Fernanda, organizing Field Day “changed my life”—she saw ways to improve efficiency, use new communication channels, and bring together 35-50 different communities who previously operated independently. The different clubs shared how to work with universities, sponsors, and the media.

Sketchnotes Mexico City

They are currently discussing where to host the next Field Day, and Juan would like to nurture communities outside of Mexico City to grow the ecosystem.

Collaboration at Mexico City

Takeaways

  • Share your pain points: With dozens of groups represented, there is a ton of expertise to draw from.
  • Identify how you can make Field Day a consistent feeling: Juan and other experts are even considering doing a meetup every two to three months to follow up on events people are doing.
  • Look beyond startups and apps: you’re more likely to see problems the community can solve. Juan is looking to diversify their events and bring real problems to solve, such as hackathons on Agrotech.

Field Day in New York City

Field Day NYC

Campus Expert Teresa Luz Miller held Field Day NYC at the offices of Major League Hacking (dubbed “MLHQ”) in Manhattan.

The NYC Field Day started with a kickoff icebreaker activity called “A Cold Wind Blows”, which is a sort of musical chairs game to help people get to know each other. The organizer structured the unconference by asking every attendee to make three post-it notes of what they needed help with—an idea she learned from Maintainerati, the unconference for open source maintainers—and then clustered related ideas together into a schedule. Each small breakout group appointed a facilitator to capture the conversation on the whiteboard, which aided in comprehension and collaboration.

Takeaways:

  • Use the whiteboard: Highlight best concepts while making it bite-sized and aesthetically pleasing.
  • Be flexible with the schedule: The more interactive an event is, the more energy it requires. Like Los Angeles, NYC also ended early because of the (wonderful) intensity of the event.

Help for your student community

GitHub Field Day has connected students from as far as London and the Midlands in the UK to Mexico City. We would love for you to join us at the next Field Day near you!

Are you a technical student leader in your community? Find a GitHub Field Day or contact your local Campus Expert.

Changelog

Subscribe

Discover new ways to build better

Try Marketplace apps free for 14 days

Learn more