2015/10/18

アイディアの出し方

アイディアの出し方
Webサービス、アプリ企画に関わらず、どんなものに対しても。

前提条件

以下のような習慣だとでやすいと感じる。
リラックスした状態、十分な睡眠と運動(ぼーっとした状態の方がでやすい)を定期的に作る。忙しくさせすぎない。夜寝る前はでやすい。
思いついたらすぐにメモを取ること。忘れるから。その方が深く腑に落ちるから。
違和感を大切に。テーマは以下。
「賛成する人がほとんどいない、大切な真実はなんだろう? by Peter Thiel」
人の心を動かすのは何かを徹底的に考え抜く。魔法のようなツールはなくて、徹底的に考えぬく。
マーケティングリサーチに頼ったりは絶対にしない。それだったら誰でもできる、アンケートや調査は作ったあとでいい。

思考のパターンとして有効だと思うもの

  • 問題に対して他の人とは違う捉え方をする
  • 他の人がこわくてできないようなリスクを取る
  • 大勢に立ち向かい、自分の信念も守る
  • 他の人が屈してしまった障害や課題を乗り越える方法を探す(規制の変革をとらえる。etc(遠隔医療、派遣法改正、旅館業法))
  • 長らく寡占化されている市場、もしくはフラグメントな市場を調査
  • 行動を変えるテクノロジー(スマホの登場、将来はVRデバイスや小型投影デバイスなど)

方法

大量の情報を頭に詰め込む(情報ソースは人づて、本、映画、流行っているもの(なぜ流行しているか?まで考えて)、Webなど、ありとあらゆる人、事、物すべて)
人の本質的な欲求を知るために、歴史的に続いてきた事象を調べてみること
現状の問題や課題など調査、お客さんが困っていることなどヒアリングすることからはじめる。
その後、
→アイディアを寝かす、睡眠後 →ひらめく
→運動する、歩く、走るなど →ひらめく
→人に話す →ひらめく
→Action →Generate

ひらめいた後

論理検証。ロジックを詰める。
後付でよいので、なぜそれがおもしろいのか?を論理付けする。
似たようなサービスがすでにあっても、表現、手法、媒体を変えてアウトプットする。

なぜそれが必要なのか

  • なぜそれを作ったのか、他の人はなぜそれが必要なのか
  • この問いになんとなくおもしろいでは、ダメで、明確に答えられるように
  • コンセプト(一言で)、デザイン(統一感、導線)、哲学(何を実現するか、何を根本的に解決したいか)、名前(シンプルでわかりやすい、shareされやすい)

最後に実行

アイディアに価値はない、実行がすべて。
  • おもしろい一発屋サービスを出すには、アイディアの数をだしまくる。批判はなし
  • 長く愛されるものを生み出すなら、楽しさだけを追い求めると一発屋になっちゃう。ゆくゆく社会インフラになるサービスは奇をてらった発想じゃ生まれない。 なので人間の普遍的な欲求とはなにかを考えるために、歴史的に続いてきた事象を調べてみる。
  • 想像のつかないものを考えるのは楽しいが、誰かにとって必要とされるものを作るのも大切なこと。そこから何か生まれるものもある。
  • 不確実性の高いアイディアは賛同が得られにくい(合意コストが高い)ので、
    多数決とかで決めない。そういうのは勝手に個人でやる。
  • 多数決でやるなら、社会通念のバイアスとその破壊方法の合意にHowの部分で多数の力を借りる。

参考

2015/10/06

PHPでのAPIドキュメント作成ツール(RESTful APIとソースコードドキュメント生成)

restfulなAPIのドキュメントを残す必要があったので、記載しておきます。

npmのapidoc http://apidocjs.com/

コメントにささっと書いてすぐ確認、バージョンの比較まで可能
インストール
npm install apidoc -g
ドキュメント生成
apidoc -i path/to/dir -f ".*\\.php$" -o path/to/output/dir -t template/path/
以下のような記述で生成可能
/**
 * @api {post} /user/:id ユーザー取得
 * @apiVersion 0.1.0
 * @apiName ユーザー取得
 * @apiGroup User
 *
 * @apiParam {Number} id ユーザーのユニークID.
 *
 * @apiSuccess {String} firstname 名前.
 * @apiSuccess {String} lastname  苗字.
 *
 * @apiSuccessExample Success-Response:
 *     HTTP/1.1 200 OK
 *     {
 *       "firstname": "John",
 *       "lastname": "Doe"
 *     }
 *
 * @apiError UserNotFound ユーザーが見つからないとき.
 *
 * @apiErrorExample Error-Response:
 *     HTTP/1.1 404 Not Found
 *     {
 *       "error": "UserNotFound"
 *     }
 */
function getUser(id) {
 // dummy
 return "ユーザー情報";
}

apigen http://www.apigen.org/

ソースコードドキュメントであればこちらを採用
見やすくシンプル Bootstrapのテーマも使用可能
wget http://apigen.org/apigen.phar
chmod +x apigen.phar
mv apigen.phar /usr/local/bin/apigen
apigen --version

# get help for generate command
apigen generate --help
fuelPHPの場合
bin/apidoc.sh
#生成
apidoc -i fuel/app -f ".*\\.php$" -o public/apidoc/

その他

Apiary
ドキュメントの生成と同時にAPIのモックサーバを用意してくれるので、
さくっとテストしたい場合は便利。

参考