828 words
4 minutes
プログラミング、すなわち会話。

プログラミング、すなわち会話。#

エラーは、プログラムが「ちゃんと伝わってないこと」を教えてくれている。

皆さんどうもこんにちは、YAMAです。
今日はちょっと抽象的な話になります。
プログラミングって、会話なんじゃないのか?」という気づきを残していきたいと思います。


コードは無機質じゃない。#

プロフラムって、黒画面に英単語が並んでいて、一見すると冷たくて、論理的で、まるで無機質なものに見えると思うんですよ。

でも、よく考えてみてください。
そのコード、誰かが書いたんでしょう?

そう。人間が書いたものなんです。
そしてそのコードは、未来のだれか (もしくは未来の自分)に向けて書かれたもの。

だからこそ、コードには人間味が宿るんです。

  • コメントに込められた願いや愚痴
  • ネーミングににじむ性格や美学
  • 処理の順番や構成に現れるその人の考えかた

どれもその人なりの「声」であり、「言葉」です。


エラーは言葉のキャッチボール#

うまく動かないとき、私たちはエラーに出会います。
怒られているように感じるかもしれませんが、実はこれ会話の始まりなんですよね。

TypeError: Cannot read property 'length' or undefined  

これは「それ、まだundefinedのままだよ。」とプログラムが優しく教えてくれているのです。

NoSuchMethodException   

これは「その方法はまだ聞いてないよ」と言ってるだけ。
つまるところエラーというのは「ねぇ、それじゃ伝わんないよ~(´;ω;`)」っていう、プログラムからのレスポンスなんです。

プログラムとうまく話せるようになるということ#

プログラムを書くっていうのは、
コンピュータと会話しようとすることなんだと思います。

そして「よりうまく話せる」ようになるってことは、

  • より分かりやすく
  • より論理的に
  • より共通言語で

コミュニケーションがとれるようになること。
そのための文法が「プログラミング言語」なんですよね。

プログラミングは人間らしいこと#

論理だけでなく、
直感や感情や創意工夫が入り組んでいる。

  • もっと綺麗にしたい
  • こう書いたほうが気持ちいい
  • 誰かが見てもわかりやすいように

そんな思いがコードには宿っています。

だから、プログラミングは単なる技術じゃなくて、
とても人間的な会話の表現でもあるのです。

最後に:プログラムはしゃべってくれる。#

  • バグが出たとき
  • エラーが出たとき
  • コードが思ったととうりに動かない

それはプログラムが「伝わってないよ」とちゃんと返事をくれている瞬間です。

私たちがするべきなのは、
ただ怒られるんじゃなくて、聞いてあげること。
プログラミングは会話です。
静かだけど、確かに続いていく、あなたのコードの対話。