プログラマ行進曲第二章

主にソフトウェア関連の技術をネタにした記事を執筆するためのブログ

PyCon APAC 2013で『入門Ansible』というタイトルの発表をします #pyconjp #pyconapac

この記事でお伝えしたいこと

最初にまとめておくと以下の通りです。

まとめるとこんな感じです。

発表するに至った経緯とか

PyCon APAC 2013のカンファレンス本体の開催まで後4日となりました。チュートリアルも考慮に入れると後3日です。そんな直前の時期になってしまって周知が遅いんですけど、私も15日に『入門Ansible』というタイトルの発表をいたします。

発表する内容はタイトルの通りAnsibleに関する入門的な内容の発表です。

今ほどAnsibleを触る人が少なかった頃にちょうどPyCon APACのCfPの応募があったので「試しに応募してみるか」と調子に乗って応募したら採用されました。

同じくCfPが採用された@さんも自身のブログ

錚々たる面々が「落選した」と言っている中なので、ホントにこれでいいの?なんてガクブルしていますが、折角の機会なので、実のある発表が出来るようにがんばります。

とおっしゃっているのですが、正直私も同じ気持ちです。私の場合、50分の長さの発表は初めてなので不安の部分が大きいのですが、無理せずいきたいと思います。

発表する内容のレベルに関して

CfPに応募した当初と現在の状況のズレ

CfPに応募した頃のAnsibleはまだ日本ではそれほど触っている人がそれほど多くないように思えたので「それだったら私もCfPのネタとして応募してみるかー、まだいじってない人多そうだし、多少緩い内容でも大丈夫だろー」なんて気軽な気持ちで応募したんですけど、CfPに応募した頃と今では少し状況が変わって*1(具体的なデータ示せないですけど)かなりAnsibleを使う人が増えてきたので、「わー、マイナーネタを扱うつもりだったのにどうしよーおぉぉぉ」という気分になっています。

と落ち込んでもしょうがないので、当初の「初心者向け」という区分けを外すことなく発表するつもりです。

が、これだけAnsibleが流行ってきている(?)ので、「私が想定している発表内容のレベル」と「参加者が聞けると思っている発表内容のレベル」にズレがあるとお互い不幸なことになってしまうので、予めどんなレベルの発表をするかということを予め書いておいた方がいいと思ってこの記事書いてます。

このレベルの人が発表を聞きに来ると物足りなく感じると思います

どういうレベルの人が上に挙げた人に該当するかというと

  • もう既にバリバリAnsibleを使って作業をしている人(仕事・趣味に関わらず)
  • Ansibleの公式ドキュメントを隅から隅まで読み込んでいる人

何故かというと、当日発表する内容は「公式ドキュメントの中からポイントを抜粋した所」を中心に解説するからです。

勿論公式ドキュメント以外のものも含めるつもりですし、実際の発表時に例として挙げる内容は公式ドキュメントのものでは無いです。

が、Ansibleの公式ドキュメントがよく出来ていて、量が少ない(15ページ程度)割に多種多様な内容が含まれているため、発表時に公式ドキュメントに書かれていること全てに触れることは不可能だと判断し、発表は以下の点を念頭に置いて行おうと思っています。

  • 「Ansibleのことを初めて知った人が触れてすぐに使える状態になる手助けをする」
  • 「充実したAnsibleのドキュメントを独力でも読み進められるようになるポイントを提供する」

そのため、公式ドキュメントを隅から隅まで読んでいたり、既にAnsibleをヘビーに使っている人には既知の内容が多く含まれると思いますので、その点を予めご了承頂ければと思います。

後、Ansibleをインストールした後、デフォルトかつ単独で使えることに限定して話すため、公式ドキュメントの以下の項目は発表時にはほぼ触れません。

このレベルの人だと得られるものがあると思います

  • サーバー構築をやったことが無い人
  • サーバー構築はやったことがあるが、ChefやPuppet、FabricやCapistranoなどのツールは使ったことが無い人
  • Ansibleのことを初めて聞いた人

復習用の教材(リポジトリ)紹介

書いてたら思いの外時間がかかったので詳細は現時点では書きません*3が、発表後に復習できるようにリポジトリをgithub、bitbucketに予め作ってあります(まだ未完成ですが)。

まだ未完成のため、適当にいじると色々不具合を起こすと思います。そもそもまだ説明を加えていないので。

上記リポジトリ内のplaybookとinventory fileを見て、だいたいどういうことをやっているのか分かる人は私の発表より他の人の発表を優先した方がいいのではないかと思います。

色々後ろ向きっぽいことばっかり書いていますが、まあ当日は出来る限り頑張りますので、よろしくお願いします。

*1:個人的にこの辺りの記事から使い始める人がドバっと増えた印象がありますね。

*2:ベストプラクティスの例として触れる可能性はあります

*3:発表時には詳細を伝える予定です