Third Annual GitHub Data Challenge

GitHub's annual data challenge is back, and we can't wait to see what you'll build this year, be it beautiful generative art or full blown, third-party activity dashboards. Check out the winners from 2013 and 2012 for some inspiration.

The Details

Entries are generally visualizations, prose descriptions of data analyses, or both. We love innovative entries, so an "entry" is defined somewhat loosely.

There are only three rules:

  1. To enter, you must fill out our submission form by midnight PDT on August 25th, 2014.
  2. Your entry needs to use publicly available GitHub data from any number of available sources described below.
  3. Show your work! Whatever you submit needs associated code or documentation describing what data you used and how you processed it. Some examples of what we're looking for include code (and instructions to use it) in a GitHub repository, an academic write-up of your analysis, or an informal prose write-up. If you're not linking to a repository, you should submit a Gist with your documentation.

After the submission deadline on August 25th, GitHub employees will review and vote on all entries to pick the three top winners. We'll send out notifications to those top three by mid-September.

Data Sources

GitHub activity data is available from several publicly-available sources. Here are a few links to get you started:

  • Our very own API.
  • The GitHub Archive, providing historical archives of our public timeline data.
  • Google BigQuery, where GitHub's public timeline is a featured public dataset; see the GitHub Archive home page for getting started instructions.
  • GHTorrent, which maintains a relational model of GitHub activity data and offers archives for download.

ProTips

There are a few things we're looking for when we score your entry:

  • Innovation/Story: Does your entry tell a good, data-driven story? Does it reveal interesting insights about GitHub activity? We love it when we're surprised by new insights hidden in our own data.
  • Accuracy: Is your analysis accurate? Do accompanying visualizations clearly and unambiguously convey your conclusions?
  • Completeness: Is your entry a code submission? If so, is your code well-organized and documented? Can others easily understand and reproduce your analysis from the materials you've submitted?

The Prizes

The winning entry in this year's data challenge will receive an all-expense paid trip to attend a one-day data visualization course taught by Edward Tufte, a data visualization expert and the author of some of our favorite books on visualization. We'll cover your enrollment for the course (either December 18th or 19th in San Francisco, CA), along with travel expenses to and from San Francisco, lodging at a nearby hotel for two nights (the evening before and of the course), and your meals.

The second and third prize contestants will receive $500 and $250 cash prizes, respectively.

Finally, all winners will have their GitHub profile and their data challenge entry publicly featured on our blog!

If you have questions about the data challenge rules, drop us a line at data@github.com. Good luck!

Introducing a simpler, faster GitHub for Mac

Following the recent release of GitHub for Windows 2.0, we’ve been working hard to bring our two desktop apps closer together.

We’ve just shipped a significant new update to GitHub for Mac, with simplified navigation and a renewed focus on your cloned repositories.

With this update, you’ll be able to spend less time navigating lists of respositories, and more time focusing on your repositories and your branches.

Repositories Next

Simplified Navigation

The sidebar now features all your repositories grouped by their origin, and the new toolbar lets you create, clone, and publish additional repositories quickly. You can also press ⇧⌘O to filter local repositories from those associated with GitHub or GitHub Enterprise, and switch between them.

Cloning repositories from GitHub

Fewer steps are required to clone repositories from GitHub Enterprise or GitHub.com. You can now press ⌃⌘O, type the repository name, and then press Enter to clone the repositories you want and need.

Cloning GitHub Repositories

Switching and creating new branches

The branch popover (⌘B) has moved to the new toolbar, and now has a “Recent Branches” section that provides a convenient way to switch between all of your in-progress branches.

Branch creation (⇧⌘N) has moved to its own popover, and you can now create a new branch from any existing branch.

Switching and creating new branches

How do I get it?

GitHub for Mac will automatically update itself to the latest version. To update right away, open the “GitHub” menu, then “Check For Updates…”, or visit mac.github.com to download the latest release.

NOTE: This release and future releases of GitHub for Mac require OS X 10.8 or later. If you are still running OS X 10.7, you will not be updated to this release.

Feedback

We’d love to hear what you think about this release. If you have any comments, questions or straight-up bug reports, please get in touch.

Pay for GitHub with PayPal

GitHub is now accepting PayPal, in addition to credit cards, to pay for personal plans and organization accounts.

image

We've been working closely with Braintree to deliver PayPal payments using their brand new APIs and we're pretty excited with the result. You can use PayPal whether you're just signing up, looking to upgrade, or want to switch off credit card payments.

Paying for GitHub with PayPal has never been easier or looked better, and we're hoping that no matter where you are in the world, you'll be able to use GitHub to build something great!

For more information, see "Paying for your GitHub user account" or "Paying for your GitHub organization account" in the GitHub Help.

GitHub Enterprise 11.10.341 Release

GitHub Enterprise releases are all about offering large companies more of GitHub to deploy in their own environments, and today's release is no exception. We've added a number of features that improve speed, flexibility, security, administration, and more.

Faster Git operations

Smarter caching on the server side now optimizes the initial counting objects phase of all Git network operations. This drastically reduces the CPU time required by Git network operations, allowing more simultaneous clones and fetches without increasing the load on the Virtual Machine. You'll also find Git clone, fetch, and pull to be an order of magnitude faster, especially for large repositories.

performance-graph

Activity data across all your projects

See what's happening across all projects on GitHub Enterprise in one place, from users and organizations to issues, pull requests, and code review comments. The Activity Dashboard compiles all this data and presents it in easy-to-read graphs, along with past data from the same time period.

activity-dashboard

LDAP configuration improvements

You can now better configure GitHub Enterprise to your company's LDAP setup. Nested user groups are supported, users can change their username and still be mapped to the same distinguished name, and you can specify the name of attributes to map to imported fields.

authentication

Advanced settings for blocking force pushes

More options for blocking force pushes enable you to configure settings as you need. You can now block force pushing for a specific user, on the default branch of an organization's repositories, and for all branches on a single repository.

force-push

... and so much more!


If you're currently using GitHub Enterprise, you can download this release from the Enterprise website. If you want to give GitHub Enterprise a try, request a 45-day free trial.


Update: After this morning's announcement, we noticed an issue with the original 11.10.340 release and have issued a patch release with a fix. All links in the blog post above now redirect to the correct release notes and download page. We're sorry for any confusion this may have caused. If you have any issues with the newest release, please contact us at enterprise@github.com.

Introducing the Revert Button

We've all merged bad pull requests and wanted to roll back the changes without having to rely on Git commands. Starting today, you can easily revert a pull request on GitHub by clicking Revert:

You'll be prompted to create a new pull request with the reverted changes:

More details about reverting pull requests are available in Help.

OctoTales • GREE

Open source software development practices are growing all over Japan, and one company at the forefront of these efforts is GREE. Their mobile social gaming platform connects 230 million users worldwide, and they've been building it using GitHub Enterprise since 2012. We recently had the pleasure of talking with GREE for our latest episode of OctoTales.

オープンソース・ソフトウェアの手法を用いた開発ワークフローは日本中に浸透して行っていますがこの開発スタイルを取り入れている企業の中にGREE社があります。GREEのソーシャルゲームプラットフォームは世界中で2億3千万人以上のユーザーが利用していまして、2012年からGitHub Enterprise を活用しています。OctoTalesの最新エピソードではGREEのメンバーとお話をしました。


Are you using GitHub in Japan and looking for some resources? We've translated our Git Cheat Sheet into Japanese, and our GitHub & Git Foundations videos now have Japanese subtitles.

GitHubの日本語のリソースも増えています。Git Cheat Sheet を日本語に訳しましたし、 GitHub と Gitの基礎のビデオシリーズ にも日本語の字幕を追加しました。

A better branches page

Branches are an essential part of collaborating using GitHub Flow. They’ve always been cheap and easy to create within a GitHub repository, and today we’re making branch management more straightforward.

At the top of any repository page, click Branches to see an overview of the branches across your project.

Atom’s branches page

You can quickly filter the branches you’ve created, and see which branches are most active. New sections on the page also make it more obvious how you need to take action on the branches in your repository—whether that’s cleaning up stale branches, examining a branch with a failing test, or sending a pull request for the branch you just pushed.

See the branches you care about

Need more help? See Creating and deleting branches within your repository and Viewing branches in your repository in GitHub Help.

Octicons for everyone!

octicons

Two years ago we started using Octicons—our icon font—on GitHub. We use them in many of our sites and include them in Atom. Now we are making them available for download to everyone else. Go forth, and octiconify the world.

octicons.github.com

Gist Design Update

Today, we're shipping a design update to Gist to give it that same look and feel you're used to on GitHub.com.

Updates include:

  • Redesigned conversations
  • Redesigned revisions view
  • Redesigned user profile
  • Redesigned navigation to match GitHub.com
  • Additional clone/embed options
  • And many more!

design-update

We hope you enjoy all the great new updates to Gist.

Happy Gisting!

Locking Conversations

Starting today, you can lock the conversation on an issue or a pull request. If you're a collaborator on a repository, click the lock in the sidebar of an issue page to lock the thread:

Lock link

This will be reflected in the conversation timeline:

Issue event

Users who aren't collaborators on the repository won't be able to comment further:

Locked form

Repository collaborators will still be able to continue the conversation on a locked thread if they'd like.

Remember that, in addition to conversation locking, you can also block or report users to help keep GitHub a safe community for everyone.

Say hello to GitHub for Windows 2.0

Two years ago we launched GitHub for Windows as the easiest way to use Git and GitHub on Windows. Today we're shipping a major update that helps you focus more on your work and gives you a more streamlined way of getting that work to and from GitHub.

Your work, emphasized

When you write code, your workspace should be as distraction free as possible. We've focused GitHub for Windows so that what you're working on is front and center.

GitHub for Windows 2.0

Everything you need in one screen

The less time you spend navigating through menus and options, the more you can focus on getting things done. Now your local repositories are always available in the left sidebar, and you can create, clone, and publish repositories without having to navigate to a new screen.

Creating and publishing repositories

The sidebar also groups your repositories by where they originated, so repositories associated with GitHub Enterprise are easy to distinguish from your personal projects and it's simple to switch between them.

More of GitHub locally

GitHub for Windows also now supports more of the GitHub feature set. You can pick an ignore file template for your project when you create a repository, and you can include emoji and gifs in your commit messages.

What are you waiting for?

If you have GitHub for Windows installed it will automatically update to the latest version. If you don't have it installed, download GitHub for Windows 2.0 at windows.github.com.

Patchwork Night UK Edition

We're happy to announce a new Patchwork hack night at the beautiful ustwo studio in London.

ustwolondon_nov_2013_04_1_1_1

Learning open source, together

Patchwork is a hands-on workshop for learning Git and GitHub. We'd love for you to join us. There will be snacks for fortified hackin', lots to learn, and new friends to be made.

Forks you don't eat with? Branches not made of wood?

Attendees will leave with a merged pull request, a square on your contributions graph, and confidence to get more involved in the exciting world of open source.

Let's do this

Are you ready to show the open source community what you've got? Myself, @muan, @andrew, @lildude, @shiftkey, @tobiasahlin, other GitHub staff and community mentors will be on hand to answer your questions.

No coding experience required!

  • Want to learn Git and Github? RSVP as an attendee.
  • Want to help guide future open source maintainers and contributors? RSVP as a mentor.

Details:

  • For: Git and GitHub beginners.
  • When? Wednesday, June 18th from 6:30-8:30pm.
  • Where? ustwo's studio at 62 Shoreditch High St, London E1 6JJ, United Kingdom.
  • Bring: Make sure you bring your laptop with Git-it installed (we'll help you if you get stuck).

Once registered, you'll receive an email a few days before the event with a few more details on Git-it, so you can hit the ground running.

PSD Viewing & Diffing

We've supported image viewing and diffing for quite some time now, but today we're happy to announce that we're adding PSD files to the images we support for this. Any PSD assets in your repositories will be treated just like images, meaning you can view them inline and use our three image view modes to see what's changed in a commit.

Onion skin

As always, read more about it in our help documentation.

Diversity and Feedback at GitHub

Back in April I said we would share the new initiatives we're launching to ensure GitHub is a welcoming and inclusive company. This work is long term and will remain a constant focus for us, but I wanted to share some of the progress we've made so far.

A few weeks ago we identified a number of areas we'd like to improve, and so far we've focused our early efforts on three in particular: the experiences of women at GitHub, improving feedback, and supporting diversity both internally and externally.

Task Force

In April, a group of employees formed a task force to explore the experiences of female employees at GitHub and surface any issues that might not be obvious. The group has been gathering feedback from some of the women at the company, meeting regularly to discuss, and sharing this feedback internally.

The task force has been using a repository to discuss new ideas and individual experiences, which has been helpful in opening up the discussion to the whole company. We know not everyone wants to share their experiences openly and we are working on developing a formal feedback system (more on that later), but we have already received some good ideas and feedback from the people who have participated.

The big themes we've heard so far:

  • We all need to get better at respectful and constructive feedback and communication, both verbal and written.
  • We need to better educate employees on everyone's role and function, and we need to especially get better about understanding and appreciating people in non-developer roles.
  • We need to do more to celebrate and increase diversity within the company, including women.

Some of the things we're doing based on this feedback:

  • We’re in the planning stages of designing a diversity and communication training curriculum for GitHub employees with input from Hubbers and external experts. Topics will include diversity training, effective communication, giving and receiving peer feedback, and conflict resolution.
  • We have started informal internal workshops focused on developing leadership skills, and we are looking to create more formalized training programs by early next year.
  • We have started an internal cross-training program where different teams within GitHub educate other teams on what they do. This is part of our push to help everyone understand how different roles and skills contribute to making GitHub work.

The task force will continue to meet, gather feedback, and discuss ways we can improve, and we're encouraging everyone to participate in these discussions. We will also continue to gather feedback from every employee so we know what we can do better.

Improving Feedback

GitHub has historically operated without any formal feedback system. While we've tried to encourage employees to give each other direct feedback, the lack of clear process and training left Hubbers on their own to understand how and when to have conversations with other people in the company.

We are currently in the process of developing and implementing a formal, documented feedback system for everyone in the company. So far we've begun rolling this out in Engineering, our largest department, and we intend to take it further. Our goal is to ensure that everyone has frequent, constructive feedback and someone they can go to with questions or concerns who can help them. We want people to know where they stand and that someone has their back, and in the past we haven't been good at this.

We've also been expanding our HR team since hiring a head of HR in January and are using their experience to help develop this system, from the communication training program I mentioned earlier to clear steps to take when you need help.

Supporting Diversity

Supporting diversity has always been important to us but recently we've been ramping up our support, participation, and sponsorships for community groups and events that promote diversity in tech. This includes sponsoring more groups focused on helping women in tech and sending employees to conferences focused on these issues, such as the The Grace Hopper Celebration of Women in Computing.

We’re also planning to use the community space at our San Francisco headquarters to sponsor and host more frequent diversity-focused events, including events led by community organizations, official GitHub events, classes, and meetups.

If you’re interested in using our space, are seeking sponsorship, or have an idea for how we can help, please let us know: https://community.github.com

One of the biggest lessons I've learned over the past few weeks is improving isn’t just about developing solutions - a huge part is getting good at surfacing problems. Without a solid feedback system, without talking to people regularly, without explicitly focusing on these issues, without asking people how they're doing and having them feel safe telling you the truth, you'll never know what the real problems are. If people feel like they can't speak up, you'll never hear what they have to say, and you'll never know they're not saying it.

Making GitHub a great place for everyone is something we have to work towards every day. In the future we’ll continue to post about new initiatives, updates on our progress, information on how our philosophies around things like sponsorships are evolving, and details on events we're hosting or participating in. Consider this post the first of many.

Nested task lists

The most organized people know that finishing a task rarely involves just one step. That's why we're excited to announce nested task lists!

For example:

- [ ] Figure out wormholes
  - [ ] Call @arfon
  - [ ] Research ([docs](http://en.wikipedia.org/wiki/Wormhole#Time_travel))
  - [ ] Build prototype #15
  - [ ] Test run #43 @world-domination/time-travel
- [ ] ...?
- [ ] Profit!

Now renders as:

nested task lists

Updates work as before: check items on and off to update their completion state.

For more information, see the Writing on GitHub article in the GitHub Help.