このブログはCyberAgent Developers Advent Calendar 2016の8日目の記事です。
昨日はarumaniさんのARインスタレーション『Ameblo EX』の技術でした!
みなさまこんにちは!!!
@kakerukaeruと申します。
普段は主にSlackに最適なAAを貼って議論を円滑に進める手助けをしたり、雑コラを作って場を和ませたり、矛盾AAをある場所に誤爆する仕事をしています。あとたまに、コンテンツ配信まわりのインフラの面倒を見たりGHEの管理をする仕事をしています。
突然ですが、GHEの管理者の皆様!!
GHEのversion 2.8系がリリースされましたね!
先日GitHub Universeで紹介された機能が使えるようになっているみたいですよ!!
ということで、今回は二ヶ月前(!?)にサンフランシスコで開催されたGitHub Universeに行ってきたので、その報告をさせていただきます。
GitHub Universeとは
最初にGitHub Universeとはなんぞやというお話をすると、GitHub Universeはその名の通り(?)GitHub主催のDevelopers Conferenceです。開催は今年で二年目、サンフランシスコのPier70というイベントスペースで開催されています。
会場の外観はどこからどう見ても廃工場で、Octcatが出迎えてくれなかったら会場と認識できなかったかもしれない。また外観とは対照的に中はGitHubのパートナーのブースやエンジニアが作業しやすいような休憩スペースも完備されており、快適な空間が演出されていた。
入場カードには上部に複数個の穴が空いていて、配られた紐であなたの好きな星座を作ってみてねというモノ。ナンカおしゃれ。そしてまんまと乗せられて星座を作ってしまうという。
中に入ると、Octcatが出迎えてくれた。外にいたOctcatと可愛さの差が激しすぎてビビるレベル。
中に入ってスグに、うわぁ!?と声を出してしまった。
逆に、GitKrakenは凄いしっくり来る。
もうちょっと奥に入ると、エンジニアが集まりやすそうな快適なスペースがあった。
フリードリンク取ってきてダラダラ過ごし、自由に作業したり隣の人と話して情報交換したりしていい憩いの場だった。
keynote
day1
初日のkeynoteの流れとしては、Electron、GitHubの教育に関する活動、OSSを取り巻く事情、GitHubの新機能、といった順で話が進んでいきます。もちろん新機能の話自体はとてもボリューミーかつ凄く魅力的で楽しかったのですが、既に色々まとまってるのでここでは割愛します。
keynoteの中でも個人的に特に興味深かったのがGitHubの教育への取り組みです。
GitHub Education的なのが凄まじく、Student Developer Packを使えば学生はdatadogとかTravisCIとかが無料で使え、更にGitHub Classroomを使えば、acドメインのメアドがあるのが条件だが、privateRepositoryとかが無料で使えるというもの。大学での教育をより円滑にすすめるように貢献しているとのこと。
上記の機能自体は去年のGitHub Universeでも発表されたことらしいが、これらの活動を継続的に行い、利用者数は20万人を超えているとのこと。またudacityや、Black Girls Codeと組み、ハッカソンや教育活動などにも積極的に取り組んでいて、教育への取り組みへの熱を感じさせられました。
day2
2日目のkeynoteも面白い内容でした。
自身の経験になぞらえて、すべての情報はオープンであるべきだということ。
現在、OSSの活性化により博物館見て回るかのように、新しいコードを自由に探し求め触ることが出来ること。
また、アメリカでは毎年6万人のコンピュータサイエンスの学生が卒業しているが、今後20年で1500万人のコンピューターサイエンスの雇用が見込まれている中でEngineerの需要が今後どんどん高まるであろうという事が説明されていました。
個人的に凄く良い取り組みだなと感じたのは、退役軍人さんにソフトウェア開発のトレーニングをし次の職を見つけやすくするOperationcodeです。これまた、GitHub Educationと同じようにRepositoryを無料で提供したり、ソフトウェア開発にまつわるトレーニングは基本的に無料で受けられるようにサポートするなど、これから新しく出て来るデベロッパーたちへの投資を惜しまない姿勢がとても強く、カッコいいなと感じました。
PICK UP
今回参加した、Conferenceで面白かったセッションを何個か上げていきます。
Building Reliability with Spokes
GitHubの裏側のReplicationシステムに関する説明。
最初は、GitHubではRepositoryとwikiとGistがそれぞれ3つのレプリカを保持し、1つがリードオンリーで2つがフル機能を提供していて、Serverが一台死んでも予備機が参入してデータのマイグレが自動的に始まるで〜みたいな仕組みの紹介だけだったが、後半特に面白かったのは、「いまからServer殺すぞーーー!!!?」つってノリノリでServerをshutdownして、「ヒュ~、これからマイグレが始まるぞ〜!・・・成功だ〜!!!?」という今まで見たこともない感じのデモがとても楽しかったです。
SpokesはGHEの2.8系から織り込まれるよとセッションで発表されており、今から触るのがとても楽しみです(そして、まだGHEのversion upをしていない事をここに告白いたします)
Spokesの前身のDGitや、Spokesの自体の仕組みについて書いてあるブログもあるので、ご参考までに。
Building resilience in Spokes , Introducing DGit
gh-ost: GitHub’s online schema migrations for MySQL
ちょっと前に話題になった、GitHub謹製のトリガーレスなMySQL向けのオンラインスキーマチェンジツールのお話。
いままでのトリガーを使ったツールと比べて、トリガーを使わないからマスターへの負荷があまりかからないだとか、binlog追ってく形式やから事前に実行テストができるでとか、マイグレ中の一時停止も可能やでとか、事前に知ってるgh-ostの機能の紹介だけかなと思いきや、GitHubでは実際にchatopsでDBのマイグレしてるよというのを実際に聞いて見るのは楽しかったです。
資料と発表のURLのリンクを貼ってあるので是非。
感想
英語が辛かったのがまずひとつ…
スピーカーの人がノッてきて、どんどん早口になればなるほど僕もどんどん聞き取りが難しくなり死ぬかと思った。
幸いにも同時字幕的なのが展開されていて、聞き漏らしてもそこでなんとかなった。逆に言うとそこがなかったら盛大に爆死してたと思う。同時字幕用意していただき本当にありがとうございました。あと、僕みたいな英語ダメダメ星人の質問にも懇切丁寧に答えてもらってこれまた申し訳なくて死ぬかと思いました。
英語頑張らないと…?
そして、凄い偉そうな話になってしまいますが、
今までは、GitHubは最高にイカしたCode管理が出来るPlatformだ!(乱暴)ぐらいの認識だったったのですが、1日目と2日目のkeynoteと共通してあったメッセージで、教育に力をいれ未来のデベロッパーたちを支援しより良い世界を一緒に作っていこう!というのを受け、夢があってめちゃくちゃかっこいいなと感じました。
実際に受けてる恩恵は果てしないので、これから何か少しずつ恩返し出来ることを考えていきたいなと感じました。
走り書きみたいな感じになってしまいましたが、現場(?)からは以上です?