「料理の段取り」がプログラミングに役立つ理由 「怠け者の欲求」がアルゴリズムを発展させた
もともとプログラミングとは、本来は人間がやるべき仕事を、なんとかして楽にできないか、という人間本性の怠け心が出発点である、と超・面倒くさがり屋の私は勝手に思っています。
人間は皆、実は仕事が嫌いで、やらなくて済むならもう本当にやりたくない。スキあらば怠けたい、ラクして暮らしたいという動物なのだ、という説を私は信じています(休日に書いているこの原稿も、いっそAIが書いてくれたら、自分はネットフリックス三昧できるのに……)。
・どうせやるなら短い時間で終わらせたい!
・次の仕事にもこのやり方を適用できるようにしたい!
こんな怠け者たちの「ラクしたい!」という強い欲求が、プログラミングを発展させたというのは、おそらく嘘ではないだろうと思います。
コストコに買い物に行く
このような気質や動機は、皆さんのようなビジネスパーソンも主婦の方々も持っていらっしゃるんですよね。ちょっと小話をしましょう。
あなたは週末に家にゲストを招いて、ちょっとしたホームパーティーを開いて、ローストビーフを振る舞うことになりました。その準備のため奥さんとともに、ちょっと遠出して巨大スーパーのコストコまで買い物に出かける予定です。
あなたは、たまに奥さんに連れられてこの巨大スーパーに行くのですが、毎回広いフロアをあっちへ行ったり、こっちへ行ったりして、調味料やパンなどを探すのにいつも苦労しています。それも、大きくて重いカートを器用に押しながらです。ただでさえ疲れている週末に足を棒にして買い物というか、食材探しに付き合わされて、辟易していました。
そこで今回、一計を案じ、奥さんにこのように高らかに宣言します。
「今日の買い物はオレが仕切るよ! 今までの半分以下の時間で済ませよう。このリストを埋めてくれさえすればいいから」
奥さんに以下のリストを渡して、埋めるように言いました。
奥さんが埋めたこのリストを手に、あなたは、コストコに到着。まず入口でフロアマップを受け取り、どのように売り場を回ったら最短距離で済むか(できるだけ一筆書きのように、同じ通路を2回通らないように)事前にシミュレーションしたうえで、カートを手にして買い物を始めたのです。
無料会員登録はこちら
ログインはこちら