どちらもFAQ中のFAQなのだけど、いい機会なのでまとめて。

いつまでに学ぶ?

30位からだと流石に遅いですか?RT @dankogai: 何歳でも間に合います。むしろ「問題」を知っている分、後の方が有利な面すらある< @ryopon_jp: @dankogai 大学入って18からでもプログラミング間に合いますか?大学の勉強は卒なくこなし、英語とプログラミンless than a minute ago via Echofon

私の答えは、こう。

ゲーテは70代で恋をしたというのにおまえらときたらたかがプログラミングで自分の年齢を気にするのか?> @yyyutaka: 30位からだと流石に遅いですか?less than a minute ago via HootSuite

いつでも、遅すぎるということはない。

ただし勘違いして欲しくないのは、「プログラミングを学ぶ」ということは「プログラマーになれ」ということではないということ。

プログラミング「を」仕事にしようとする人は筋が悪い。求められているのはプログラミング「で」仕事をする人< @tomokun1977 @dankogai 不況業種で働いてる33才ですが、今からプログラミング始めて仕事に出来ますか?less than a minute ago via HootSuite

実際のところ、プログラムを仕事にするというのは数学やスポーツや芸術を仕事にするのに似て、ものごころついた時からはじめて20代には業績を上げていないときつくはある。「20代で人生の年収は9割決まる」ではないが、20代でプロプログラマーになれるかどうかが9割決まるのは確かだと思う。

しかしそれはあくまでも「プログラムそのものを仕事にする場合」であって、「仕事をコンピューターにやらせる」のはプロプログラマーの専売特許ではない。私自身、プログラミングは数ある仕事のうちの一つという意味において「プログラムを仕事」とはとても言えない。

なぜ学ぶ?

仕事を片付ける = gettting the job done する方法は、以下の三つしかない。

  1. 自分でやる
  2. 人にやっていただく
  3. コンピューターにやらせる

プログラムを学ぶというのは、100年前にはありえなかった3番目の方法を使えるようになるということだ。しかしこの3番目の方法は、1や2と比べてかなり異質である。どう異質なのかは「コンピュータが仕事を奪う」を読んでいただくとして、今や3番目の方法は「知っていれば昇給」どころか「知らないと失職」というところまで来てる。そして「2と3を仲立ち」するという職は、「直接3を選ぶ」人にどんどん奪われている。前世紀まではタイピストという職業だってあったのに。

呪文を唱えたら動く。リアル魔法じゃん< @glitter_14 弾さんにとってプログラミングの魅力って何なんですか?less than a minute ago via HootSuite

そしてこの魔法はいつでも学ぶことができるし、唱えるのに何の免許も資格も必要としない。ましてやキュウベエと契約する必要は全くないし、唱え損なって落命することもほとんどない(ゼロではないけど)。ノーリスクハイリターンとはこのことではないか。それを通り越して下手すると学ばないことがハイリスクマイナスリターンというのは前述のとおり。

まあ、このあたりは「小飼弾の「仕組み」進化論」に書いたのでまだ納得いかない方はそちらを。

Dan the Programmer