2. Python Boot Camp 運営マニュアル

Python Boot Camp(略称 PyCamp)の運営をする際の手順をしめす。

2.1. 対象利用者

  • 一般社団法人スタッフ(PyConスタッフ)
  • 講師
  • 現地スタッフ
  • TA

2.2. 役割分担

2.2.1. 一般社団法人スタッフ(PyConスタッフ)

Python Boot Camp全体の運営・管理を行う。各開催では現地スタッフを運営面からサポートする。

役割

  • 開催候補日を設定する
  • 講師を探す
  • PyConスタッフ・現地スタッフとの事前打ち合わせ
  • PyCon JPのFacebook、Twitter公式アカウントの管理・運用する
  • 経費精算で一般社団法人PyCon JP会計係と精算を受ける講師・現地スタッフを仲介する
  • イベント後の反省会を開く
  • 各開催、全体の予算の管理する

2.2.2. 講師

チュートリアルテキストの作成・メンテナンス、テキストを利用してチュートリアルの実施。一般社団法人PyCon JPからは謝礼として15,000円(懇親会参加費用含む)と、現地への渡航費用と宿泊費一泊分の経費が支払われる。

役割

  • チュートリアルテキストの作成・更新
  • PyConスタッフ・現地スタッフとの事前打ち合わせ
  • 事前リハーサルの実施
  • 開催地での現地スタッフとの当日打ち合わせ
  • チュートリアル実施
  • チュートリアル後の懇親会への参加(費用は講師謝礼に含み、別途支払なし)
  • イベント後の反省会への参加

2.2.3. 現地スタッフ

  • 会場の選定・確保
  • Connpassイベントの管理・参加者への連絡など
  • PyConスタッフ・講師との事前打ち合わせ
  • イベント準備(懇親会会場確保、会場運営など)
  • 開催地での講師との当日打ち合わせ
  • チュートリアル実施
  • 写真撮影(後で報告レポートに使用するためチュートリアルの様子がわかるもの。)
  • チュートリアル後の懇親会への参加(費用は現地スタッフの負担)
  • イベント後の反省会への参加
  • 開催報告レポート作成

2.3. 全体の流れ

  1. 日程、会場、講師の確定
    PyConスタッフが開催候補日を決め、現地スタッフと調整して会場のスケジュールを確認する。併せてPyConスタッフは開催候補日に都合がつく講師を探す。会場、現地スタッフ、講師のスケジューがル調整でき次第日程を確定とする。
  2. イベント公開
    会場と講師の日程が確定したら、イベントをConnpassで公開する。現地スタッフをイベントの共同管理者に追加して、詳細の追記や以後の更新、参加登録者への連絡は現地スタッフが行う。
  3. 事前打ち合わせ
    事前打ち合わせを実施して、PyConスタッフ、講師、現地スタッフで今後のタスクを確認する。現地スタッフがTAのあてがあるようであればTAも参加してもらう。
  4. イベント開催
    講師は当日の午前中に現地入りをして、昼食をとりながら現地スタッフと当日の最終打ち合わせを行う。 イベントの案内やMCなどは現地スタッフが行い、講師はチュートリアルが注力できるようにする。イベント開催中は、TAは参加者の質問にこたえるなど講師をサポートする。
  5. イベント開催後の事務処理
    イベント開催後、PyConスタッフは事後の反省会の日程を調整する。参加者は、PyConスタッフ、講師、現地スタッフ、TA。 PyConスタッフは講師と現地スタッフと連絡を取り、経費の精算を行う。

2.4. 詳細

2.4.1. 日程、会場、講師の確定

  1. PyConスタッフがざっくりと開催候補の月を決めて、Slackの#bootcampチャネルで立候補地(現地スタッフ+会場提供者)を募る。
  2. 会場のあてがある現地スタッフや会場提供者で希望者はPyConスタッフに立候補の旨を伝える。その際には、会場の空きや現地スタッフの都合などを考慮して、いくつか開催可能日を示すとPyConスタッフが講師を見つけやすい。
  3. PyConスタッフは立候補のあった開催候補地から、講師のスケジュール都合や予算(会場の有料・無料、有料ならいくらなど)などを考慮して開催地を決める。
  4. PyConスタッフはSlackチャネル(#pycamp)に、現地スタッフ、会場提供者、講師を招待する。以後のコミュニケーションはこのチャネルを主に使う。
  5. Pyconスタッフは講師と現地スタッフ希望者を JIRA に招待する。以後の進捗管理はJIRAチケットで行う。

2.4.2. イベント公開

  1. PyConスタッフがconnpassのコピー作成機能(Connpassのヘルプの 「コピーを作成 」を参照)を使って、前回の開催イベントと懇親会ページを複製し、イベントページ管理者に現地スタッフを追加する。これで現地スタッフも管理者権限でイベントの編集を行うことができるようになる。
  2. 現地スタッフがイベント・懇親会詳細を編集する。編集する内容は、日時、開催地、会場の規模に応じて参加可能登録人数など。
    • 参加費や学生割引枠の価格や枠数などを変更したい場合には、予算などの都合があるためあらかじめPyConスタッフに確認すること。
    • TA枠数は4~5人にひとり程度いれば十分だが特に上限は設けない。
    • 参加者枠数は、いきなり大きな参加者数を見込んで会場をおさえて告知するのではなく、はじめは控えめな枠数で公開して、登録者数の伸びをみながら徐々に増やしていく。
    • 参加費用は少額でも有料で開催したほうが、無断でのキャンセルや、とりあえず参加表明だけしておいて結局参加しない人などを避けることができる。講師派遣費用や会場費用などをスポンサーするので無料で開催したい、などのリクエストがある際にはこの点を考慮すること。
      • これは会場費などがかからなかった場合も同様。
      • 会場によっては有料開催の場合は会場費がかかる場合もある。これまでの開催ではそのような場合でも、有料開催として別途会場費を支払った。
  3. Connpassイベントの編集が完了次第、 現地スタッフがイベントを公開する。懇親会会場など、公開に際して絶対必須ではないものは「未定」でも早めから公開するほうが、より多くの人にイベント開催を知ってもらえる。過去の開催経験から 最低1ヶ月前から告知するようにする
  4. PyConスタッフはイベントの告知をFacebookとTwitterのPyCon JP公式アカウントから行う。公式アカウントの定期ポストは Google Spreadsheet のツールから設定する。
  5. 現地スタッフは地域のコミュニティネットワークなど、活用できるつてなどを使って宣伝する。

2.4.3. TA申込者

  1. イベント公開後、TA枠での参加登録申し込みがあった際には、PyConスタッフがSlackチャット(#bootcamp-xxxxx)への招待を行う。
  2. 必要であれば現地スタッフがTAと直接連絡を取り、これまでの経緯と今後の流れを説明する。

2.4.4. 事前打ち合わせ

  1. イベント公開と並行して、PyConスタッフがGoogle Driveにイベント用のサブフォルダを作成して、下記のファイルを前回の開催イベントからコピーして流用する。
  2. 現地スタッフが 調整さん などでPyConスタッフ、現地スタッフ、講師の打合せ可能な日程を調整する。TAも参加表明している人がいれば参加する。日程は開催が決まり次第、できるだけ早く行ったほうがよい。
  3. 事前打ち合わせ行う。打ち合わせでは、PyConスタッフがイベントタスク一覧シートを使ってイベント開催前、開催時、開催後のタスクを説明する。打ち合わせにはSlack Call(音声のみ)やGoogle Hangout(ビデオ)などを活用する。まだConnpassイベントを公開していないのであれば、この場で現地スタッフからの質問にPyConスタッフは答える。

2.4.5. イベント開催まで

  1. イベントの告知を継続しつつ、参加者数の伸びを時折みて、参加者枠数のや告知のやりかたなどを見直す。

2.4.6. 当日打ち合わせ

  1. 現地スタッフが当日打ち合わせの場所を確保する。会場近くで一緒に食事をしながら打合せできるような場所がベスト。
  2. 現地スタッフと、当日朝到着した講師が待ち合わせの上、打合せ場所で当日の最終確認を行う。確認する内容は、午後の流れ、最終参加登録者数、参加者の経験レベル、席配置、TAの割り振りなど。

2.4.7. イベント開催

  1. 会場準備・受付をする
    • 会場案内の貼り出し、机や椅子の配置、プロジェクター、講師PCの接続などなど。
    • 過去の開催では受付場所がわかりにくかったというアンケート結果もあった。事前にConnpassメールでConnpass IDを用意してくださいと案内を出すとか、受付用の机を出したり、会場案内の貼り出しをする。
    • 過去の振り返りミーティングでは、参加者の席順をOS別・習熟度別に並べることで参加者同士のコミュニケーション取りやすくなったという意見があった。可能であれば、事前に参加者に回答してもらったアンケートを元に、席順を検討することが望ましい。
  2. チュートリアル実施
    • チュートリアル中に、区切りのいいところで参加者の足並みをそろえるところを設けるなどして、極力参加者の進度をそろえる。
  3. 適宜おやつ休憩
    • 最初におやつを渡してしまうより、ある程度チュートリアルを通して打ち解けてからおやつ時間を設ける方がコミュニケーションをとるきっかけになる。

2.4.8. イベント開催後事務

振り返りミーティング

  • PyConスタッフが振り返りミーティングの日程を 調整さん で調整する。目的は今回の開催からのフィードバックを今後の運営に活かすため。
  • 参加者はPyConスタッフ以外に、現地スタッフ、講師、TAなど運営に関わった人。
  • PyConスタッフはKPTをベースにしたアジェンダを用意して事前に配布する。イベント開催当日の最後に参加者から集めたアンケートの結果へのリンクもアジェンダには載せる。
  • 反省会参加者は可能であれば事前にコメントの記入しておく。
  • 反省会では寄せられたコメントやその他に気づいたことなどを共有する。
  • 議事録は事前打ち合わせで作成したGoogle Driveのイベント用サブフォルダに、以下ファイルをコピーして使用する。

経費精算

  1. 経費精算が必要なものについては領収書をもらう。領収書の宛名は:一般社団法人 PyCon JP。
  2. 講師(出張費用と謝礼)と現地スタッフ(おやつ・飲み物代やもしあればコピー代などの雑費)は経費の詳細を タスクリスト の「経費精算」タブに記載する。
  3. 領収書もしくはレシートをスキャンしたものを Google Driveの各イベントフォルダ以下 に保存する。スキャンが難しければスマホなどで撮影した画像でも可。原本の郵送などは不要。電車やバスなど領収書やレシートが難しい場合は、Google Mapsなどで経路を示したものを代わりに添付してPyConスタッフが金額の妥当性を確認できるようにすること。
  4. PyConスタッフに精算金額を受け取る振込口座情報の詳細を連絡する。タスクリストに記載してもよいし、PyConスタッフにSlackなどのプライベートメッセージで送ってもよい。必要な情報は下記の通り:
    • 金融機関名
    • 支店名
    • 口座種別(普通・当座)
    • 口座番号
    • 口座名義
    • マイナンバー管理機能のための登録メールアドレス(講師のみ)
      • 講師への謝礼支払いは源泉徴収の対象となるため、一般社団法人PyCon JPのほうで源泉徴収した金額を差し引いた額を払うことになる。その際に講師のマイナンバー情報が必要となる。一般社団法人PyCon JPでは、オンライン会計サービスの freee のマイナンバー管理機能を利用することで、一般社団法人スタッフが講師の個人情報であるマイナンバー詳細を直接みることなく源泉徴収処理を行うことができる。

その他注意点

  • PyConスタッフは受け取った詳細をJIRAに起票して、一般社団法人の会計担当に振込依頼する。
  • 講師の謝礼については上記の通り、会計担当が講師から連絡のあったマイナンバー登録用のメールアドレスをfreeeから登録する。
  • 講師はfreeeから届いた案内に従ってマイナンバーをfreeeサイトに登録する。
  • 会計担当は領収書などを確認し問題なければ振込を行う。
  • 振込完了をもってPyConスタッフはJIRAチケットをクローズする。

開催報告レポートの作成

  1. 現地スタッフはイベント開催中、レポート作成のための写真撮影を行う。例えば、会場外観、入り口、中の様子、参加者がチュートリアルに参加している様子、懇親会の様子など。
  2. PyConスタッフは現地スタッフにブログ執筆の権限付与を行う。
  3. イベント開催後、1週間をめどに現地スタッフはブログシステムから下書きを作成してPyConスタッフにレビューを依頼する。
  4. PyConスタッフはレビュー後問題なければそのまま公開する。

参考:過去の開催報告レポートや告知など

2.5. 利用ツールまとめ

2.6. その他いろいろな意見

振り返りミーティングで出されたいろいろな意見。 イベントとして対応しない方向でいるものもあれば、アイデアベースで誰か立候補して進めてくれれば対応する方向のものも含む。

  • リモート講師・自宅から生中継なら場所代などもかからないのでは
    • このPython Bootcampイベントで大事にしたいのは実際に人と人が現地で交流することなので、このイベント運営としてはリモート開催は対応しない。
    • 他のイベント(Pyladies Kyoto Meetup #1でリモート講師を体験した人の経験では、なかなか難しかった。特にチュートリアル形式の場合、参加者の進度などリモートでは見えない部分が難しかった。
  • チュートリアルの内容・テキストについての提案 ー 立候補者募集中
    • 誰かテキストを作成してくれるのであればできる。
      • Python Bootcamp中級・上級の開催。
      • 同じ題目で速度を競ったり、より綺麗にコードを書けるかを競ったりする。
      • コードを写経するような内容が多いので、穴埋めのように、自分でやった実感があるようなテキストを追加する。
      • オブジェクト指向・Classについての内容を追記
  • イベントの開催時間をもっと長くしたい ー 未実施
    • 午前に環境構築して、午後に始めるとスムーズかもしれない。また、講師としては午後の時間だけでカバーできる内容以外にも教えたい内容がある。
    • お昼前から始めるとランチのことも考えないといけない。
    • 会場が許せば懇親会の時間に間に合う程度で希望者に延長戦は可能かもしれない。
  • 参加者の問題解決のためにペアプログラミングを導入 ー 未実施
    • 参加者が自分だけで解決しようとして環境構築の問題にTAが気づくのが遅れた。
    • 参加者二人ずつでペアプログラミングの導入は運営の面以外に、参加者同士で話すきっかけにもなるので良いかも。
  • 同じ場所で複数回開催する場合は同じ講師に来てもらって親交を深めてほしい。
    • 初心者向けのチュートリアルで同じテキストでやる前提だとイベント参加者の顔ぶれは毎回違うことの方が多いと思われるので、できればいろんな人に講師をやってもらっていろんな交流を推めたいし、特定の講師のスケジュール次第でイベントの予定を決めなければいけなくなるのは避けたい。