表現する人へ〜文系こそ今こそ!プログラミングのすすめ
実はコンピュータのプログラミングというのは理系より文系(※)の人の方が得意じゃないかというお話です。
この記事を書く前に「文系こそプログラミング」というキーワードをネットで調べたのですが、プログラミングを学ぶメリットや就職に関する内容が多くて、私が伝えたい内容ではなかったので note しました。 おすすめです。
※そもそも、理系・文系なんて区別は…という話でもありますが、私の中で
文系はアーティフィシャルで演繹的・創造者、つまり何かを人工的につくりだし表現する人といったイメージで、理系はネイチャーで帰納的・探検家、つまり自然を受け入れ科学し運用する人というイメージです。なので、他の記事にあるプログラミングを学ぶメリットや就職というのはどちらかというと理系的発想なので、文系には響かないんじゃないかなと思うところもありました。
プログラミングとは?
現代のプログラミングはこう言ってよいでしょう。
人が
1. 頭の中にイメージした何かを
2. コンピュータが解る言葉にし(プログラム)
コンピュータは
3. その言葉を解釈し
4. 人がイメージした何かを再現する
ここでいう、イメージされる何かとは、次のようなものになります。
・最初期の頃のプログラミングでは方程式などの計算結果
・最近のプログラミング入門講座などではロボットの動き
・もっとひろく捉えるならば何らかの目的をもったアプリ
では、なぜプログラミングは文系に向いているか?
プログラミングに長年携わってきて、前述のプログラミングの本質を掴むと、私はこれが何かに似ていると感じました。
文学です。
作家が
1. 頭の中にイメージした世界を
2. 言葉に落とし込み
読者は
3. その言葉を解釈し
4. 作家がイメージした何かを頭の中に再現する
この流れ、そっくりでしょう。
川端康成がまずイメージします。
長いトンネルを抜けたあとの雪景色を。
それを言葉にして原稿用紙に記したのです。
次に、私たちがその言葉を読むわけです。
そして頭の中に、長いトンネルを抜けた後の雪景色を思い浮かべるのです。
一方プログラミングの場合、(ロボットのプログラミングの例)
あなたがまずロボットの動きをイメージします。
右へ3回転、左へ1回転して3歩直進
それをプログラミング言語にしてプログラミングします。
次に、コンピュータがそのプログラムを読むわけです。
そしてそれをモータへの電気信号にして
右へ3回転、左へ1回転して3歩直進
と、イメージした通りにロボットを動かすのです。
まとめ
もしあなたが何かを表現したい、表現せざるをえない表現者ならば、ノートやキャンパス、楽譜に向かうことと同じくらい、プログラミングに向かう可能性も考えてみてはいかがでしょうか?
あなたがイメージしたことの中で、これまでのどんな手段でも表現できなかった世界を、コンピュータを通じてなら人々へ伝えることがきっとできるようになります。
令和2年7月21日
ただ、ちょっと目が疲れるので、目が疲れないプログラミングを考えたい人