Celebrate Local Hack Day with MLH and GitHub on December 1!

Celebrate Local Hack Day

Join us on December 1, for Major League Hacking’s (MLH) 5th annual Local Hack Day, a global hackathon and celebration of learning, building, and sharing. With more than 200 locations around the world, this is the perfect excuse for you to gather with your local tech community or join a new one.

Hackathons are learning-focused invention marathons where participants dream up fun, interesting projects and work in small teams to bring them to life during the event. Your project could be anything from a website to a mobile app to a robot…and beyond! When you’re not working on your project there are also plenty of other things to do attend educational workshops, make friends, or share what you’re learning.

You don’t need to be an expert to participate in Local Hack Day, either. All experience levels are welcome, regardless of whether you’re a first-timer who is learning to code or you attend hackathons regularly. All you need to do is find a location near you from the Local Hack Day website and register.

Everyone who attends a Local Hack Day gets access to the GitHub Education Pack, which has tons of free developer tools to help you build an awesome project (along with lots of GitHub swag). Some of the locations will even have a GitHub Campus Expert available to help mentor participants.

Over 40 countries, 200 cities, and 7,000 attendees have joined us to celebrate Local Hack Day

This is MLH’s 5th year organizing Local Hack Day, and GitHub is proud to be hosting the event for the 3rd year in a row. In 2017, the event brought out more than 6,000 participants across 34 countries and 236 cities around the world. This year’s event is shaping up to be the biggest one yet.

Spread the word about Local Hack Day by using the hashtag #LocalHackDay on Twitter, Facebook, or Instagram. We can’t wait to see you there, happy hacking!

Developers on the world stage—global commitments on building an internet of trust

The Internet of Trust: Internet Governance Forum

GitHub represented developers at two events during Paris Digital Week: the Paris Peace Forum, coinciding with the 100th anniversary of the World War I Armistice, and the United Nations Internet Governance Forum (IGF), themed the “Internet of Trust.”

As part of our work there, we committed to a cybersecurity initiative and spoke about open source projects as a model for community governance. Developers have the most to gain from building an internet of trust—and the most to contribute.

Collective action on cybersecurity

On November 12, GitHub joined 370 governments, businesses, and civil society groups in the Paris Call for Trust and Security in Cyberspace—a commitment to support principles and norms to protect people and critical infrastructure.

We joined this effort recognizing that cyberspace is built by developers, and it’s susceptible to attacks in ways that developers can help prevent, anticipate, or combat. Coordinated efforts to protect people and the digital infrastructure they rely on from systemic or indiscriminate cyberattacks certainly benefit developers, who are on the front lines of these attacks. Developers can help by prioritizing security and resilience in their projects. This is not solely a technical task—cooperation is required, and to sustain cooperation, governance.

Open source as a model for community governance

When he launched the Paris Call at the IGF on November 12, French President Emmanuel Macron spoke about a range of other internet-related topics, including content moderation. This is another area where open source project maintainers can help—by showing how community-run projects can be effective to create welcoming, inclusive, safe spaces for online collaboration.

GitHub strongly champions community self-management because communities can have the ability to be constructive and nuanced—contributing to rebuilding trust online, and lessening the need for other layers of regulation, from companies enforcing their Terms of Service to action by government regulators.

We presented on open source projects at IGF in a session on community governance. Open source communities are built on shared goals and objectives (like building software). Open source maintainers also share goals with the platforms they collaborate on: promoting positive participation and fending off abuse. We emphasized best practices:

  • Be clear about the rules governing behavior and content
  • Make sure those rules reflect the community’s norms
  • Moderate respectfully and effectively using appropriate tools
  • Establish penalties for violations, and enforce them

We described resources, such as Open Source Guides, that GitHub provides for maintainers seeking ideas on how to write a Code of Conduct, build welcoming communities, and resolve conflicts. Participants were interested to hear about how open source projects work. Several left the discussion expressly recognizing how community moderation practices in open source could be used in other contexts.

We want to give a big thanks to Wikimedia for organizing and moderating the session, and to Collaboration on International ICT Policy for East and Southern Africa (CIPESA), Mozilla, and the United Nations Educational, Scientific, and Cultural Organisation (UNESCO) who joined GitHub as speakers.

We are also thankful to our community. We’re happy to see governments join companies in committing to peace, security, and trust on the internet. This couldn’t happen without you! Developers are central to making these commitments a reality: as programmers creating secure code, as leaders creating inclusive communities, and as citizens creating technically informed policy.

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, too. 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.

GitHub at AWS re:Invent

GitHub at AWS

GitHub will be at AWS re:Invent from November 26-30 in Las Vegas, Nevada. We can’t wait to see you there.

GitHub and AWS

GitHub works alongside AWS, so your team can collaborate quickly and securely with the tools they already use. With GitHub and AWS, you can integrate existing workflows and save time to focus on what’s important: your code. At AWS re:Invent, we’re hosting events throughout the week to help you learn how GitHub and AWS work together. Join us to see what’s new!

Check out our booth

Find us at booth #807 near the entrance of the Expo at the Venetian. Be sure to save your seat and stop by for one of several booth sessions, including:

  • Deploy to Lambda with GitHub and Jenkins
  • Your first GitHub Action: Deploying to AWS
  • AWS Security Automation Orchestration (SAO) and GitHub
  • Rise of the Machines: How GitHub Uses Machine Learning to Improve Software Development

Meet with GitHub Engineers

Schedule 1:1 meetings with GitHub Solutions Engineers to ask for advice and get in-depth information on how GitHub works for businesses.

Learn about GitHub Enterprise on AWS

In a featured session, Cox Automotive will share their experience running GitHub Enterprise on AWS. They’ll discuss their GitHub Enterprise environment and share how they’ve improved their processes for managing GitHub Enterprise on AWS with Terraform.

To attend this session, join us on Monday, November 26 at 4:45 pm PT at the Venetian, Level 2, Titian 2205-T2. Look for session ENT356-S in the event catalog to register.

For more details about the event follow @GitHub and tag us with #reinvent. We hope to see you in Las Vegas!

GitHub Desktop 1.5 available today

Since launching the new GitHub Desktop in 2017, we’ve focused on improving collaboration in the app, laying the foundation how you can work with Desktop today.

  • Earlier this year, we launched Desktop 1.2 and 1.3, providing you with the ability to compare branches and get notified when the default branch has updates to pull into your branch.
  • Last month, we released 1.4, providing information about whether or not you’ll encounter conflicts before merging.

Today, we’re releasing GitHub Desktop 1.5, representing a culmination of the work we’ve been doing this past year. This release completes the merge collaboration cycle by providing a way to initiate a merge in the branch dropdown, guiding you through resolving merge conflicts, and informing you when a merge is complete. It also includes our first step toward improving onboarding onto GitHub Desktop with the option to clone and add new repositories in the repository dropdown.

Merge conflict resolution

With today’s GitHub Desktop release, you can merge with confidence knowing that even if conflicts occur, we’ll help you through it so you can keep shipping. Merge conflicts can be intimidating for new developers, especially those working in teams. In our usability tests, the audible “NOOOOO” when encountering a conflict became predictable.

In our previous release, we reduced some of that anxiety by informing you whether or not you would encounter merge conflicts before merging, but you still needed to actually resolve the conflicts on your own. With more than 10 percent of all merges in the app resulting in merge conflicts, we knew we could do better. And with GitHub Desktop 1.5, you’re no longer on your own. The app will now inform you which files have conflicts, route you to your preferred editor to resolve them, list the conflicts that you still need to address, and show you when everything is resolved and ready to merge.

Merge conflict resolution in action

Listening to our users

As we’ve released features related to merging over the past several months, we’ve also had an opportunity to listen to lots of users. We care about your feedback, and this release incorporates several changes based on what we’ve learned from you. With GitHub Desktop 1.5, you can now initiate a merge from the branch dropdown, and you’ll receive feedback in the app to let you know when a merge is completed successfully.

We’ve also seen that the core function of adding a repository to Desktop has been difficult to find and use. We solved this by adding a simple way to create, add, or clone a repository right from the repository dropdown.

These changes are subtle, but together they represent our commitment to listen and learn from people using Desktop every day. We conduct user interviews and usability testing on a regular basis—if you’d like to participate and help make Desktop even more useful, please sign up.

Celebrating our open source contributors

Finally, we want to call out that this release is the first time we’ve shipped a feature iteration built almost entirely by community contributors outside of GitHub. The improved merge flow was a combined effort from @JQuinnie and @bruncun, and there were more than 30 merged pull requests from the community since our last release.

We continue to be blown away by the community that has grown around GitHub Desktop as an open source product. There were more community pull requests merged in September and October than in any previous months, and there’s no sign of slowing down. We’re grateful for the community’s participation in improving GitHub Desktop, and if you feel inspired to build something awesome together, we’d love to see you in our open source repository.

Newer

Changelog

Subscribe

Discover new ways to build better

Try Marketplace apps free for 14 days

Learn more