BasecampHEYがリリースされましたね。

見れば見るほどBasecamp社のWebアプリの作り方をまとめた本であるGetting Realの内容に従って作られてるアプリだなとGetting RealをバイブルにしてWebアプリ作成を仕事にしてきた我々としては嬉しくなってしまいます。(2007年の本なのに!)

ただ、業界内で「Getting Real良いですよね、私もすごく好きです。」という人は多いですが「え?あんたの作ってるアプリ全然Getting Real的じゃなくない?」ということがしばしばあります。

フィヨルドブートキャンプの最終課題の「自分で考えたWebサービスを作る」ではGetting Realを読んでからどういうサービスなのかを表現するエレベーターピッチを作ることになっています。

しかし「これってGetting Realに書いてあることと真逆じゃない?ホントに読んだ?」ということが頻繁にあります。

そこでわかりやすいようにWebアプリ作成に絞って(組織論などは除外)Getting Realの中から「Getting Real的なもの」と「Getting Real的でないもの」を僕の理解で抜き出してみました。

Getting Real的でないもの VS Getting Real的なもの

シンプルさ

  • 「競合より多い機能」VS「競合より少ない機能」
  • 「多くのコード」VS「より少ないコード」
  • 「様々なケースに対応できるように作る」VS「一般的なケースにのみ対応したものを作る」

オープンさ

  • 「失敗の許されない厳格な雰囲気」VS「失敗を認めやすいオープンな雰囲気」
  • 「クローズドなソフトウェア」VS「オープンなソフトウェア」

機能の選択

  • 「ユーザーの機能提案をなるべく採用する」VS「ユーザーの機能提案にまずNOという」
  • 「ユーザーに何が必要か尋ねる」VS「ユーザーに何が要らないか尋ねる」
  • 「ユーザーが柔軟に設定できるようにする」VS「サービス側で考えた一番良い設定を提供する」

段階的な開発

  • 「長いリリーススケジュール」VS「短いリリーススケジュール」
  • 「最初から大規模なシステムを作る」VS「システムを段階的に大きくしていく」
  • 「ユーザー拡大に備えてあらかじめ人員を揃える」VS「ユーザーが増えてから人員を増やす」
  • 「新たな機能を完璧にしてからリリースする」VS「新たな機能はベータ版として使ってもらって改良する」

ユーザーの声

  • 「自分以外が製品のターゲット・ユーザー」VS「自分自身が製品のターゲット・ユーザー」
  • 「ユーザーサポート専門のスタッフ」VS「開発者自身でやるユーザーサポート」

インターフェースデザイン

  • 「何でもできるインターフェース」VS「切り詰めたインターフェース」
  • 「システムを作ってからデザインを入れる」VS「インターフェースをデザインしてからシステムを入れる」
  • 「アウトラインができる前にディティールに固執する」VS「動くものを自分で使ってみてから必要な部分のディティールを調整する」
  • 「一貫性のあるデザイン」VS「一貫性よりもコンテクストに合わせたデザイン」
  • 「デザインにダミーテキストを使う」VS「デザインに本物の言葉を使う」
  • 「文言はインターフェースとは別」VS「文言はインターフェースの一部」
  • 「ユーザーが使う画面と管理画面を分ける」VS「ユーザーの画面に管理機能を組み込む」

その他

  • 「精巧な仕様書を書く」VS「仕様書を書かない」
  • 「初期費用・長期割引・解約料金を設定する」VS「初期費用・長期割引・解約費用を設定しない」
  • 「最初のアイデアを守り抜く」VS「最初のアイデアが悪ければ方向転換する」 

Getting Realの良さ

Getting Realが衝撃的だったのは多くの点でそれまで良いとされていたことと逆のことを言ったからです。毒にも薬にもならない耳触りの良いあるべき論ではなく「え、そんなこと言い切っちゃって良いの?」というような割り切りと実際にそれを実行してる点に当時の僕らはシビれたわけです。

と僕らが勝手に思ってるので話が食い違うことがあるんでしょうね…。

自分の会社で作ってるサービスや使ってるサービスに対して「ここがGetting Real的」「ここがGetting Real的じゃない」など考えてみるのも楽しいかもしれません。

プログラミングスクールで、企業の研修で、同じ趣旨のことを毎回言ってるのでここに書いておきます。

斜に構えてる場合じゃねえ

特に哲学もなく、

「Twitter使ったことないんですよね〜」

「Mac/iPhoneってスタバでドヤるために持つものでしょ?」

とか言ってませんか?

SNSにケチを付けて玄人ユーザー気取りの消費者の立場は今日までだ!

オマエはこれからそのSNSを作る側の人間になるんだよぉおお!!

MacでiPhoneアプリを作る側になるんだよ!

だったらすることはなんだ?

使いまくって研究してくしかねーだろー。

「この機能はどうやって実装されている?」

「このキャンペーンはどのユーザー向けにどんな目的で行われている?」

Twitter使ってないだあ?

知らないサービスがあったら片っ端から登録せんかい!

Macがイキってる?

WindowsとMacとAndroidとiPhone全部買わんかい!

ガシガシ使ってガンガン作らんかい!

宣伝

このエントリーはプログラミングスクールの戸塚ヨットスクールフィヨルドブートキャンプの提供でお送りしています。(自作自演)

ss

現場の即戦力になれるプログラミングスクール フィヨルドブートキャンプ

最近、表題のフレーズが頭を巡っております。

僕は最近どこにいってもそんな仕事ばかりしてる気がします。railsでできたシステムは沢山あり、技術的負債の返済は誰かがやらなければならないと思います。

しかし僕の本当の気持ちは、

「既に動いてるrailsアプリをnormalizeするより、汚くてもいいから新しい動くものを作ってケツは他人に拭かせたい。」

テキストにしてみたら思ったよりゲスなフレーズになりました・・・。

ここ数年、みなさんもそうだと思いますが、びっくりニュースとかおもしろコンテンツ、記念イベントなどをネット上に流れすぎているので日常的に流し見するというコンテンツフィルタリング機能が自分の脳に備わりました。

長い文章でもざっと要点だけみるみたいな。かるい新書といくつか読むときとか、基本便利な機能ですよね。

でも怖いのが、最近では油断すると仕事の重要なメール(長めのやつ)やPDFなんかにもフィルター機能が働いて流し読みしちゃうんです。

8割はうまく働く程度のフィルター(エンタメ向けフィルターなので)が仕事の文章に働くととんでもないミスをおかしそうになります。

例えば、文脈はだいたいわかってるから金額の数字をちゃんと見てないとか、

文章中の帳票名を"なんらかの帳票"としてしか見てなくてスルーしたりとか。

仕事をエンタメコンテンツと同じようにうっかりさっさと処理していくことを優先する脳になっちゃってる。

容量的にオーバーしてるのに「機械的にこなせば大丈夫」と自分で勘違いしてるから起こることなのかなと思ったので意図的にどうでもいいもの(はてブのおもしろカテゴリーとか)を削除していこうと思います。