GitHub hosted Constellation Toronto on June 14 as part of a world tour to share news, plans, and current practices with the local developer community. The sold-out event included speakers from Shopify, RBC, and Telus, as well as Michael Nguyen, Solutions Engineer at GitHub.
The recent purchase of GitHub by Microsoft was addressed up front: the company will run as a standalone business unit with no operational changes expected. Coming improvements include full integration with Mitre’s Common Vulnerabilities and Exposures database to alert developers of security issues in dependencies of their code. Organizations that automate dependency management were said to have 60% fewer vulnerabilities in released software.
Shopify was GitHub’s first commercial client and continues to be one of its largest. With thousands of developers committing to their immense software repositories frequently, speed of committing updates and downloading repositories was a major concern. The company worked with GitHub to refine an architecture and procedures to support a highly active community regularly accessing large, volatile code bases. Background fetching of repositories allowed an initial six minute unproductive download time to be reduced to six seconds. Further details can be found in @burke’s notes. Shopify is currently working on improving productivity further with mirrors containing relevant subsets of the code base close to the developers that use them.
RBC, one of Canada’s large first tier banks, builds and provides APIs for non-customer data to the open source community. Their public developer portal provides a subset of the same infrastructure RBC’s internal developers use. Analytics use developer keys to track utilization. OAuth 2.0 is supported at both application and user levels. All data that can be obtained through the bank’s web portal without logging in is available to be accessed through APIs. There are no plans to provide access to customer data via third party applications due to authorization and security concerns.
Telus [slide deck here] found their adoption of agile practices in a technical employee base of thousands had created a disjointed stack with increasing need for additional oversight and coordination. A culture change they made to reduce context switching between meetings and development was Meeting Mondays: a dedicated day of the week for formal meetings, broad information sharing, and professional development talks with internal and external speakers. Telus makes heavy use of Slack to communicate globally across all time zones and uses GitHub to provide a globally accessible Wiki on their reference architecture: all technical knowledge and platform specifications. The company hopes to spread the culture improvements within their digital group to the broader employee base.
One theme of the day was that software is the tool we use to enable innovation, not an end in itself. Another was matching technology changes with culture shifts to create healthier teams, widespread involvement of stakeholders, and solutions that address problems at the system level. Despite the initial flurry of people declaring their departure for other source code repository solutions when the Microsoft deal was announced, it looks as though GitHub will continue to play a major and valuable role in both open source and corporate development infrastructure for the foreseeable future.