GCE + Dockerハンズオンを開催した
GCE+Dockerハンズオンを開催しました!
スライド
MacでDockerのインストール。GCEでDockerのインストール。Dockerにredis-serverをインストール。Docker Indexへの登録までひと通り。
GCE + Dockerハンズオン
追いつけなかった人へ
今回のハンズオンでは進行がかなり速めだったので、追いつけなかった人がいるかもしれません。
そいういう場合はスライドと、asciinemaを見ながら追い付いてくださいね><
asciinemaとは、ターミナルのスクリーンキャストを、動画ではなく文字で再現してくれるサービスです。文字なので、コピペが出来る!
勉強会の趣旨
Google Compute Engine+ Dockerを基本を皆でやってみよう!DockerのインストールやDockerfileの作成はとてもハマりどころが多いので、理論は置いておいてとりあえず皆で触れる状態になっておきましょうねー。というのが趣旨でした。
というか、私が散々ハマってしまったので、皆には地雷を避けた情報を提供したかったのです><
公式ページのとおりにやってもDockerさんは動いても、Dockerfileを書く段階になってうまくいかないことが確実です。
あと、最近awsにべったりになってきているので、GCEが公式にDockerに対応したという素晴らしいニュースがあったので、これはハンズオンやるしかないな!と思ったのでした。何故ならば、Dockerにはただの仮想化技術だけではない可能性があるからです
詳しくは以下の情報を見るといいと思います!!!
それでは、良いDocker-lifeを!
AngularJS style guideを日本語訳した
mgechevさんがAngularJSのベストプラクティス&スタイルガイドをまとめてるのを見つけたから訳してみました。翻訳や変なところがあったらPullReqお願いします。
https://github.com/mgechev/angularjs-style-guide/blob/master/README-ja-jp.md
経緯
Macbookの発表に備えて自分のdotfilesを整えるついでにgithubでdotfilesを彷徨っていたら、VNCクライアントをJSで書いちゃったりしてる 、mgechevさんががAngularJSのベストプラクティス&スタイルガイドをまとめてるのを見つける。
↓
おお、これは素晴らしい!
↓
あれ、他の言語はあるのに日本語訳ない
↓
AngularJSを勉強するついでにContributeも出来るいい機会じゃないか!
↓
やってしまえ!
ということでAngularJSスタイルガイドを翻訳してみました:)
スタイルガイドの原則
翻訳してて色んな所でどう表現したものかと悩んだりしたけど、以前にも社内JSスタイルガイドをまとめたが、共通して
- 構造的であること
- 使用する単語や文体を統一すること
- 複数の意味を持たないようにし、間違った文脈で読めないこと
というのを大事にした。なので、できるだけ元の文章に近づけるようにした。翻訳元が曖昧ならまず翻訳元を直すべきなので後回しとも言える。
Community-driven
AngularJSスタイルガイドを書いたmgechevさんはGoogleの人ではない。
巷では、github pagesを使ってデファクト感を出したライブラリが世間を騒がせたり、JSでGitを実装するプロジェクトやもっといいCoffeeScriptコンパイラ作るとかがお金を集めたりして、github pagesやセルフブランディングが大事なように見える。
その一方で、JSは必然的にソースを隠すことができないので、Facebookみたいな大企業が面白いUIやアイディアを作ったと思ったらコピー/forkされてしまう。
だからこそ、疎結合であることが最も重要で、AngularJSは一度導入してしまえば描画やDOM操作をビジネスロジックからかなり疎結合にできてしまう、community-drivenな余地が残されているのではないだろうか。
進化と陳腐化
JSに関する技術や書籍はあっという間に陳腐化してしまったりして、2年前の情報はもう古かったりする。
JSのこの玉石混交の大航海時代を生きている感じが好きだなぁ。
転職
7月31日をもって、mixiを退職しました。ここは個人ブログなので堅苦しい挨拶は抜きにして、これまでと今後について書きたいと思います。
これまで
07年に最初の新卒としてmixiにジョインし、Perlに四苦八苦しながらも、Find Job !、mixiとサービスに関わり、特にmixiアプリは、プロジェクトの立ち上げから4年近くエンジニアとして開発に携われたのはすごく貴重な経験でした。
このプロジェクトのおかげでいろんな人に会えたし、何も無いところからモノを作る楽しさ、優れたエンジニアと仕事をするスピード感、プラットフォームの戦略、抽象化して捉えることの大切さを学びました。
4年という長きにわたって(長くないように思えるかもしれないが、僕にとっては長かった)mixiの開発に携わってきたが、最良の出来事は、mixiを通じて様々な人物に出会えたことだなーと感じています。
圧倒的な技術力を持つひと、いろいろ教えてくれるメンター、気の許せる友人、負けたくない好敵手、バカみたいにヲタ話ばかり出来る人、組織の中でしたたかに生きる人、兄のような人、いろんな人がいた。その全員に感謝したい。
本当に本当にありがとう!
組織を抜けることで話せなくなる内容ができたとしても、新しい挑戦を応援してくれ、人同士の繋がりだけは決して切れないと信じさせてくれる人達の後押しのおかげで今の僕がある気がします。
これから
会社を抜ける理由は書きませんが、今後の抱負など。まぁ今後の抱負と言っても、mixiに入る時とあまり変わりません。
ユーザーに一番近いところから世界を変えるプロダクトを作ることです。
短期的には英語でコミュニケーションを取れるようにするとかAndroidの開発を極めるとかがありますが、いつか会社を起こしてみたいし、技術ももっともっと高めたい。まだまだやりたいことはたくさんあるので手段はいろいろ変わるかもしれませんが、この目標だけは今後も変わらない気がしています。
目標があり、そこまでに複雑な情報があれば整理し、問題があれば解決し、道がなければコードで作る。ただそれだけです。
次の会社ですが、Vettl Inc.にジョインします。webooさんこと山下さんが立ち上げたスタートアップで、僕も入れて3人全員エンジニアの小さな会社です。
スタートアップの失敗?リスク?糞食らえ。最大限の努力をした上で、もし失敗しても失敗から学び懲りずにやり直すのがエンジニアのやり方です。
8月1日からすぐに働き始めます。夏休みはもう十分に取りました。お金はないが、やる気はヤバイぐらい満ち溢れてます。働く場所は相変わらず渋谷なので、気軽にランチや飲みに誘って頂ければと思います!
まとめ
次回作にご期待ください。
モヒカン族の考えた新しい社会システム
最近めっきり聞かなくなったモヒカン族。絶滅危惧種であるモヒカン族のアプローチで今回の東日本大震災の問題について1ヶ月間スタートレック:ヴォイジャーとまどかマギカを見なおしながら考えてきたことをここに公開する。
モヒカン族についてもっと知りたい人は、モヒカン宣言を見るといいだろう。
さて、もやもやを吐き出すだけ吐き出すように書いていたら非常に長くなってしまったのでここに章立てへのリンクを置いておく。時間がない人は第4章とまとめだけ読んでもいいだろう。
第1章:「地震怖いよ。マジで怖いよ。津波怖すぎだよ。原発事故まで重なったらマジでヤバイ。日本オワタ。」
第2章:「あれ?案外平気じゃね?でも、この平気ってまた危険が見えなくなっただけだよね?平気を平気のままにしておいたらまた歴史を繰り返すんじゃね?」
第3章:「歴史を繰り返さないにはどうしたらいいか?このままどんどん今の状況が平気で当たり前になったらまた問題を先送りしちゃうよ?どうしたらいいんだろう?」
第4章:【僕と契約して「社会2.0」になろうよ!】
第5章:「奇跡も、魔法も、あるんだよ」
第6章:「もう何も怖くない」
第7章:まとめ
第1章:「地震怖いよ。マジで怖いよ。津波怖すぎだよ。原発事故まで重なったらマジでヤバイ。日本オワタ。」
- 「原子力発電は危ないからすべて壊すべき」
このような極論は正しいか?それは誰にもわからない。
難しい問題を抽象的に捉えるアプローチは正しい。しかし、問題を0と1で捉えることは情報が欠損しすぎており、問題を議論できず、否定もできないため、極論は先に言ったほうが、必ず正しくなる。必ず正しい意見というのは簡単に優越感を得られる。だからこそ「優越感ゲーム」に陥るのである。
なぜこのような極論が出てしまうのか。それは、自分の安全が脅かされるという「恐怖」によって、自分の意見を否定されたくない、問題を早く解決したいという欲求が出て、問題を多面的に捉えられなくなってしまうからだ。
問題を解決するには、その問題の定義を考え、誰にとっての問題化を考え、抽象的に捉え、問題の本質を考え、議論する必要がある。感情に流されて結論を急いでは、また間違ってしまうだろう。
もちろん、複雑な問題を数値化し、「見える化」し、抽象化によって1次元にプロットする行為は、正しい。正しく使えば。体系化されていない情報を理解するのに非常に強力なツールなので積極的に使うべきだ。ただし、自分の論理の正当性を証明するのに使ってはいけない。
「ライトついてますか」
問題発見手法の名著にこの本がある。この本は、問題を多面的に捉え、誰にとっての問題か、問題の本質は何かを考えるのに役にたつ。
極論に陥らずに議論するには、そもそも問題とは何かを理解する必要が有る。問題というものを考えるときに頼りになるのが抽象化だ。様々な視点で問題を捉える手助けになる。
第2章:「あれ?案外平気じゃね?でも、この平気ってまた危険が見えなくなっただけだよね?平気を平気のままにしておいたらまた歴史を繰り返すんじゃね?」
ここでの問題の本質は、解決に長期間かかる問題を先送りしてしまう構造にある。
時間という軸が抜けているのだ。
社会問題というのは、解決に長い予測を必要とし、目標がない問題である。人間は同じ刺激を繰り返し受けるとそれに慣れてしまう。「危ない危ない」と思いつつ、問題を先送りにしてしまうのだ。長期に渡る問題の意思決定の難しさはそこに起因する。
構造に時間軸を含めるにはどうしたらいいか。マイルストーン決め、時間を区切って定期的に見直しながら、数値目標を作るのだ。時間が区切られていないプロジェクトは曖昧な目標しか設定できない。そして、目標が曖昧なプロジェクトは正確な意思決定が出来ないのだ。
第3章:「歴史を繰り返さないにはどうしたらいいか?このままどんどん今の状況が平気で当たり前になったらまた問題を先送りしちゃうよ?どうしたらいいんだろう?」
前置きが長くなってしまった。ではどうすればいいのか?社会問題は、時間軸を含めて長期的な未来を正確に予測し、意思決定する必要が有る。その為にはどうすればいいか。
- 社会問題は数値に基づいて多面的に議論し、極論に頼らない
- 社会問題の議論は時間の推移による問題の先送りを対策する
- 社会システムを時間の推移を前提とし、問題を再定義して変化し続ける社会システムにする
さて、ここで上げた方法はどれも具体性がない。それはなぜか。まだまだ問題の本質に迫れていないのだ。
問題の本質とはなにか。問題の定義とはなにか。それは、社会問題を自分の問題だと考えていないことだ。それを解決するにはどうすればいいのか。システムのアップデートの呼びかけるのだ。
第4章:【僕と契約して「社会2.0」になろうよ!】
オープンな情報発信によって論理に基づいた議論をし、社会問題を先送りにしない、変化し続ける社会を「社会2.0」として定義し、それを広めるのだ。
民主主義である社会を変えるには、オープンな場に情報発信し、開かれた議論によって多数派になるのだ。このエントリーを書いたのは、この結論に達したからだ。
個人が情報発信するWeb2.0の時代には、それにふさわしい議論の方法がある。ブログを書いて情報発信するのだ。もちろんTwitterでもmixiでも何でも良い。開かれ場で議論することが大切なのだ。そのためのツールはたくさんそろっている。
地震によって津波対策とエネルギー問題を先送りにしてきた社会システムは破壊された。沢山の人が死に、外国に危ない国と思われ、みんな恐怖し、混乱した。
もう二度とゴメンだ。
社会問題を自分たちの問題であると捉え、問題を先送りにしない論理による社会システムを作るための行動が必要だ。
古いシステムや、古い考え方しかできない人に「1.0」というレッテルを貼り、社会的に多数派になるのだ。
「社会2.0」じゃなくても、「Society2.0」でも「モヒカン党」でも「モヒカンNPO」でもなんでもいい。とにかく、恐怖と利害と極論での議論を避け、数値を出し、時間と目標を決めさせ、政府や企業が問題の先送りをさせない監視システムに、私たち一人ひとりがなるのだ。
第5章:「奇跡も、魔法も、あるんだよ」
社会というモンスターは我々個人が立ち向かうにはあまりに強固に見える。それにはまず情報という武器が必要だ。社会を変える方法を勉強すればいいのだ。それには、フランスに学ぶのが手っ取り早いだろう。
私の好きなブログの「フランスの日々」のエントリーを一部引用します。フランスの解決手法や考え方は複雑で多次元の問題をうまく抽象化しており、勉強になります。
かぶれていると思われるかもしれませんが、僕はフランスの人たちが一生懸命考えて出した答えを信頼しています。「センター入試とバカロレアに見る日仏の違い 」でも書きましたが、彼らは答えのない問題に対して、執拗にねちっこく思考力を回転させます。フランスの宗教問題や、ストライキの問題、結婚に対する考え方などなど、彼らが出した回答は日本から見るとへんてこなものに見えますが、背景を知るとなかなか妥当なものだと感じます。同じ人間が苦しみながら考え抜いた答えは、多くの場合日本の状況に対しても参考になるのです。
http://mesetudesenfrance.blogspot.com/2010/02/blog-post_22.html
第6章:「もう何も怖くない」
ここで、フランスを上げたことには理由がある。「学ぶ事は真似る事」であるからだ。教育や知識のマスターは一定の推移を辿るので、まずは真似てみるのだ。
・真似から入り、真似て反復練習をし、抽象的に捉え、発展させる
まだまだ日本の社会や議論は未熟であると私は考えている。私自身も未熟だ。未熟さを指摘されたときに「揚げ足取り」と短絡的に捉えずに、未熟であることを認め、発展させる必要が有る。
日本人は伝統的に他国のテクノロジーを輸入して、改良してきた。それを社会にも適用するのだ。私は未熟を認めたときの日本人の力強さを知っている。そしてそれを強く信じている。
第7章:まとめ
- 地震で浮かび上がった問題
- 私たちは問題を先送りにし、日本という集団の意思決定を間違ったことを知った
- 人間は恐怖により、極論を使ってしまい、議論をしないで結論を急ぐが、社会問題は性急に解決できないため、目標が設定できず、時間による問題の先送りを招く
- 私たちは恐怖や利害によって成り立った社会システムを駆逐しなければ、また間違った意思決定をして沢山の人を殺すだろう
- そして、まどかマギカの最終話が放送されないような事態は二度と繰り返してはならない
- 私の提案する解決法
- 混乱と恐怖を制御し、数値と論理をもとに議論し、意思決定する
- 長期的な問題を解決できるような社会システムに変化させる
- それは時間を区切り、目標を掲げ、問題を再定義して社会システムだ
- 「社会2.0」を掲げ、議論と論理を基にし、変化し続ける社会を作る
- それを広め、多数派になり、発展させる
- 次のアクション
- 未熟さを認めて問題発見手法、問題解決手法、議論、論理、社会について学び、情報発信をする
- 私の社会的影響力は非常に低い。取るに足らない小さな声かもしれない
- だとしても、オープンな場に情報発信して議論する。民主主義だからね
- 私は日本人と、インターネットの可能性を信じている
- これを読んで感じたこと、考えたことをブログやTwitterに書いてフィードバックしてほしい
HackForJapanに参加してReTweetPlusというものを作った話
3日かけてHackForJapan ( https://sites.google.com/site/hackforjapan/ ) というイベントに参加しました。参加したと言っても全部オンラインです。
みんなでこの3連休を使って今回の東北地方太平洋沖地震で出てきた問題をみんなでアイディアを出して実装して、自分たちに出来るやり方で社会に貢献しようぜ!というイベントでした。
なぜ?
- なぜこれを開発するのか?
やったこと(1日目)
- アイディア出し
- WaveやModeratorに色々書いた
- 自分の出したアイディアにBad投票をいただいてちょっと凹む
- WaveもModeratorも超使いにくい
- 全部GoogleDocsでよかった気がする
やったこと(2日目)
- 3日目に備えて技術情報調査
- Yahoo! Pipesで一日中遊ぶ
- 結局Pipesは使わなかった
- ffmpegで一日中遊ぶ
- 結局何も関係ないまま知識だけ溜まった
やったこと(3日目)
- Chrome Extension作った
- 表示がそっけないけど一応完成!
- Greasemonkey にも対応
- TwitterのJSを読むのが超疲れた
- いつもどうりクロスドメインにはまった
- ただ、ツイートをクリックした先にタグが表示されるので、そこはTL上に流れるように修正する
- Google Codeにプロジェクトサイト作った
- http://code.google.com/p/re-tweet-plus/
- wikiでTaskを共有
- 協力を申し出てくれた人に共有した
- もっと別のやり方があったんじゃないかな・・・正直失敗
- プロジェクトマネジメント難しい
感想
- 超感謝
- いろんな人が協力してくれた
- 協力してくれた人ありがとうございました!
- いろんな人が協力してくれた
- UstやWaveやTwitter見ている隙がない・・・
- 京都会場楽しそう・・・
- http://d.hatena.ne.jp/yositosi/20110322
- でもオフライン参加のほうが一日が終わるまでプログラミングできる!
- アイディア出しが2日あったのでいろんな調査も進んで調度良かった
- こういう短期間の開発のほうが向いている気がする
- 素晴らしいイベントでした。超楽しかった。
- 俺達の開発はまだ始まったばかりだぜ!
お金を払う心理
以前レポートを書いた第3回マネタイズhacksの動画があがっていました。レポートもよいですが、動画もその雰囲気が伝わってきていいですよね。
お金を払う心理
有料ゲーム危機の時代 iPhoneアプリは「ゼロ化」の法則に立ち向かえるか デジタル家電&エンタメ-最新ニュース:IT-PLUS
アンダーソン氏は、ゼロ化への対抗策として5つのルールを提案している。
1.最善のモデルは有料コンテンツと無料コンテンツをミックスすること
2.よそでも真似できるようなものを、有料限定にしてお金を取ることはできない
3.サイトの中で最も人気のあるコンテンツで料金を取ってはいけない
4.有料コンテンツはニッチに訴求しなければならない
5.ニッチは狭ければ狭いほどよいこの5つの条件を満たし示唆に富むケースとして、韓国ネクソンの大規模ロールプレイングゲーム「メイプルストーリー」のアイテム課金モデルを紹介している。
メイプルストーリーは、05年時点で北米で350万人もの登録ユーザーを集めている。ユーザーのプレー料金は基本的には無料で、ゲーム内の様々なアイテムを有料で提供している。プリペイドカードをコンビニで販売して決済を簡単にしたことで、10代に人気が出た。北米でゲーム内のアイテム課金を本格的に成功させた初のケースといわれている。
アンダーソン氏はユーザー行動の観察から、ユーザーは「心理的に自由(フリー)」になるために、次のようなことにお金を払うと述べている。
アンダーソン氏はユーザー行動の観察から、ユーザーは「心理的に自由(フリー)」になるために、次のようなことにお金を払うと述べている。
1.時間を節約するために、お金を払う
2.リスクを減らすために、お金を払う
3.愛着を感じるもののために、お金を払う
4.ステイタスを得るために、お金を払う
5.何かを作るために、お金を払うこれらから得られる教訓は比較的はっきりしている。仮に小さなゲームアプリであれ、ユーザーのニッチな要望を満たすような要素を組み合わせて入れ込んでおくべき、ということである。
また、プラットフォーム化を目指せる余地を戦略的に持たせるべきでもある。何をもってプラットフォームというかは定義が難しいが、今までのようにハードウエアベンダーだけがプラットフォームホルダーなのではない。ソフト単体でも十分にプラットフォームになる。
多様な動機を持ったユーザーが、特定のアプリを通じてコミュニケーションし、コミュニティーを形成していく仕掛けはすべてプラットフォームといえる。上記の3〜5は、まさに他のユーザーを意識することで行われる行動である。
プラットフォームになる条件は明白だ。人数を集め、多くの人が継続的に使い続けてくれるかどうかにかかっている。ゲーム的なおもしろさは、自分と他人との相対的な比較によって生まれることが多く、それが人を熱中させる。そのためには参加してくれる人が多ければ多いほどいい。
韓国のアイテム課金ゲームの場合でも、実際にお金を支払うユーザーは全体の10%以下で、5%程度まで下がる場合もある。しかし、5%が払うそのニッチ性こそが、ゼロ化の流れが及ばない領域であると考えることができる。
人がお金を払う心理について書こうと思ってたら、非常に質の高いエントリーがあがってきたのでありがたく便乗します。
特に、「4.有料コンテンツはニッチに訴求しなければならない」と「4.ステイタスを得るために、お金を払う」は非常に重要。アイテム課金のMMORPGでは全ユーザーの1%が売り上げ全体の80%を占めていたとかよく聞く話。
元エントリーは素晴らしいのでけちのつけようも無いですが、あえて付け足すとしたら、
- ランダムに対して、お金を払う
- ギャンブルやガチャガチャやおまけ商法など、人はランダムに対してそれがどんなに確率が低くても過度な期待を持つ傾向がある。
- 人に勝つために、お金を払う
- 人は比べられたり競争させられたりした場合、相手に勝つためにお金を払いやすい傾向がある。
- 期間限定に、お金を払う
- 今なら○円引き!や今なら○○がつきます!など、人は時間に制限があるとお金を払いやすい傾向がある。
- 人と会うために、お金を払う
- 出会い系・人材紹介・イベントなど、人はコミュニケーションや会話に対してお金を払いやすい傾向がある。
- みんながお金を払ってるから、お金を払う
- 船が沈没しそうなときには日本人には「みんな飛び込んでいますよ」と言うなんてジョークがあるぐらい、日本人は他のみんなに合わせたがる傾向がある。
こんな感じでしょうか。ほかにもアポイントメント商法など、人をおだてていい気分にさせてお金を使わせる方法もありますが、方法自体は問題はなくても詐欺のイメージが強いのであえてはずしました。
この辺の話は小売業界などでよく聞く手法ですね。まだまだありそうな気がします。他にも知っている人がいましたらコメントやブコメやTwitterに書いていただけるとありがたいです。
ソーシャルアプリ関連の講義
最近モバイル夜間大学で、ソーシャルアプリ関連の講義が多いみたいです。特にgumi国光さんの中韓のソーシャルアプリの現状が気になるところ。聞きに行ってみようかな。
第3回マネタイズhacksのレポート書いたよー
抽選(笑)が激しくて参加できない人がたくさんいたらしい第3回マネタイズhacks行ってきましたー。ちなみに、第1回、第2回もあったみたいです。
私のほかにもyasuyukiさんやtksさんやyang8さんがTsudaってたので、会場の雰囲気を知りたい人はそっちも追ってみるといいかも。
ブログを書くまでが勉強会ってことで、以下レポートです。
Yahoo
- 遅刻してyahooさんのは聞き逃しました><
pixiv
ウノウ
kayacの玉田さん
- 何があたるかわからないため、たくさん作って人気が出たものを伸ばす
- 一年間に2007年は77サービス、2008年は88サービス、2009年は99サービス作った
- 作ったサービスは受託開発でデモとして見せられる
- 作ったものは無駄にならない!
感想
- 「お金を稼ぐのは悪いことじゃない。みんなここで勉強したことをどんどんパクって!」という言葉が印象的だった。オープン&シェア。これだからウェブは大好きなんだ。愛してる。
- 次はDeNAとかGREEとかドワンゴとかプーペガールとか、海外の話とかも聞いてみたいな。
- mixiアプリへの言及が多かった。がんばらなければ。
- ウノウの田中さんのプレゼンで友達の紹介にポイントなどを付与すると書いてあったけど、Facebookでは大丈夫みたいですが、Myspaceでは友達紹介にインセンティブを与えることは数ヶ月前に規約で禁止されました。mixiアプリは・・・禁止してないはず。
- myspaceがどういう意図でこれ禁止したのかはわかりませんが、同じOpenSocialでも規約がそれぞれのSNSで違ったりするので注意。というかSNSごとの規約の違いとか規約変更とかガイドライン変更とか追ってられない。誰かまとめて><
- それにしてもこの辺の話って全部MMORPGで通った話ですよね。プレゼンでもアメリカより日本の方が数年先を行っていると言っててそれには同意しますがが、一番の課金ビジネス先進国は韓国・中国じゃないかな。
- 運営おつかれさまでした!次も期待してます!