ひとつのことって何だ?

頭のよさがすべてではない。成功者がもっている特質「Grit」とは何か?

http://lifehacking.jp/2009/08/what-is-grit-and-why-you-need-it/

Grit をもっている人にありがちなもう一つの特徴は、「一つのことに集中する」という特質だということが記事では挙げられています。

たとえばピアノを学んでいる子供がいたとして、音楽的才能が同じくらいとした場合に、ピアノだけに集中し、ピアノの演奏に必要な経験と失敗の蓄積だけをためている子供と、チェロやサックスにも手を出している子供では、当然前者の子供の方が成長が速くなります。

ほんとにこんなこと書いてるの?って原文に飛んでみたらほんとに書いてた。この例は納得いかないなぁ、成長って、何を評価したんだろう?ピアノの演奏技術を機械的に評価?*1


いろんなことを学んで、(Steve Jobsの言うように)点と点を繋げることができる人は、他人が見れば全然関係ないことやってるように見えて、本人の頭の中では「ひとつだけのこと」をやってるのと同じなんじゃないか。
自分の経験上、本当にピアノがうまくなりたけりゃサックスもチェロも練習しろって言いたい。音楽的な表現力を磨くためのひとつの方法として。

*1:だとするなら当然の結果だろうけど

AJAXでファイルアップロードのプログレスバーってどうやって出す

ASP.NET向けのコンポーネントでこんなの見つけた。
http://darrenjohnstone.net/2008/07/15/aspnet-file-upload-module-version-2-beta-1/


なんで?なんでAJAXプログレスバー出せるの?ってすごい疑問だったのでコード読んでみた。たぶんこんな感じで実現してるんだと思う。

  1. ページには普通にinput type="file"タグが置かれている
  2. ファイル選択もinputタグの機能そのまま
  3. uploadボタンをクリックすると、非同期PostBackする
  4. アップロード先のサーバ側ではIHttpModuleを自前で実装して生のhttprequestをフックしていて、requestを読み込むごとにアップロードサイズを記録する
  5. クライアント側では非同期PostBack後、Webサービスを定期的に呼び出し、4.で保持されている送信サイズを教えてもらう
  6. 非同期PostBackのRequest送信が完了するまで5.の状態
  7. 非同期PostBackを受けたページは、Loadイベントとかが普通に順次呼ばれて、カスタムコントロールからアップロードしたファイルが取得できる


なるほど〜…こんなことやってたのか。