プログラミングをしてみたいそうですね。
私はいつも,コンピュータやネットワークの向こうにいる使い手を思って,プログラミングをしています。そのプログラムが,560万人のためのものであっても,ある会社のある部門の人のためのものであっても,自分一人のためのものであっても。使い手を思い,その期待に応えられるプログラムを書こうとします。
ここでは,プログラムはその使い手に宛てた「メッセージ」だということを伝えたいと思います。
たぶんあなたは,私と同じことをすでにしたことがあるでしょう。Excelで,式を書いたことがありますか? 合計値を出す,平均値を求める…この程度なら書いたことがあるのではないかと思います。これは立派なプログラムです。
あなたが,あなたというユーザーの期待に応えるために書いたメッセージではありませんか。
私が作ったプログラムの一つに,ニコニコ動画というWebサイトがあります(http://www.nicovideo.jp/)。2006年12月に公開したこのプログラムに込めたメッセージは,とても多くの使い手に届きました。今も届き続けています。
プログラムを使ってくれること,ときには意見してくれること---これらを通して,メッセージが届いたことがわかります。受け取った意見のうちの一部は,またメッセージとして返信します。この繰り返しは,とても楽しいものです。
プログラムが使われ続ける間,メッセージは届き続けます。
プログラムは「アイデア」をもとに,「知識」を利用して作ります。
世の中には,たくさんの「アイデア」があります。「このほうがいい」「こうなったらいいな」…小さくても大きくても,すべてアイデアです。
私にとっての勉強は,先人が書いたメッセージを通して,このアイデアを知ることです。プログラマの私にとって,最良の教材はプログラムです。そのプログラムの動き方,データとデータの組み合わせ方---メッセージに埋まったアイデアをよく見て,学んでいきます。
アイデアは,基本的には既存の語彙(ごい)を組み合わせていく作業から生まれます。ある要素と,ほかの要素を,自分の頭の中でつなぎ合わせるのです。この作業は,言葉でいえばダジャレを考えるときとよく似ています。
そこにひらめきがあると,突然魅力的なアイデアが“生まれた”ように感じます。
世の中には,たくさんの「知識」があります。特にプログラミングでは,プログラムを書く道具の知識が重要です。先のExcelも,たぶんこの特集でたくさん紹介されているプログラミング言語も,プログラムを書く道具です。
道具は,徹底的にいじってください。そうして得た知識は強力です。幸いソフトウエアは,試行錯誤しても,時間以外の資源はあまり費やしません。
道具の知識は,あればあるほど,その力を引き出せます。道具を目一杯活用できると,楽に,素早く,楽しく,アイデアを形にできます。
こうしてため込んだアイデアと知識を,いざというときに使います。チャンスが来たときに,形にする力として,一気に。
ニコニコ動画は,私にとってのそれでした。私の中にあるアイデアや知識だけでなく,様々な材料,状況,そして仲間が,あらゆる方向から1カ所に,あるタイミングで集まりました。たまたまその付近に私がいたから巻き込まれただけとも思います。でも,これはチャンスでした。つかむことができました。
プログラミングを始めて間もないころは,いろいろと難しいかもしれません。でも,自分が使って満足できるプログラムを作れば,絶対に大丈夫です。
このメッセージがあなたに届くことを願っています。
http://b.hatena.ne.jp/koizuka/