SCMBootCamp in Tokyo 開催しました。KPT公開。
2011/07/30 オラクル青山センターでSCMBootCamp in Tokyoを開催させていただきました。
ML
Ustream
USTREAM: scmbctokyo: SCM Boot Camp in Tokyo #scmbc. コンピュータ
今回は僕@kyon_mmと@pocketberserkerの二人が中心になってソフトウェア構成管理について学ぶ講演とハンズオン形式の勉強会として開催しました。ハンズオンでソフトウェア構成管理と分散バージョン管理についての勉強会はおそらく日本で初めてだと思います。
その中でも分散バージョン管理に焦点をあてたのが今回になります。
意図やタイムテーブルは募集ページを参照してください。
豪華なサポートスタッフ
今回は日本で最高のGit,Hg,Bzrユーザーのうちの数人がサポートをしてくれました。感謝しつくせません。
Git
@bleis:id:bleis-tift : F#のMVP受賞者。Gitについて深い知見を持ち、Git Extensions の翻訳も行う。
@tosikawa : ソフトウェアテストなどに深い知見を持ち、WACATE実行委員を努める。Gitのコミットをより気軽にするためのgit-nowコマンドの開発者。
@sinsoku_listy : @tosikawaと共にGitを深く使い込んでいる rebaseマスター。git-nowコマンドの発案者。
Mercurial
@kuy : TortoiseHgのコミッター。僕がTortoiseHgで困ったときに一番最初にお世話になった方。
@troter : Mercurialを勤め先で推進していらっしゃり、ソフトウェア開発全般についても深い知見をもつ。
@monjudoh:id:monjudoh : Web開発について深い知見を持ち、Mercurialについての知見も同様。株式会社BeProudでも有数のMercurialユーザー。
Bazaar
@wonderful_panda : TortoiseBzrのコミッター。Shibuya.tracで行った分散バージョン管理勉強会でBazaarの発表をする。
@methane : TortoiseBzrのコミッター。エキスパートPythonプログラミングの翻訳者の一人。Pythonドキュメントの翻訳もなさる。
これだけの豪華な方たちに囲まれてスタートした勉強会でした。ご協力いただき本当にありがとうございました。そして、僕がうさみみである。という理由によって、「任意でサポートスタッフはスタッフマーカーとしてうさみみをつけてもらいたい」というお願いに応えてくださった方がいらっしゃったことは本当に嬉しかったです。ありがとうございました。(当日の会場には主催者を含めうさみみが10人以上発生しました。)
運営スタッフ
そしてここまでこれたのも、コミュニティであるDevLoveさん、Shibuya.tracさんが全面サポートしてくださり、また会場を提供し当日も多くのサポートをしてくださった日本オラクルさん、当日僕と行動をしていたという理由だけでサポートしてくださった@irofさんのおかげです。
大きな会場で勉強会を運営するにあたって人手が必要であり、また慣れが必要でしたが、柔軟に対応していただき助かりました。本当にありがとうございました。
問題
これだけのスタッフを抱えながら運営側の準備不足によって時間のロスがいくつか発生してしまいました。スタッフ、参加者にお詫びを申し上げたいと思います。初めての勉強会開催とは言え、多くの問題を抱えていたと思います。申し訳ありませんでした。
詳細についてはMLで流させていただきたいと思います。
今後
SCMBootCampは今後も継続的に開催していきたいです。もちろん僕がMercurialのサポートをできるくらいにまで修練を積むという前提があると思っています。現段階では明確な時期や内容などは何も決まっていませんが、「次回サポートしたい」と何人かの方から暖かい言葉をもらっているので、前向きに検討しています。
僕の今のイメージでは「第二回は同じ内容を東京で半年以内を目処に開催したい」という程度です。
今回の開催で改善点がいくつもでてきました。それを盛り込んだ上でより質のいいものを提供すること、また今回参加できなかった方達に参加してもらえることを考えました。
SCMBootCampとしてやりたいことは山のようにあり、今後膨らむ一方だとは思うのですが、皆さんと議論を重ねて、楽しく体験し、成果を現場に持ち帰れるような勉強会を目指して行きたいです。
当日個人的なこと
当日のサポートスタッフの方達は僕からすると皆さん雲の上の存在で、その方達と面と向かってお話できたことは僕の至福の時間でした。演習中に不意に発生するサポートスタッフ同士のハイレベルなトークに混ざれたことは僕がこれからDVCSを本気で勉強したいという熱意を再加速させてくれました。
演習終盤に、隣の部屋に偶然居合わせた「入門Mercurial」の著者である藤原 克則さんが登場するというハプニングがあり、僕はずっと「なぜ入門Mercurialを持ってこなかったのか。サインほしかった。」と300回は心でつぶやきました。
また、みなさんから「楽しかった!」「勉強になった!」などたくさんの感想をいただき、本当に嬉しかったです。涙が出そうになりました。偶発的に企画され、偶発的に主催をすることになり、奇跡によってここまでの規模にふくらみ、開催しましたが、本当にやってよかった。と安堵の気持ちでいっぱいです。
懇親会
懇親会では設営、現状復帰、買い出しなどを当日の参加者様に手伝ってもらえました。本当にありがとうございました。みなさんお優しいです。
また、懇親会では当日、@aoi_wakuseiさんから「ぜひプレゼントに使ってください」ということでgithubのステッカーをもらいうけまして、ジャンケンで決めさせていただきました。
また後半に突発的に闇LT大会が自主的に行われまして、とても楽しかったです。盛り上げてくださり、ありがとうございました。
KPT
会場で最後にKPTの記入をお願いしました。付箋にかいてもらったものを一覧にしてみました。
50人規模の1日の勉強会でこれだけ集まったのはなかなかないことだと思いました。ご協力いただいた方ありがとうございました。
Keepの「うさみみ」「メイド」「スイーツ」「豪華な講師陣」が印象的でした。
一覧になります。
Keep | Problem | Try |
---|---|---|
おやつおいしい | 使い方さえ分からない書学者にはWorkがハードでした | もっとチームのコミュニケーションができるように |
メイド | DSCMの演習にしてはタスクの分割に時間がかかる | ハンズオン後の講演 |
お題がそれ自体SCMに慣れ親しめるものだった | 環境構築に時間がかかる為自前準備でも良いかも | CIやBTS/ITSとの連携 |
カンバン形式は進捗が見えてよかった | 作業のサイクルについて少し説明が少なかった | Development、Topicブランチの使い方(演習において)の説明をもう少し充実させる |
おかしが充実 | rebaseについて(SVNにないもの)もっとしりたかった(実際にやりたかった)(歴史をかえるなど) | 壊れた環境からの復旧 |
昼食はお弁当で外出しなくてよかった | 環境構築に時間がかかる→事前にやっておくとか | トラブル事例の共有 |
実際に複数人で作業してコンフリクトの解決 | 「じっと」と言ってしまう | Gitをしばらく使い続けてみる |
無線LANと電源があったのがよかった | おもしろい所まで到達できなかった気がする | もっと色々ハマってもらうようにしたい |
演習がっつり | 最初に高度な話をしても意味が判らなかった。先にハンズオンして経験してから高度な話を。 | Bazaarユーザー増やす |
言語に依存しない内容 | スタートが少し早い | 女子増やす |
スイーツ! | ワークの時間がもう少しあったら嬉しい | VCSの具体的なやり方についての講演 |
豊富なおかし | カンバンはもう少し大きい方が見やすい | 女の子がもう少し増えたら嬉しい |
ハンズオン形式 | 講師が優しすぎる? | 途中でメンバー入れ替え |
Gitチームに参加していろいろ勉強になりました。他のDVCSチームに参加したい。 | Git、Hgにもっとからみたかった | レベルによる席分け |
この勉強会自体がよかった | お題の設定がもう少し具体的で細かくても良い | 基本的なツールの使い方の説明 |
スイーツの提供 | 次に何をしたら?となる時や、待機時間が多かったんで、早く終わった人用に1つ次のタスクまで明確になってるといい。 | 事前準備のアナウンスがあるとベターだと思う |
うさみみメイド | チームメンバの力量がバラバラ→チームの分け方を目的別にすれば教えたい人、攻めたい人など双方が楽しめるのでは? | GitHubつかってレビュー |
とにかく忙しいワークショップ | お題がわるかった→もう少し具体的に道すじは考えても良いと思う(みんなで) | レベルを分散させたグループ決め |
おやつと暖かいお茶 | rebaseがまだ理解できないので、もう一度復習する | Commitするファイルはあらかじめ用意されていても良いかも(ファイルの中身を作るのに時間がとられるので) |
TortoiseBzrのコミッター | 初心者とExpertのレベルのバラツき。正直言ってちんぷんかんぷん… | Confrictの発生するmergeファイルのsampleがあると嬉しい |
この楽しさ | 少しは前準備、予習してから臨むべき。丸腰すぎる… | LTというか解説をワークショップの合間に入れると良かったかも |
スイーツが出る | やってほしいことをプロジェクターに出してほしかった | cherrypicとか使うようなブランチを使い倒すお題 |
休憩時間の長さ | 初心者に対しては演習が自由すぎるかも? | 自己紹介タイムが合った方がよかったかも |
サポートの方が丁寧 | Gitと親和性の悪いWindowsでの参加 | 現場で使うように環境を整える |
グループワークはやっぱり楽しい。SCMの良さがでる。 | 環境構築が大変だった | 自分でドキュメント作ったり社内で広めるように布教する |
Ltすごく勉強になりました。 | SCMの文化の違いの壁 | 社内リポジトリの置き換え |
メイドさん | ネット環境。中央リポジトリ準備のドタバタ。(次回の時間短縮が出来ると良いですネ) | ねこみみ |
4、5人のチームによるハンズオン | 同じテーブル内で話しかけられなかった。 | ProGitを読む |
分散管理の良さを仕事に活かす | 環境構築 | 手を動かす |
カンバン方式 | チートシートが書けるレベルではない | 他のチームのbranchTreeの比較(どんだけ大変になっているか…とか) |
楽しかった!うさみみとか!(^^) | HTMLエディターが使えるようでないとダメ | 拡張がrebaseなど単語だけ知った事を試して用法を分かりたい |
まずはGitを使いこなす事 | ローカルコミットが鬼門 | 視覚化するツールをもっとつかってみたい(gitxなど) |
複数人でDVCSを使う。単独では得られないことがある。 | そもそもDVCS/SCMの知識が浅い | mercurialでもrebaseを試してみたい |
講師陣 | カンバンが働かない | Windows7でgitを使う場合の問題をまとめておきたい |
スイーツ | チーム間でのレベル差があったのでは? | リポジトリをぶっ壊す |
SVNからGitへの移行で希望が見えた | 途中なかだるみの時間があった | リベース!リベース! |
お弁当 | 事前に勉強するべき内容など把握できれば望みやすかった。 | 参考サイトとか提示する |
ハンズオン形式で手を動かす | Gitの初期設定をスムーズに行う | 使える範囲でもっとGitを使っていきたい |
プログラム開発と一線を画した内容 | 私の理解不足を起点にしたエラーが多かったので、しっかり理解してからの実行 | 1本道 rebase |
Gitを使う | 勉強、事前準備 | シナリオがほしい |
手厚いサポート | シューアイス固かった | 次の一歩を示す |
うさみみ大量発生 | 多少の予習は必要 | Gitの色んなコマンドを使っていきたい |
修行を積んで次回以降の開催機会を伺う | 課題のシナリオは明記されていたほうが | 入門Gitを購入して実践あるのみ |
チームサイズとサポートスタッフのバランスがよかった | 事前の予習が足りなかった。 | 時間配分(もっとタイトにしても?) |
Oracle会場の広さ | 入門gitを読んだけど、実機で動かせなかった。 | あるある話 |
スイーツ充 | 環境構築で手間取った。 | もっと積極的に人に話しかけていきたい。 |
雰囲気(ry | 参加者のレベル差が大きいと課題も消化不良ぎみ。 | トラブルをふやす(困難を解釈する機会を増やす) |
Fetch + rebase | 参加者間のレベル差間 | 事前に主要なコマンドを一通り叩いてみるなど、ある程度の予習はしておきたい。 |
手を動かすこと | もうちょっと回ればよかった(雑務的なあれこれ) | 各チームのリポジトリのURLを公開してもらう |
未経験の機能を使う事 | ちょっと初心者すぎたかなぁ。。。 | 午前中に手を動かす→rebase等やってみてから話を聞いたほうがより理解が深まりそう |
手を動かすこと | こくちーずが見つけにくかった。 | 予習・復習のお題も欲しい |
おやつ | 参加者間のレベル差 | 明日からは全部Mercurialで管理 |
おかし | もうちょっと事前準備すべきだった | MercurialBCやってみたいところです。(参加者として)(digging deeper!!) |
メイドさん | 消極的にならない、もっとガンガン質問する | 自社でSCMBC |
おかしがとても充実していてよかった | 眠い | 自分のGithubにもっとコミットする |
メイドさん | 進行がスムーズになればもっとよかったのでは? | OpenPNEプロジェクトにもっとコミットする |
豪華な講師陣 | 参加者のレベルに応じた課題を | vimrcをgithubを使って管理 |
スイーツ | リポジトリかタグの破壊 | |
BootCampなので実際に手を動かして覚えられた | 実際の業務で使っている事例が知りたい! | |
基本的な操作、マージなどの解説されたこともあり、Mercurialが更に好きになった。使い続けて行きたい | 業務で使いたい! | |
ハンズオン形式 | ||
スイーツ | ||
同じテーブルの中で意見交換し、互いに教え合いながら進められた。 | ||
メイドさん(うさみみつき) | ||
ひとつのテーブルに一人のサポーターさん。 | ||
ハンズオン形式 | ||
Gitの最低限のコマンドを覚えた。 | ||
Gitに恐れはなし | ||
優秀な講師陣 | ||
会場に揺らめくうさみみ | ||
3つのSCMの比較を聞けたこと。 | ||
もっと勉強会に参加する。 | ||
楽しかった。 | ||
うさみみ | ||
講師の数 |