ハローワールドとの距離感
プログラミングの入門について。
たとえば、僕なんかはペーペーのサンデー・プログラマーなわけで、いまだに短いコードを書くときでもGoogle先生にせっせとお伺いを立てています。ダサいと言えば、ダサい。でもまあ、ある程度はやりたいことができる状態です。
そもそも、自分用のツールなので多少のバグがあっても目をつむればいいですし、「すべての使用ケースに対応してコードを書く」なんてこともしなくて大丈夫です。だから、書いているコード(というか、そこで使われているアルゴリズム)はごくごく単純です。
そうなのです。「プログラミング」という言葉ではわかりにくいかもしれませんが、やっていることは、「自分がやりたい処理を分割的に考えること」と「それをコードで書くこと(表現すること)」の二つなのです。あとは、そういうコードを検索するときにフィットする用語を知っていればなんとかなります。なんとかなっちゃうのです。
なぜか。
それは、自分の書くコードなり作るツールなりが「採点」されないからです。
たまに自分で書いたコードでも「これ、ダサいな〜」みたいな印象を受けることがありますが、別にそれだって望むように機能していれば何も問題ありません。forによる繰り返し処理がわからなくても、必要な回数そのコードを書いてしまえばいいわけです。そういう「場当たり的」な解決が、自分用のツールならば許容されます。
ある種の、砂場遊びの感覚がそこにはあるのだと言ってもいいでしょう。その砂場は、遊ぶ意欲さえあれば、誰だって受け入れてくれる懐の広さがあります。
とは言えです。
こういうことを力説している私でも、たとえば、Gitを学ぶまでは時間がかかりました。どういうものなのかは知っていましたし、導入の手順をググったこともありますが、「なんか、面倒そう」というような気持ちでずっと回避していました。
が、実際学んで使ってみると、おっそろしく簡単です。情報(ファイル)の流れを理解して、3つくらいのコマンドを覚えれば、ビビるほど簡単に使えます。学ぶ前のあのおびえの気持ちはなんだったのか、という気分になります。
でも、それは仕方がないことなのでしょう。
プログラミングなどの新しい技術はまさしく「ハローワールド」な感覚をもたらします。今までの自分の世界にはなかった扉が開かれる感覚があるのです。それは、ネオリベラル的には称賛される感覚かもしれませんが、人間は新しいものに憧れる気持ちを持ちつつも、新奇なものを恐れる気持ちを持ちます。心理とはアンビバレントなものなのです。
むしろ、それが新しい世界をもたらす可能性を持っていればいるほど、拒否する気持ちも同時に高まるのかもしれません。なぜなら、新しい世界とは、それについて知らない世界のことだからです。
のらてつさんが「得体のしれなさ」という表現を使っておられますが、まさにこの言葉の語感が示す心理があるのでしょう。この言葉は、決してポジティブな文脈では使われません。つまり、得体のしれないもの=忌避するもの、なわけです。
だとすれば、得体を知ればその忌避は消えるわけですが、まさにそれは「実際にやってみる」ことでしか得られません。この乖離が、問題なわけです。
ただ、個人的にはこういうのは「一気に」とか「一瞬で」解決しようと思ってはいけないだろうと感じています。自分のGit経験でもそうですが、「便利そうだ」という声に何度も触れ、自分でググったり、あるいは実際に途中まで行って止まってしまうような経験を何度か繰り返しているうちに、いつまにかその線を越えてしまっている、という状況がよいのではないでしょうか。少なくとも、そういう状態が一番健全な気がします。
だから、私は(あるいは私たちは)、そういう人がやりたくなるように楽しさや便利さについて発信し続けると共に、実際にやりはじめた段になって役立つ情報も合わせて公開しておきたいと思っています。
[参加のお誘い by 倉下忠憲]
トンネルChannelは「共同ニュースレター」です。自分の考えを短くても文章で表そうと思っている人、文章を書いて自分の考えを表明してみたいと思っている人すべてに開かれています。
もし一連の投稿を読んで、自分でも投稿してみたい、誰かの投稿について自分の意見を書いてみたいという方がいらっしゃったら、このメールにご返信ください。
共同投稿者としてご招待させていただきます。


