A few of our favorite 2018 ships

A few of our favorite 2018 ships

Sometimes the smallest ships have the biggest impact. With 2018 coming to a close, we’re providing a round-up of what we shipped and what you may have missed, both big and small. We didn’t include every launch of the year (that would make for a very long read), but we did recap this year’s most loved ships.

Collaboration

The developer community is at the heart of GitHub. It’s where new developers get started, where experienced developers expand their knowledge, and where all developers work together. As the number of software developers worldwide continues to increase, the opportunities for collaboration increase as well. We strive to build experiences that make it as easy and intuitive as possible for all developers to do their best work. Here are some ships that make collaboration on GitHub even better:

Business

This year, there are new ways for businesses to stay secure, keep developers learning, and increase collaboration across their organizations.

  • Learning Lab: Learning Lab is an interactive, bot-driven learning experience for developers learning Git, GitHub, and software development skills and workflows—now customizable to specific workflows and scalable across organizations. With recent updates, organizations can create custom courses specific to their own workflows, policies, and growth paths, so developers can continue to level up their skills on the GitHub Platform.

  • GitHub Enterprise 2.12-2.15: GitHub Enterprise saw three major releases this year, with our latest 2.15 version that was released at GitHub Universe. The start of the show for 2.15’s release was GitHub Connect, meant to unify the developer experience across different organizations and deployment types.

  • GitHub Connect: GitHub Connect breaks down organizational barriers, unifies the experience across deployment types, and brings the power of the world’s largest open source community to teams at work. With GitHub Connect, companies can enjoy the scalability and ease-of-use of our cloud offering with the control of on-premises.

Platform

Developers should be able to choose the tools that are right for them, and it’s our job to make this as easy as possible by keeping GitHub’s platform and ecosystem open. In 2018 we doubled down on this commitment by releasing new integrations, APIs, and improved versions of well-loved platform products. Here’s our top platform ships of the year:

  • GitHub Actions: Build, connect, execute, and share code to customize your software development workflow with GitHub Actions. Easily package, release, update, monitor, and deploy your project, in any language—on GitHub or any external system—without having to run code yourself.

  • Google Cloud Build: Create fast, consistent, reliable builds across all languages. Easily set up CI through Cloud Build and automate builds and tests as part of your GitHub workflow.

  • Microsoft Azure Pipelines: Configure a CI/CD pipeline for any Azure application using your preferred language and framework as part of your GitHub workflow in a few simple steps.

  • Better JIRA integration: The improved integration allows software teams to connect their code on GitHub.com to their projects on JIRA Software Cloud. The new app updates JIRA with data from GitHub, providing your team with visibility into the status of your work.

  • Slack app for GitHub: The updated slack app brings GitHub activity right into your channels—keeping your teams up-to-date and productive. Along with the new app, we released some improvements, such as slash commands and private link previews.

  • GitHub extension for Visual Studio: Available for both GitHub.com and GitHub Enterprise, you can fork and customize GitHub for Visual Studio Code until it’s everything you want it to be.

  • GitHub for Unity: The new Unity package provides Unity game developers with the benefits of source control and GitHub without having to switch to the command line.

  • Checks API: Instead of pass/fail build statuses, your integrations can now report richer results, annotate code with detailed information, and kick off reruns—all within the GitHub user interface.

  • GitHub Experiments: We launched Experiments—a collection of demonstrations highlighting our most exciting research projects and ideas.

  • GitHub Desktop 1.1-1.5 releases: With five releases in 2018, GitHub Desktop is improving fast. With this year’s improvements you can compare branches, get notified when the default branch has updates to pull into your branch, compare conflicts before merging, and initiate a merge in the branch dropdown. Watch for our 1.6 release in early 2019.

Security

The security challenges that underpin software today are community problems. Developers and organizations have to protect their projects and businesses while staying vigilant and current on new security threats. Here are some of the notable 2018 ships that will help keep your code safe.

  • New improvements and best practices for account security and recoverability: In July we released new improvements meant to keep software development happening on GitHub safer.

  • Security vulnerability alerts available for Python, JAVA and .NET: Our security vulnerability alerts now support Java and .NET (in addition to existing support for JavaScript, Ruby, and Python). With security vulnerability alerts, organization owners and repository admins receive a notification when a known vulnerability enters a codebase.

  • Token scanning: Ensure your tokens and keys are never accidentally committed and exposed in a public repository. We scan public repositories to search for known token formats. If we find a token, we alert the provider who will validate it and contact the account owner to issue a new token.

  • Security Advisory API: To power GitHub security features, we aggregate and validate security feeds and monitor dependency upgrades across millions of projects. With the new API, this data is at your fingertips and ready to be integrated into the tools and services you already use.

Learning

Our goal is to lower the barrier to entry for anyone who wants to learn to code. GitHub Education had a big 2018 with product and program improvements to make it easier for student developers to get the real-world experience they need to build great software—and lead the next generation of software developers.

  • Classroom Assistant: We launched Classroom Assistant to allow educators to easily download all the repositories in their course. It’s a cross-platform desktop application, available for Windows, Mac, and Linux.

  • GitHub Education: The new GitHub Education program allows schools to get whatever version they want of GitHub for free.

  • Student Developer Pack: The Student Developer Pack provides students with access to the best real-world tools so they can learn to code by doing. Unlike other free student tools in the industry, GitHub does not require a school email address to get the Student Developer Pack, which lowers the barrier to entry for millions of new developers worldwide. In 2018 we made the pack even better with the addition of Algolia, Heroku, GitKraken Glo, and JetBrains.


In 2019 we’re going to keep listening and keep shipping. We’re going to continue to build great products while maintaining our commitment to supporting developers in their choice of any language, license, tool, platform, or cloud. Thank you to all 31 million of you—we can’t wait to see what you build next.

GitHub for Unity adds support for GitHub Enterprise

It’s been over six months since we introduced GitHub for Unity 1.0, and we’ve been busy. Since launch, we’ve continued to improve the extension and fix bugs, focusing on maintenance and providing an overall smoother experience.

GitHub Enterprise support

The GitHub for Unity team received multiple requests to support GitHub Enterprise. Most recently, a team wanted to use the Unity plugin for their gaming engine but needed Enterprise support. GitHub Engineer @stanleygoldman addressed the request and shortly after, we were able to release a beta for customers to use and share feedback on.

In this release, GitHub for Unity version 1.2.0 officially supports GitHub Enterprise. Now, even more developers will be able to use the GitHub for Unity extension.

GitHub for Unity displayed

What’s next for GitHub for Unity

We’re a small team. We’re still trying to figure out what our impact should be and what work we should focus on. In 2019, we’re excited to see what’s in store for GitHub for Unity—and we’d love to hear your thoughts.

If you have questions, feedback, or want to get involved in building the GitHub for Unity extension, reach out to us in the project repository or on Twitter. Or see what we’ve been up to—try GitHub for Unity.

Download all of your GitHub data

Your trust is our first priority. That’s why we’re making it easy to get all of the data connected to your profile, whenever you need it. Now you can better understand what information we store, so you can make informed choices about how you use GitHub.

screenshot of requeseting an archive of your GitHub data

How it works

Follow these steps to request an archive of your data:

  1. Visit your account settings page.
  2. Click “Start export” in the “Export account data” section. You will receive an email when the export is ready.
  3. Click the link in the email to download the archive.

The archive will contain your profile data, plan, and any email addresses connected with your account in addition to the issues, pull requests, comments, reviews, releases, projects, events, attachments, milestones, and settings for each of your repositories—along with basic information about the users who have interacted with them.

Since the information is exported in a machine-readable format (Git and JSON), the archive allows you to back up your data offline, or move it to another service altogether. After all, it’s your data.

Archives remain available for seven days or until you choose to delete them. If you want more control over what information is exported, or if you want to export an organization’s information, use the Migration API.

Learn more about archiving your data

The State of the Octoverse: new open source projects in 2018

Top open source projects of 2018

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.

In 2018 alone, we saw more new users than in our first six years combined, and we celebrated hosting over 100 million repositories. All of this growth is thanks to the open source community. Together, you’ve built and collaborated on a broad spectrum of projects, from hobbies to professional tools and across varying developer experience levels. As the year comes to a close, we wanted our final Octoverse report of 2018 to highlight some of your most active new open source projects of the year.

To look back at your projects, we pulled data from December 10, 2017 to December 9, 2018. We pulled the top projects open sourced in 2018 by the number of stars the project received in its first 28 days being public and by the number of unique contributors to the project in the first 28 days being public.

Top projects of 2018

The top projects open sourced in 2018 run the gamut from learning to code to tools for professionals, from side projects for fun to projects for getting work done.

For those new to code, or new to a coding language, you starred projects with coding examples, like trekhleb/javascript-algorithms and leonardomso/33-js-concepts, along with quick tutorials like 30-seconds/30-seconds-of-code.

You also contributed to projects for Hacktoberfest, adding Hello World programs in a variety of languages to Hacktoberfest-2018/Hello-world and Omkar-Ajnadkar/Hello-World, or even more complex algorithm examples to VAR-solutions/Algorithms.

You also had a lot of fun, starring and contributing to gaming projects like wangshub/wechat_jump_game, and had some laughs with projects like kelseyhightower/nocode. felixrieseberg/windows95 and Microsoft/MS-DOS sparked some nostalgia, quickly attracting your stars and contributions.

New open source projects also helped you get work done with tools like denoland/deno for developing in TypeScript, ValveSoftware/Proton for porting games to Linux, and facebookresearch/Detectron to support research in image recognition algorithms.

Based on stars

We pulled the top 10 projects open sourced in 2018 based on the total number of stars they accumulated in their first 28 days on GitHub.

Top contributors based on stars

Based on contributors

We pulled the top 10 projects open sourced in the 365 days prior to December 10, 2018 based on the total number of contributors to the project in their first 28 days on GitHub.

Top projects based on contributors

Top topics for new open source projects

These are the non-language topics that had the biggest increase in number of open source projects created in 2018 compared to 2017. Third on the list, dotnet shows that more open source projects are developing apps for Windows. In our programming languages post, JavaScript was the most popular language for new projects, and we see nodejs, react, and vue in the top topics for 2018—all tools for developing in JavaScript. Machine learning is also gaining momentum on GitHub with new open source projects tagged machine-learning.

  1. nodejs
  2. react
  3. dotnet
  4. docker
  5. android
  6. machine-learning
  7. api
  8. ios
  9. cli
  10. vue

Whether you’re here to do your job or tinker with new technologies, it’s exciting to see an environment where where new developers feel comfortable in code and experienced users have open source communities and projects to innovate. Cheers and congratulations to a year of new ideas emerging, knowledge gained, and continually changing the way we build and think about software development.

Stay tuned for more posts that dive in data on the GitHub Blog—or check out our reports on breaks and holidays and programming languages to see what a community of 31 million developers can accomplish in a year.

Introducing the new GitHub Status Site

Developers and teams expect business-critical services to be reliable. From our perspective, reliability can be defined by three questions: is the product available, how well does the product recover from failure, and how performant is the product as it evolves over time. In order for millions of developers to develop, build, and deploy their software, the underlying platform that powers GitHub must be resilient to a wide range of failure modes. We understand that our products need to satisfy the levels of trust our community expects of us when putting their code and their livelihoods on our platform. Today, we are pleased to announce the new GitHub Status Page.

Behind the Scenes

GitHub is built on a platform of distributed services, spread over multiple data centers across the globe. An incident can occur on any of one these platform tiers, affecting either a standalone service or a cluster of interrelated components. With that in mind, we needed a way to accurately communicate this level of granularity to our users and designed a new status page to provide this functionality.

Our new status site now lists the individual component statuses that make up our wider product. Now GitHub can communicate the statuses of components that matter most to our users, and users can subscribe to them. Git operations, for example, are now split out from API requests, and Pages builds can be tracked independently of Notifications. This makes our messaging during an incident more accurate and reliable.

A component list of all of the services that make up GitHub.

In addition to splitting out the component products on the status site, we’ve also focused on improving and organizing the information we provide to users during an incident. Our goal has been to change our workflow to improve our customer communication during an incident and to reduce friction for incident commanders.

To do this, we started by decoupling the idea of a component status update (e.g. Pages is experiencing degraded performance) from the lifecycle of an incident. The degraded performance of a component could be representative of a wider incident, but updating its status does not allow us to track and share mitigation steps and descriptive updates. In other words, status updates are snapshots in time of a specific component, and incidents are trackable communications between GitHub and customers.

Integrating the new status into your operations

One of the benefits of the new status site is the ability to subscribe to our status changes in multiple ways, such as email, SMS, or webhook delivery. These subscriptions can follow the entire lifecycle of an incident from investigation to remediation. For example, if you’re using Jenkins to run a Continuous Delivery pipeline and our Git operations experience a service slowdown, you could create a webhook to have your Jenkins system apply a backoff mechanism to prevent downstream errors.

A popover of all of the subscription options for consuming status state changes.

Deprecating the old status site

Over the next three months, we’ll continue to support our old status site, as well as its API. So you’ll have time to move any integrations over to the new site. Throughout February leading up to the deprecation, we will perform brownouts in an effort to help you identify systems that may be pointing at the deprecated site. At the end of February, we’ll be adding a redirect for web traffic to the new status page and fully shutting down the old API.

Testing out the new site

In addition to deprecating the old site, we will test the new one on our live systems. On December 18, 2018, we’ll be running a test of our new incident response workflow at 10:00 PST (18:00 UTC). Throughout this test, we will have an active incident that starts with "TEST". This test will not reflect the real status of our products, but will only serve as a way to test new tooling, processes, and the status site. Our component products will not be going through any disaster recovery processes. You will notice during that time that services may appear to be degraded via the status site but that won’t be the case. If you do find any issues or problems with the status site during this time, please reach out to us.

Reliability as a product feature

The new status site is the first of many public commitments we’ve made at GitHub to treat reliability and performance as a product feature. Doing so is a responsibility, not only of the engineers, but of our entire organization. This means that product managers and designers care about and prioritize reliability along with and against new features. Over the coming months, we’ll continue to build on this theme, so you can keep putting your trust and your software development workflows on GitHub.

Have feedback? Let us know what you think of the new status page.

Newer

Changelog

Subscribe

Discover new ways to build better

Try Marketplace apps free for 14 days

Learn more