cakephperの日記(CakePHP, Laravel, PHP)


継続的WebセキュリティテストサービスVAddyを始めました!

2010-11-05

第1回 ITEigo にて全員が英語のプレゼン、質疑応答をして壁を一つ超えました!

PHPMatusriの熱気が冷めやらぬうちに、ITEigoという会を作りました。

PHPMatsuriでみんな結構英語に積極的になってたので、この勢いで英語でエンジニア全員がプレゼンする場を作ったら面白いんじゃないかと思ったのがきっかけです。

最初、ITEnglishにしようと思って検索したら色々と出てきてハッシュタグも競合しそうだったので、ITEigoにしました。

ITEigoに関する説明として、今回オープニングで使ったスライドをアップしました。

この資料は次回も使い続ける予定です。

ITEigoの試みが成功したので、同じようなことが各地で開催されれば良いなと思ってます。その際はこの資料をご自由にお使い下さい。


この会は、今後定期的に開催していく予定です。次は11月末の金曜日の予定。詳細は下記のGoogleGroupに参加してください。

今後は関東以外でもやったら良いと思ってるので、関東以外の方も是非ご参加下さい。

http://groups.google.co.jp/group/iteigo



第1回をやってみるまでどうなるかドキドキしてたのですが、結果は大成功。

自分が司会をやりましたが、質問を常に考えておかないとなと準備してたら、質疑応答が英語で活発にあってびっくり。たぶん英語でのプレゼンは、日本語よりも情報が少なくなる傾向があるので、聞いてる人は質問をすることによって理解を深めようという意識が働いたのかも。日本語でのプレゼンよりも質疑応答が活発だったのは意外でした。(もしかしたら10人という人数がちょうど質問しやすい雰囲気で良かったのかも。)

参加者からは、初めて英語でやってみたけど面白かった、次回も是非!という意見があり、嬉しかったです。

全員が同じ発表者という立場になり、シャイにならず、同じ時間、経験を共有していたので、日本人同士で英語をしゃべってても違和感がありませんでした。



今回は発表時間を5分、質疑応答を3分にしましたが、発表中はあえて質問せず、発表時間が延びても止めませんでした。これは初回だったので発表に集中してほしかったのと、時間の区切りを強くしすぎるとあせって発表も不十分になるんじゃないかと思ってそうしました。ただし、相槌を打ったり、I think soと言ってみたり、プレゼン中に反応を返すようにはしてました。反応ないと不安になると思ったので。


告知の際に言い忘れてたのですが、第1回目から完璧なプレゼンをしてもらいたい訳じゃなく、とりあえず英語でのプレゼンを経験してもらって、雰囲気をつかみ、その中から次回に繋がる課題を各自見つけてブラッシュアップしてもらえればと思ってます。(完璧にしよう思うといつまで経ってもプレゼンできないから。完璧な英語でプレゼンしないとバッシングするわけじゃないのでご安心を、むしろそんな人はお断り)。

発表への不安が強いとみんな敵に見えてくるけど、そんなことはない!みんな仲間なので暖かく見守ってくれます、ご安心ください。

重要なのは、自分の言いたいことを英語で伝える、という意志を持つこと。

今回出られなかった方、次の会には是非お気軽に参加ください。


今後は、何回かプレゼン練習の会をやってみて、慣れてきたらUstreamで中継したり、海外のゲストを呼んだりしてみたいと思っています。将来は誰かが海外のカンファレンスで発表してみるなどの事例が出来れば最高だなと思ってます。


今回はオープニングと最後のまとめを日本語で、プレゼン中は司会者(自分)も含めて全て英語にしました。(緊急の場合のみ日本語OKにした)

司会は最初に、「Next is XXX-san, please start your presentation」と言って、最後に「Thank you. Anybody has comment or question?」と言っただけ。

日本語がちょっとでも聞こえると、そっちに引きずられるので原則英語のみとしたほうが良いと思います。

オープニングを日本語でやったのは、自分の意図を100%理解してもらいたかったからです。緊張もときたかったし。


自分はCakeFest@Chicagoの発表経験をプレゼンしました。資料は下記にあります。



次回へのメモ, 反省点

  • 時間は明確に区切ったほうが良い(ケースバイケースで)
  • ビールは飲みすぎない(ほどほどに)
  • 人数が増えそうな場合は土日の開催も視野に入れる
  • 楽しめて、開催の負担を軽減して、長期安定運用を。たくさんの人を集めることが目的じゃない
  • 指摘したほうが良い間違いは積極的に指摘する(Themeの発音とか)
  • 2時間だと10人ぐらいが限界
  • 居酒屋の個室で3時間ぐらい使ってやるのも良いかもしれない

2010-10-15

PHPMatsuriで熱い夜を過ごしました(参加報告)

10/2(土)-10/3(日)に東京晴海グランドホテルにてPHPMatsuri(PHP祭)が開催されました。

初日は吉岡さんの英語大事だよの話から始まり、PHP5.3やLithium, Symfony, ユニットホスティングリクルートさんの話など夜まで豪華な内容が続きました。次の日の昼に、ハッカソンで開発したものをプレゼンしてもらい、何人かの方に賞が授与されました。お疲れ様でした。

詳細は、他の方の感想ブログや写真を見てもらえればと思います。

http://2010.phpmatsuri.net/page/blog-and-picture-of-participants


自分は初日夜に事例ナイトというセッションで、PhpmatsuriのサイトをCakephpベースのCMS Croogoで作った話をしました。


この発表資料は当日セッションを聞いてる合間に作っていて、発表後の達成感からハッカソンで何も作らず。雰囲気を楽しんだり、海外ゲストや参加者の方と話したりしてました。

次の日の朝11時ごろに作りたいものがひらめいたのですが、海外サービスとの連携箇所でアメリカ国内の電話番号が必須と分かり断念しました。。。下準備は大事ですね。(Skypeを使えばアメリカ国内の番号も簡単に取得できたのですが、そこまで気力と時間がなく断念しました)。

ただ、ユニットホスティング上で実装しようと思ってユニットホスティングサーバのセットアップ、ログイン、php5.3セットアップまでは出来たので、そのお手軽さがつかめたのが良かったです。

泊まりのハッカソンでどうなるかドキドキしてたのですが、みんな本気で夜中まで開発してて、圧倒されました。参加者の方は積極的に英語を使って海外ゲストの方と話したり、プレゼン資料を英語で書いたりと、吉岡さんの講演で英語熱が一気に加速してた印象です。


今回、海外から、Graham(CakePHP)、Joel,Nate(Lithium), Kris(Symfony)の4人を招いて発表とワークショップをしてもらいました。セッションを聞き、ワークショップでそのコードの洗礼を浴びるという豪華なもの。自分はGrahamさんのワークショップのサポートで通訳っぽいことをしました。途中から自分の思うCakePHPの利点なども注入しながらやってたので、Grahamさんが言ってないこともたくさんありました(ご注意ください)。

メインの開発者の人にダイレクトに聞けて、サポートしてもらえるなんて、夢のような時間だなぁと思ってみてました。


今回参加してみて、ブログ見てますと言ってくれた方がいらしゃって嬉しかったです。軽い気持ちで始めたこのブログですが、継続していて良かったなと思いました。


Phpmatsuriの翌日は燃え尽きてるかと思ったのですが、心地よい疲労感がありながら、俺もやったるでーという気合がみなぎっていて、ワクワクした感じがしばらく残ってました(他の方もそんな感じだったみたいです)。

これだけ豪華なイベントをこの値段で出来たことが良かったです。安藤さん、スタッフのみなさん、スポンサー企業様、参加者の皆さん、ありがとうございました。


次回はスタッフとして参加した報告を書きたいと思います。


最後に、写真で振り返ります。

resize0674

P1040723

今年はTシャツ、ステッカー、エコバックなど。


真剣そげ

外での開発も気持ち良さそう。


Practical PHP5.3(実践PHP5.3)

NateさんのPHP5.3の話


Re-imagining CakePHP: The path to 2.0

GrahamさんのCakePHP2.0の話


resize0700

Joelさん、NateさんによるLithiumの話。仲が良さそう :D


resize0706

KrisさんのSymfony2の話。


resize0708

ワークショップはこんな感じで、コアデベロッパーと距離がぐっと近くなります。素晴らしい。リチャードさんの翻訳付き!



resize0722

ケーキ

職人魂!!!ここまでのクオリティで再現するのは日本だけだろう。


ケーキを前に各フレームワークの開発者

これぞベストショット!!


resize0733

事例ナイトの賞品(ワイン)をその場で振舞っております。


resize0736

夜は各自もくもくとやったり、コアデベロッパーの横に陣取って聞きながらやったりと、みんなそれぞれに真剣に取り組んでいました。



夜が更けるにつれて、疲れを見せるどころかなぜかバンドで盛り上がりを見せている今年の#phpmatsuriの猛者達

夜中にはもくもくと開発する人をバックに、バンドのゲームで白熱してました。朝4時ぐらいまでやってたはず。。


resize0753

2日目の発表手前。LTのカウントダウンの表示チェックなど。


resize0750

みんなのハック内容を張り出してます


resize0758

NEWドラ娘誕生!


resize0760

発表風景。直前になって発表時間が3分程度と知らされどよめきが・・・でも33人LTだからそうなるよね。審査するほうも大変。


resize0783

感動のフィナーレ。そして伝説へ・・・

2010-09-16

CakeFest2010@シカゴで発表してきました。

あれから1週間経ってしまいましたが、CakeFest2010@Chicagoで発表してきました。

なぜ発表しようと思ったかは、「CakeFest2010で発表してきます」に書きました。


f:id:cakephper:20100905012316j:image


今回はカンファレンス1日目の午前中に1時間のセッション枠を貰って、MongoDBをCakePHPから使う方法というタイトルで発表。

内容は前半にMongoDBとは何か、何がよいのか、ドキュメント指向とは、という内容を話し、後半にPHPのPecl Mongoの話と、CakePHPからMongoDBを扱うデータソースの話をしました。このデータソースは以前自分が開発したもので、今はAndyさんと一緒に開発してます。

CakePHPからMongoDBを扱うという話の前に、軽くデータソースの利点や必要なメソッドを話し、最後にデモを2つやりました。デモは簡単なCRUDを実現する画面のデモと、削除履歴を管理するデモ。

削除履歴のデモは、beforeDeleteでMySQLから対象削除レコードを取得して、MongoDBの1コレクション(テーブル)に保存するというもの。同一コレクションに何でも保存できるMongoDBのドキュメントDBの特性を生かして、管理は1コレクションでOK、あとから複雑な検索をして該当削除レコードの履歴を参照できるという利点を説明。

これをMySQLでやろうとすると、全テーブルのスキーマをコピーして削除履歴を保存していくか、一つの削除履歴テーブルを用意して1カラムにシリアライズした削除対象レコードデータを入れるかの方法があるけど、どちらも問題を抱えている(スキーマ管理の煩雑性、シリアライズデータの検索の難しさ)という話をしました。


最初の時点で何人MongoDBを使ってるかという質問をしたら、70人中6人ぐらいだったので、今回の資料は丁度良かったです。質問も2つほどきましたが、何を質問しているかは理解できたのでほっとしました。ただ受け答えがうまくできなかったけど(model::_schema使わない理由を質問されたけど、その理由を忘れてしまってたからw)。


今回思ったのは、1時間のセッションだと1時間の発表練習が必要だということ。これが思った以上に大変。日本語なら別に練習しなくてもいいんだけど。それとデモをやるので時間が足りない可能性も考慮しないといけない。さらに当日は僕の前に10分ぐらい色々なものをプレゼントする企画が入ってて、結局発表時間は50分ぐらいになった。前日の夜中に練習したときはデモを含めて1時間かかってたので、優先度の低いデモははずしておいて良かったです。あと本番は余裕がなくなるためか、思った以上に早く進行したのもあって時間内に終われました。

本番直前の1時間が一番緊張して、本番が始まったらそこまで緊張しなくなりました。もう覚えたことをひたすら話すだけのロボットのようになってました。もうちょっと感情を込めて発表できたら素晴らしかったんだけど、そこまでの余裕はなかった。ビデオはそのうち完全版がアップされる予定なので、その時にまた追記します。

f:id:cakephper:20100907220417j:image



感想

今回は安藤さん、岸田さんも参加してて安心感が違いました。さらに去年のCakeFestで会った人がいたことや、ワークショップ初日の夜の飲み会に参加してMarkStoryさんや他の参加者の人と面識を持てたこともあって、アウェー感があまりなかったのが良かったです(次の日は二日酔いで午前中をつぶしたけどw)

僕の発表に期待してるよと言ってくれたCakeFestスタッフの方にも感謝。ただ有料のイベントなのでその期待に答えなければというプレッシャーが半端じゃなかったです。

発表前に逃げ出したくなって、Twitterで呟いたら、日本のみんなから「がんばれ!」コールが・・・これにはかなり助けられました、ありがとう。サマーウォーズの気分が味わえましたw

発表が終わったあと、「良いプレゼンだったよ」とみんなが気軽に声をかけてくれたことに感動して泣きそうになりました。IRCでも良かったよと言ってもらえて、ここまで来て良かったと思った。僕の席まで質問しに来てくれる人もいたし、このデータソースを使って、http://www.cakefesttweets.com/

こんなサイトまで立ち上げている人がいることを知って感動した。


まだまだ英語が出来ないのを痛感してます。自分の言いたいことはある程度言えるようになったけど、相手が何を言ってるか分からないことが多い。聞いてるフリをするのだけはうまくなったけど・・・orz

ただ、世界の壁は高いと思ってたけど、そんなに英語での発表は敷居が高くない。スライド作って、何を言うか考えてざっくり暗記してひたすら練習するだけ(アクセントと発音は気をつけました、ちょっとずれるだけで理解してもらえないので)

発表するものがあるなら、それが旬のうちに発表したほうが良いです。チャンスはすぐに逃げていきます。発表者登録のサブミットボタンを押すのを躊躇することもありますが、最後は何も考えずに細かいことはいいんだよと思って、とりあえず押してみると世界が変わるかもしれません。その前に、この記事を読むことをオススメします。僕はこの記事に勇気付けられました。

「酷い英語をもっとお願いします」

http://gihyo.jp/lifestyle/column/01/language/2010/0419



安藤さんから暖かいお言葉を頂いて感激してます。

http://blog.candycane.jp/archives/351

僕がカンファレンスに出ているさなか、同時に海外に討って出て、
見事に殻を破ったのがcakephperさんです。
僕も彼も帰国子女とか国際結婚とかそういう海外に縁があるわけでもなく、ふつうのエンジニアでしたが
去年と今年のCakeFestはものすごくエンジョイできました。
そしてcakephper さんは見事スピーカーとしてデビューする快挙を果たしました!
僕の知る範囲では海外のPHPのイベントで日本人がスピーカーになったのは初めての事だと思います。
(僕に出来るのは動画を編集する事くらいです。これも楽しいですけど。) 

実はここまで来れたのもCakePHPと出会って安藤さんと知り合いになれたことが大きかった。彼は常に世界とのコネクションを意識していて、僕はそこについていっただけ。去年のCakeFestも安藤さんが行かなかったら行ってなかったかもしれない。僕の中で勝手にメンターになってます。ありがとうございます!



CakeFestは海外で行くのが大変だけど、そんな気分が気軽に味わえるPHPMatsuriがあるので、興味のある方は是非参加ください!

http://2010.phpmatsuri.net/



下記にCakeFest2010の発表資料などがまとまっています。

http://bakery.cakephp.org/articles/view/cakefest-2010-thats-a-wrap

http://josediazgonzalez.com/2010/09/04/cakefest-conference-notes/


写真など

http://www.flickr.com/photos/cakefest2010_ichikaway/

2010-09-13

PHPMatsuriが開催されます

10/2(土)-10/3(日)に東京晴海グランドホテルにてPHPMatsuri(PHP祭)が開催されます。

詳細は下記のURLよりご覧ください。

http://2010.phpmatsuri.net/

私はそのスタッフの一員で、今回はその紹介記事を書きたいと思います。

PHPMatsuriに関する質問などは、下記までお気軽にご連絡ください。

Email:



去年のCakeMatsuriはワークショップ1日、カンファレンス1日、海外からCakePHPコアデベロッパー2人を招待と盛りだくさんの内容で大成功でした。今年はフレームワークを超えてPHP全体を対象にしたイベントになります。


PHPMatsuriの特徴を下記にリストアップし、それぞれに関して述べていきたいと思います。


ハッカソン形式で何かを開発する

今年はハッカソン形式で何かを1日間で開発するというのがメイントピック。

ハッカソンの詳しい説明はこちら。http://2010.phpmatsuri.net/page/hackathon

開発したものに対して2日目にコンテストがあるのでエントリーすれば素敵な商品がもらえますし、新サービス立ち上げるなら良い宣伝になると思います。

開発は1日目にゼロからするのではなくて、事前に開発していたものをそこで仕上げるというものでもOK。こういった機会に一気にやりかけのタスクを仕上げるのも手だと思います。周りにたくさんのエンジニアがいるので質問もしやすいと思います。

ただ、全員が開発してコンテストにエントリー必須ということではありません。選択は自由です。Phpmatsuriに来て他の開発者と交流を深めるだけというのも良いかと思います。海外からコアデベロッパーも何人か来るので、その人たちと会うだけというのも一つかと思います。

ドキュメント賞も用意する予定なので、翻訳をやりまくるとか、負荷計測してみた結果をブログに公開するとか、全フレームワークをインストールしてみた比較とか、そいういったものもありだと思います。

あとは他の開発者を現地で募って何かを開発するというのもありです。共同開発を経験してみたいという方はそういったものに乗っかると良いかもしれません。



泊り込み相部屋、24時間イベント会場オープン

今回は会場を24時間貸しきるために全員の宿泊が前提になります。部屋は2〜3人の相部屋で同じ性別の中からランダムに相部屋の人を決める予定です。

相部屋の要望があれば聞きますが、知らない人と同じ部屋になるというのがオススメです(自分の学生の頃の合宿でもそうだったんですが、他校の人と仲良くなるのは相部屋だったので)。

同じ部屋の人という属性ができるだけで気分的に近い関係になれて交流もしやすくなるんじゃないかと思ってます。

相部屋ではありますが、ほとんどは会場で開発したり講演聞いたりするでしょうから、部屋にいることはあまり無いかもしれません。


招待ゲストが豪華すぎる(Lithium, CakePHP, Symfony)

まずは、このセッション情報をみてください。

http://2010.phpmatsuri.net/page/session

吉岡さんから始まり、Lithiumから2人、CakePHPから1人、Symfonyから1人のセッションがあります。これだけの豪華メンバーが日本に集まって講演するというのはもう2度と来ないかもしれないです(本気で思う)。海外まで行って同じ人の講演聞くぐらいなら日本で聞いた方が良いですし、質問しに行くのも周りがほとんど日本人なので気後れせずできると思います。海外ゲストの発表は通訳の人が入りますのでご安心ください。

去年はCakeMatsuriでJoelとGrahamに来てもらいましたが、彼らは日本好きになりましたし、参加者と積極的に交流してたし、日本がどれだけ盛り上がってるかというのを他のデベロッパーの人に伝えてくれました。

f:id:cakephper:20091031191934j:image:w200


ワークショップ形式、カンファレンス形式など色々聞ける環境

スケジュール詳細は下記をご覧ください。

http://2010.phpmatsuri.net/page/timetable

1日目は、カンファレンス形式の発表と、ワークショップ形式がエリアを区切って同時開催されます。

ワークショップ形式の会場では、各自が自由に開発しながら、平行してコアデベロッパーワークショップを行ったり、直接質問できたり、他の開発者としゃべったりなど、色々と自由にできるエリアです。今この記事を書いてるだけでワクワクしてきた!

f:id:cakephper:20091030172416j:image:w400


有料

去年のCakeMatsuriに引き続き今年も有料です。去年の2日分のチケット代とほとんど変わらない値段で、会場費、宿泊費、食事4食(昼食・夕食・朝食・昼食)が含まれるというお得さです。これはスポンサー会社のご協力により実現しています。ありがとうございます。

http://2010.phpmatsuri.net/page/sponsor


チケットは実費だけを頂く価格に抑えております。一般的な勉強会は無料で開催されることが多いのでそこと比較すると22,000円という値段は高いように思われますが、その分の価値をしっかり提供しようとがんばっております。

特にこれだけ多くのコアデベロッパーが来て日本語でセッションが聞ける機会はそうそう無いですし、他の開発者との交流時間も長いので、他のカンファレンス勉強会では味わえないイベントにしたいと思います。



最後に

PHPMatusriに少しでも興味を持っていただけたら幸いです。チケットは売り切れ次第終了となりますのでお早めに申込み頂ければと思います。

チケット購入は下記からTwitterアカウントを利用してログインし、購入となります。

http://2010.phpmatsuri.net/phpmatsuri/paypal

何かご不明な点や質問等ありましたらお気軽に連絡ください。

Twitter(@cakephper)でもメールでも。


#余談

PhpmatsuriのサイトはCakePHPCMSであるCroogoを利用して作っています。ベースがCakeですので拡張が簡単で、ACLなどの設定も簡単な操作で実現できます。良い出来のCMSだと思いますので興味があればお試しを。Phpmatsuriで聞いていただければ、その辺のノウハウなどもお答えします。(Paypalの決済連携などのノウハウも含めて)

http://croogo.org/

2010-07-26

phpmatsuriのスタッフを募集してます


追記(7/26 23:00):たくさんのご応募ありがとうございました。一度ここで締切って、タスクの割り振りを考えたいと思います。割り振り後に、人手が足りなそうであれば、再度募集をしたいと思いますので、宜しくお願い致します。

去年のcakemasturiから1年、今年はphpmatsuriとして10/2(土)-10/3(日)に開催されます。

詳細はこのスライドをご覧下さい。

http://www.slideshare.net/yandod/20100529-phpday


それに伴い、phpmatsuriのスタッフを募集いたします。スタッフは基本SkypeやMLで連絡を取り合って作業を進めて、当日に会うという流れになると思うので、地域に関係なく募集しています。phpmatsuriのスタッフは、技術レベルを問いません(受付や問い合わせ対応などもありますので)。チケット管理、当日の運営、サイトの構築、paypal連携実装など、やることはたくさんありますが、出来る範囲で担当して頂ければと思ってます。

スタッフは大変だけど楽しいので、是非参加ください!

興味のあるかたは、是非ご連絡ください。不安や疑問がある方はお気軽にお問合せ下さい。

連絡先は、

Twitter: [twitter:@cakephper]

Email:


去年のcakematsuriを振り返ると、色々と学ぶことが多かったです。自分が一体何を協力できるか分からず、不安なまま飛び込みましたが、やるべきこと、やれることはたくさんあって、全て自分のためになったと思います。具体的には、paypal実装に詳しくなった、海外の発表者と親密になった、楽しい仲間が出来た、イベント終了時に感動した、gitを覚えた、おもてなしの心を学んだ、などなど。

去年のcakematsuriの感想はこちら。「CakeMatsuri無事終わりました」



去年のcakephpmatsuriのスタッフ参加では、高校時代の文化祭のような爽快感がありました。 準備が大変だったこと、遠隔だけど、みんなとワイワイ進めたこと、当日はあっという間に過ぎたこと、感動が残ったこと、そんな感じで今年も一緒に感動を味わいたいと思いますので、ぜひ仲間に加わっていただきたく、宜しくお願い致します。


#ちなみに、去年はスタッフもチケット買って参加してますので、今年もその流れになると思います。ごめんなさい。