DMM.comの、一番深くておもしろいトコロ。

GitHub Universe 2019参加レポート

GitHub Universe 2019参加レポート

  • このエントリーをはてなブックマークに追加

画像

はじめに

こんにちは、プラットフォーム事業本部の三浦(@_Andrew_Haru)です。 不正対策チームでエンジニアをしています。

DMMではGit/GitHub Enterpriseでバージョン管理を行っており、日々の業務で僕自身もよく利用しています。
そんななか今回は、GitHubの知見と自身のモチベーションを高めるべく、サンフランシスコで開催された『GitHub Universe』に参加してきました。

GitHub Universeとは

『GitHub Universe』はGitHub主催のDevelopers Conferenceです。2015年から開催されており、今年で4回目になります。
GitHubの今後の新たな挑戦や、ソフトウェア業界を前進させるツールと概念をセッションやブースを通して世界中の参加者と一緒に学べます。
今年もサンフランシスコのパレスオブファインアーツで開催されました。

会場の様子

会場には様々なブースが設置されており、終日賑わっていました。 ここでは、いくつかご紹介します。

〜Connect Space〜
画像
GitHubを通じて新しいスキルを学習したり、世界中のエンジニアと注目のプロジェクトについて相談・交流できるスペースです。

〜Ask GitHub〜
画像
GitHub内の各担当チームに質問や相談をできます。
Enterprise TeamやProduct Feedback Team、Platform Teamなど質問したい内容によって担当してくれるチームを選べます。

〜GitHub Shop〜
画像
GitHub公式グッズがたくさん売られていました。

〜OctoCat Generator〜

自分だけのOctoCatをつくることができます。かわいい!

KeyNote

今年のKeynoteでは様々なすばらしい発表がありました。
発表のなかで、特に会場が盛り上がっていたものをここでは紹介しようと思います。

▼GitHub for mobile

画像
"GitHub for mobile"は、GitHubをスマートフォンやタブレット上で利用することのできるネイティブアプリです。
プルリクエストへのコードレビューおよび承認作業や、ディスカッションに対してのフィードバックなど複雑な開発環境を必要としない作業であれば、このモバイルアプリを利用して実現できます。
これでどこにいても共同作業が実現できて、開発者の生産性をあげることができます。 また、ダークモードも搭載されているのは嬉しいですね。
2019年11月現在はiOSのみベータ版がリリースされていますが、Android版も近日中にリリースされるとのことです。

▼GitHub Arctic Code Vault

画像
会場がかなりどよめいていたのがこのプロジェクトです。
次世代のためにOSSを保護する目的のもと、GitHubの全パブリックリポジトリを1000年間想定で北極圏の地下に保存します。
この活動は継続的に実施され、記念すべき第1回目は2020年2月2日に行われるそうです。
プロジェクトの規模が壮大ですね。

▼GitHub Security Lab

画像
世界中の多くのプロジェクトがオープンソースパッケージに依存していて、その規模も膨大であること、またそれに立ち向かうセキュリティ専門家が現状不足していることなどを課題として挙げました。
セキュリティリサーチャー/メンテナー/企業というコミュニティ間でセキュリティ脆弱性に対応していこうというのが、このGitHub Security Labです。
今後はイベントを開催していき、ベストプラクティスを共有しつつすべての開発者が参加できるようにしていくとのことです。
皆で協力して脆弱性に立ち向かっていこうという思いが素晴らしいですね。

その他の発表についてはGitHub Blogでもまとめられていますので、ぜひご覧ください。
https://github.blog/jp/2019-11-14-universe-day-one/

Pickup

2日間に渡って行われたセッションは、その数36。製品にフォーカスを当てたものや、スキル、オープンソースに関連するものなど様々なジャンルから選ぶことができました。
ここでは自分が参加したセッションから、特に面白かったものを紹介しようと思います。

▼Deep dive into GitHub's newest features

githubuniverse.com

このセッションでは、GitHubでの日々のワークフローをより効率的に行えるように、あまり知られてない機能やKeynoteで発表された新機能をどのように有効活用していくかが紹介されました。
開発・プロジェクトマネジメント・エンタープライズオーナーと分けて、おすすめの機能やHow toが紹介されていました。
例えば、

  • マージするためのPull Requestではなく、コードがまだ未完成の段階でメンバーに確認してもらい、その都度フィードバックをもらいたい場合に、Draft Pull Requestを使う
  • 既存と同じディレクトリ構造やファイルで新しいリポジトリを作成したい時に、既存のリポジトリをテンプレート化して用意しておこう
  • Beta版の機能を実際に試してみたい時にFeature Previewを有効にしてみよう

他にも様々な紹介がありましたが、今まで知らなかった便利な機能が発見できて勉強になりました。

▼Building open source communities of starfish

githubuniverse.com

オープンソースソフトウェアへの貢献は文化・言語・地理を超えて世界中の開発者と共同開発を行うことになります。
一緒に開発を行ってくうえで、コミュニケーション・時間・明確なパスがないという問題を指摘しながら、どうすれば誰もが成長できる環境を築けるのかをレクチャーしてくれました。

  1. 分権化
  2. K.I.S.Sの原則
  3. 適応性
  4. 拡張性
  5. 誰もが貢献できる状態

これは、規模に関係なくチームで開発を行っていく以上、非常に大切にすべき考えだと感じました。

おわりに

海外カンファレンスに1人で参加するのは今回が初めてということで渡航する前はかなり不安でしたが、行ってみるとすごく賑やかで終日楽しめました!
そして、世界中の開発者と会って交流するという、普段はできない貴重な体験をし得たことが何より嬉しかったです。
技術で世界をより良くしていこうという熱がすごく伝わってくる2日間でした。
自身のモチベーションも高まったので、カンファレンスで得たGitHubの知見を業務で積極的に活かしていこうと思います。