Slide 1

Slide 1 text

Geeky Way Communication For Non-Geek People GitHubとPull Requestの話だけかと思いきや... @俺聞け6 / 2013.10.05

Slide 2

Slide 2 text

こんにちは こんにちはこんにちは

Slide 3

Slide 3 text

ぼく ● 近藤うちお ● @udzura or うづら ● Aiming所属、オンラインゲーム 提供

Slide 4

Slide 4 text

#自分語り ● Rubyって言う言語が好きなプログラマです ● 好きすぎて雑誌に記事を書いてます ● 読もう! WEB+DB PRESS ● ● ● ● 「頭ん中」読んでますよ !!1

Slide 5

Slide 5 text

テーマ ソフトウェア作りの話 (ゲームです)

Slide 6

Slide 6 text

GitHub ● と言うものを使った話です ● プログラマじゃない人たちと一緒に使った ● 何が起こったか、何をしたか

Slide 7

Slide 7 text

なぜ使ったか? コラボレーションをしたかった

Slide 8

Slide 8 text

GitHubって何 ・GitHubは ・モノをベースとした  コミュニケーションができる場である ・主にオープンソースソフトウェア ・Pull Requestを発明したサービス

Slide 9

Slide 9 text

Pull Requestって ・ぼくの中では、最先端のレビューシステム ・「dif」と言う考え方、何が何に変わったのか ・オープンな議論 ・色々な提案や改善、不具合の報告を、  とてもカジュアルに行える場所

Slide 10

Slide 10 text

Pull Requestって

Slide 11

Slide 11 text

Pull Requestって

Slide 12

Slide 12 text

GitHubの「良さ」を 分かってもらう

Slide 13

Slide 13 text

Pull Requestベースのレビュー http://www.flickr.com/photos/snapperwolf/2607585548/

Slide 14

Slide 14 text

レビューをする=シェアをする ・自分のものをチームのものにする ・さらけ出す ・作りかけでもレビューに出していい ・「一人しか分からない箇所」を限界まで減らす ・抱え込まない

Slide 15

Slide 15 text

レビューをする=議論をする ・人よりもモノが偉い世界 ・作ったモノをベースに議論する ・事実をベースに議論をする

Slide 16

Slide 16 text

「モヒカン族」 ・インターネットっぽい話題です

Slide 17

Slide 17 text

Before GitHub ・GitHubがないと、  デザイナーさんはプログラマとは別途に、  企画屋さんも独自で「仕様書」を作る ・それぞれがまずは勝手に成果物を作って  あるタイミングでようやく  付き合わせることになる

Slide 18

Slide 18 text

After ・GitHubがある場合でも、  ある段階までは「個別の作業」である ・だが、個別の作業はそれぞれ同じリポジトリに  ・「早い段階から」  ・「色々な人に」  みてもらうことができる ・「場」ができる重要性

Slide 19

Slide 19 text

議論とか苦手、日本人だし ・刺々しくなる? ・「文化」をつくる

Slide 20

Slide 20 text

emoji

Slide 21

Slide 21 text

AA...

Slide 22

Slide 22 text

画像

Slide 23

Slide 23 text

画像...?

Slide 24

Slide 24 text

シェアをする ・「自分の成果物だけれど、   みんなで作った成果物だ」  という発想をごく自然に行なうことが出来る ・「みんなで作ってる感じ」、ワイワイ 発展: ・プロジェクトの壁を越えることもある

Slide 25

Slide 25 text

大体ken_c_loさんが言ってる通り • 「Gitを使ったデザイナーとプログラマの協業 について話してきた #P4D #phpcon2013」 http://d.hatena.ne.jp/ken_c_lo/20130915/1379237062

Slide 26

Slide 26 text

便利ツール紹介タイム

Slide 27

Slide 27 text

TestFlight

Slide 28

Slide 28 text

TestFlight ● 「β版」のアプリを簡単に実機に転送するサー ビス ● iPhone、Android

Slide 29

Slide 29 text

「自動化する」 =Geek Way

Slide 30

Slide 30 text

流れ ● Pull Requestを送る ● 「Jenkins」がアプリをコンパイル、 ビルドする (ここまでだけだとプログラマだけのメリット) ● 「TestFlight」に送る ● 各自の端末でダウンロードできる

Slide 31

Slide 31 text

うれしいこと ● 「生煮え状態」の仕様や数値調整、デザインが 簡単に実機で確認できるようになる。 ● 作業内容によってはプランナやデザイナ 自分たちだけでできる

Slide 32

Slide 32 text

Hubot

Slide 33

Slide 33 text

Hubot ● Skypeなどの「ボット」 ● Skype, IRC, CampFire, HipChat... ● GitHubの運営会社が開発し、 オープンソースに

Slide 34

Slide 34 text

Remember ● 「人工無能」 (sudoriなど) ● (インターネットっぽい要素です) ● そこまで高性能ではないが、 プログラムで色々させられる

Slide 35

Slide 35 text

「自動化する」 =Geek Way

Slide 36

Slide 36 text

めんどくさいことをやらせる ● 例: ● Skypeでコミュニケーションしてる ● GitHubのリンクを貼って 「レビューお願いします」 ● タイトルとかもコピペするのが面倒

Slide 37

Slide 37 text

APIを使って自動化 ● #123 と発言  ↓   https://github.com/aiming/hoge-proj/pull/123   「ほげほげのUIを修正した」 ● URLとタイトルを表示してくれる、 あとはクリックするだけ

Slide 38

Slide 38 text

APIを使って自動化

Slide 39

Slide 39 text

そのほかも反応してくれる

Slide 40

Slide 40 text

「元気出して」

Slide 41

Slide 41 text

「えろく聞こえます」

Slide 42

Slide 42 text

便利+面白い=文化作り

Slide 43

Slide 43 text

GitHubと愉快な仲間たちと一緒に 働いた結果 ● GitHubを「なぜ使うのか」を分かってもらえ た気がする ● デザイナさんだけでレビューされ、マージされ るPull Requestもでてきた ● 押しつけじゃなく、自分たちで提案をしてくれ るようになった=文化ができた ● ちなみに、スクラムとかも一緒にやってる。 チーム作り最重要

Slide 44

Slide 44 text

課題とか ● Git難しすぎるよね、ヤバいよね →WindowsではなるべくSourceTree ● GitHub、社内でもまだまだ普及期 →他のプロジェクトの「企画さん」「デサイナ さん」にも使ってほしい ● GitHub最近結構落ちる →儲けてエンタープライズ版を買う!!!  現実的にはミラーかなあ ● 「Git難しい」が問題の80%っぽい(...)

Slide 45

Slide 45 text

まとめ ● シェアする ● ダンプする (cf. コアダンプ) ● 自動化する

Slide 46

Slide 46 text

Geek Way ● Non-Geekにも役立つコミュニケーションメ ソッドではないか? ● そしてチームで文化を作る ● GitHubはそれを加速させる 「場」としてまあまあ良い

Slide 47

Slide 47 text

スペシャルサンクス ● 同僚のgithub@zakiさん ● ハンガリーからの刺客、スーパーハッカー ● その他、IDが載っちゃった 同僚の皆さん

Slide 48

Slide 48 text

Slide.eof? #=> true ご清聴ありがとうございました