はじめに
昨日の GitHub Satellite Tokyo 2018 Day 1 に引き続き、参加レポートです!
イベント概要
- 公式サイト: https://githubsatellite.com/
- ライブ配信: https://githubsatellite.com/live-stream/
- YouTube チャンネル: https://www.youtube.com/channel/UC7c3Kb6jYCRj4JOHHZTxKsQ
- GitHub 公式ブログ: https://blog.github.com/jp/
- ハッシュタグ: #GitHubSatelliteTokyo
基調講演:GitHub Enterpriseプロダクトビジョン
- 登壇者: 公家 尊裕 (GitHub) ジェイソン・ワーナー (GitHub) ウェイン・ジン (GitHub)
- 日本国内コグニティブ/AIシステム市場
- 2017年: 274億円
- 2022年: 2947億円
- 2017-2022: 60.7% CAGR
- 2030 年 IT 人材不足 79 万人
- 海外のメンバーを巻き込んで開発していく必要がある
- GitHub Enterprise 導入企業
- Yahoo
- LINE
- DeNA
- DMM
- など
- Every company is an
softwareinnovation company - GitHub の責任
- データ侵害を防ぐ
- コンプライアンスに準拠しつつイノベーションを促進させる
- オープンソースコミュニティへのサポート
- GitHub の 4 つの投資エリア
- プラットフォーム
- 多くのユーザーに愛されるソフトウェア開発プラットフォーム
- データ
- 依存関係管理を自動化する企業は、自動化しない企業と比べて、60%も脆弱性のリスクが低くなる
- エコシステム
- 開発者
- ダッシュボード
- プロファイル
- エクスペリエンス
- プラットフォーム
ゲスト基調講演:DMM.comのGitHub EnterpriseとCircleCI Enterpriseの活用例
- 登壇者: 唐沢 陽介 (株式会社DMM.comラボ)
- GHE を中心としたツールの構築・運用利用者への技術支援などを担当
- 最近は CircleCI のサポート多め
- karakaram/alt-ime-ahk 作者
- 今日お話すること
- GHE と CircleCI をどのように活用するか
- 導入して 1 年経って思うこと
- GHE と bitbucket を利用
- Why GHE?
- まずは検証のために
- 噂を聞いたチームが相乗りしてきた
- プラットフォーム開発チームでも使いたいという話があり、エンタープライズに移行
- 4サービスが稼働中
- GitHub Enterprise: 先月 330 名
- CircleCI: 先月 80 名
- ZenHub Enterprise: 先月 30 名
- Issue, Pull Request 管理
- SideCI オンプレミス: 先月 20 名
- レビュー支援
- サービスはすべて AWS 上に構築
- 開発環境と本番環境とでリージョンを分けている
- 毎月 30 万円くらいかかっている
- 運用ルール
- リポは Public 推奨
- アカウントなしでも Issue を閲覧できるように
- リポは Public 推奨
- おすすめ利用パターン
- Git のブランチモデル
- Git Flow
- GitHub Flow
- v1.1.0 形式のタグを打つことで本番環境にデプロイ
- CircleCI: The Good Parts
- ダウンロードしたファイルはキャッシュする
- .circleci/config.yml
- save_cache
- restore_cache
- .circleci/config.yml
- テスト並列化
- parallelism: 3
- 3 並列で実行できる
- Workflow を使った自動テストと静的解析の並列化
- テストと静的解析を並列実行
- Machine Executor は非推奨としている
- ビルドのたびに裏で EC2 インスタンスが起動するので、クラウド版と比べてビルドの開始が遅い
- すばやくフィードバックループを回す
- 困ったら GHE で検索する
jobs ruby filename:config.yml
- ダウンロードしたファイルはキャッシュする
- ドキュメント・タスク管理
- ドキュメントは GitHub Pages で
- ZenHub Enterprise で進捗を可視化
- Git のブランチモデル
- 導入して 1 年
- 新規サービスでは GHE と Circle CI の採用が進む
- GHE と CircleCI が共存する世界
- サーバやユーザの管理が不要で、すぐに CI を始められる
- .circleci/config.yml の中にアプリケーションの動作要件がまとめられる
- 困っていること
- GitHub っぽいソーシャルコーディング感が出ない
- 扱っている言語、環境、ゴールがチームごとに違う
- Organization がいっぱいできてしまった
- プロダクト単位で Organization が作られてしまう
- 現在 80 個くらいある
- 他の Organization で何をやっているか目に入らない
- GitHub っぽいソーシャルコーディング感が出ない
ゲスト基調講演/パネルディスカッション:ソフトウェア開発の変遷と、これから
- 登壇者: 及川 卓也 (フリーランス技術アドバイザー) 大倉 香織 (株式会社サイバーエージェント) 小林 篤 (株式会社ディー・エヌ・エー) 松野 徳大 (LINE株式会社)
- 10 年を振り返って
- GitHub で開発時のコミュニケーションやレビューがしやすくなった
- リモートワーク時などオフライン作業時に手元でコミットできるようになった
- GitHub と Slack
- GitHub 編集 > Slack 通知
- ボットの開発積極的に行っている
- ando-san > https://fullswing.dena.com/ando-san/
- DeNA: Perl のイメージだと思うが、最近は Ruby, Go を使うケースが多い。一部 Java も
- サイバー: Java から Go への移行
- 言語トレンドについて
- LINE: 採用を意識して言語選択している。 Perl 率を下げている
- DeNA: 採用を意識して Go を選択している
- サイバー: 採用を意識して Go を選択
- リードエンジニアの好みにもよる
- クラウドの進化
- AI, 機械学習
- DeNA: 今力を入れている。ルールベースから機械学習ベースのアルゴリズムに変化している。不適切なコメントを検知するなど
- NVIDIA がここまで AI 領域に食い込んでくるのは意外だった
- GPU はグラフィックを処理するのが強いが、 AI の処理に使われている
- 技術の意思決定について
- CTO, リードエンジニアとかのポジションが確立され、技術に対する意識が変わってきた
- DeNA: ITS の領域で日本は非常に遅れている
- サイバー: RPA の導入。人事システムなど。
- 今だとスクレイピングとか
- 過去の xTech のサービスは API を公開していなかったり、Web フレンドリーではない
- データについて
- LINE: 広告システムに利用している
- Hadoop 利用
- データサイエンティストは Data Labs にて大量採用中
- LINE: 広告システムに利用している
- 人がプログラムを書くのは、どこまで?いつまで?インフラはどこまで見続けないといけない
- 将来のコーディングは全く書かなくて良くなる by クリス・ワントラスさん
- プログラミング必修化について
- プログラミング必修化の記事に対して、識者が「プログラミングは 10 年後 AI が書くから必要なくなる」と言ってたが、それならそもそも英語学ぶ意味あるの?的な話
- 自動化される時代が来ても、裏側の仕組みを理解することは大事
- プログラミング必修化の記事に対して、識者が「プログラミングは 10 年後 AI が書くから必要なくなる」と言ってたが、それならそもそも英語学ぶ意味あるの?的な話
- リモートワークの今後
- DeNA: Slack を活用
- 隣にいても Slack でコミュニケーションを取るようにしているから、リモートでも問題ない
- 細かいニュアンスなどを伝えるときがあるときには face to face
- 隣にいても Slack でコミュニケーションを取るようにしているから、リモートでも問題ない
- LINE: LINE でやり取り
- ビデオ会議だと細かいニュアンスが落ちるので、対面でやっていることもある
- VR などの進歩に期待
- ビデオ会議だと細かいニュアンスが落ちるので、対面でやっていることもある
- GitHub の 65% の人はリモートワーク
- DeNA: Slack を活用
GitHubと共に学生を育てる方法
- 登壇者: 古橋 大地 (青山学院大学)
- Twitter: @mapconcierge
- GitHub の地図を作っている
- GeoJSON
- GitHub Gist に GeoJSON 形式で貼ると GithHub で表示される
- https://help.github.com/articles/mapping-geojson-files-on-github/
- この背景地図は Google Map ではなく OpenStreetMap
- GitHubを活用した、赤十字と国連のためのクライシスマッピング
- 一億総伊能化
- オープン = 商用利用可能
- Tesla, Pokemon GO も OpenStreetMap を利用
- 500 万人が地図データにコミットしている
- https://github.com/mapbox/mapping
- タスク管理は Issue
- Markdown は共有フォーマット
- Word 禁止令発動!
- レポート提出は Issue で Markdown
- 国土地理院の地理院地図を fork できる
- GitHub Pages で jekyll を利用して Web サイトを作る
- Git-it からはじめる
- プレゼン資料は SpeakerDeck に上げる
- User Profile が履歴書がわり
- 外(社会)と中(大学)をつなぐ架け橋。それが GitHub
SlerがGitHub Enterpriseを使ったら
- 登壇者: 原口 猛 (株式会社セゾン情報システムズ)
- GHE 導入編〜SIer でも GHE が使いたい〜
- モダン開発推進チームが発足
- 事業部・開発製品・サービス毎にソースコード管理ツールが乱立
- 全社的なツールの統一を目指す
- 顧客のソースコードは対象外とした
- いざ導入
- very easy!
- ドキュメントや事例が充実
- 段階的導入
- インフルエンサーを選定してまずは使ってもらう
- GitHub の引力
- 試したいという声が多数上がった
- very easy!
- GHE 運用編
- 2年間運用してトラブル 0 件
- 運用で必要なのは、モジュールのアップグレードのみ
- 導入効果編
- Before
- ウォーターフォール
- テスト前に一斉コミット
- レビューは有識者に教えてもらう場
- After
- ウォーターフォール(そのまま)
- デイリーコミット
- 相互学習するための場
- コードをチームで所有し、成長させる場
- 戻り工数大幅削減
- コードの共同所有の有用性を体験
- 有識者からアドバイスを貰う
- 注意点
- どんなツールを使う場合も Face to Face は大事
- 2 回で伝わらなければ F2F
- レビューコストを書けすぎない
- ツールを最大限活用
- Before
- まとめ
- 推進担当として
- GHE はただのツールではなくプラットフォーム
- 文化を変えるためのプラットフォーム、豊富なプラクティス
- 導入ではなく定着がゴール
- GHE はただのツールではなくプラットフォーム
- 推進担当として
- 運用事例
- 事例1. ペア&モブプロによるシングルブランチ運用
- master のみを利用。以下画像参照
- 事例2. 開発以外での利用例(ポータルサイト)
- GitHub Pages
- システム構成図は以下画像参照
- 事例1. ペア&モブプロによるシングルブランチ運用
GitHub Marketplaceと、開発生産性を向上させる幾つかのSaaSのご紹介
- 登壇者: 角 幸一郎 (SideCI株式会社)
- GitHub @sumyapp
- SideCI CEO
- What is GitHub Marketplace?
- https://github.com/marketplace
- GitHub 連携サービスを簡単に購入、導入できる
- 様々なカテゴリ
- 購入は GitHub 上で完結。決済も統合
- 新しくクレカ登録する必要がない
- 請求書、領収書がまとまる
- 稟議問題
- Useful marketplace apps
- Coveralls
- Code quality
- テストカバレッジの可視化
- 行ごと
- ファイルごと
- 時系列
- など
- SideCI
- コードレビューの支援サービス
- RuboCop や Checkstyle などの解析器を使って、コードレビューを支援
- GitHub Pull Request と連動
- CircleCI
- Continuous integration
- Dependabot
- Dependency management
- Gemfile.lock や package-lock.json を元にライブラリを自動アップデート
- GitHub Pull Request を自動で生成
- 新しいライブラリ入れると CI が落ちるなど、事前に検知できる
- Rollbar
- Monitoring
- Slack 通知
- 例外検知サービス
- スタックトレースが見られる
- ZenHub
- Project Management
- GitHub Issues をボードで表示
- プロジェクト管理に必要な機能を包括的に用意
- ベロシティ計測、リリース可能日予測
- Coveralls
- About Github Marketplace
- 2017 年 11 月に GitHub Marketplace にローンチ
- 平均 2000 人が毎月 Marketplace から流入
- 世界各国から流入
- Marketplace 経由の売上はローンチ 4 ヶ月で 10 倍に
- Announcement
- 本日 2018 年 6 月 13 日より、 SideCI は Sider に製品名を変更します。
感想、その他
社内にツールを普及させようとした時に、「自分も試したい!自分も!」となるサービスは強いですね。今日のセッションで 2 回同じような話だったので、GitHub がいかに個人利用が進んでいて、愛されているかわかる内容でした。 Marketplace は初見だったので、試しになにか作って上げてみると楽しそう。今後どれくらい Marketplace が盛り上がるかは気になります。
早上がりで残りのセッションレポートできませんがすみません。よければ皆さん残りのセッションのレポートを編集リクエストしてください