なぜプログラミングを学ぶ必要があるのか?

プログラミングは技術者だけのものではありません。音楽家にならなくても演奏が出来たら人生が楽しくなるように、プロにならなくてもスポーツを楽しんで仲間と充実した時間を過ごせるように、プログラミングを通して他の活動では気づくことのできない人間の思考の面白さや作る楽しさを体感することができます。
例えば抽象化(Abstraction)。プログラムの実体とはいくつもの命令を組み合わせてコンピュータに実行させたい複雑な手続きを作っていくものです。命令のかたまりが大きく、複雑になった時にこのかたまりに名前をつけることでいつでもその名前だけで簡単に呼び出したり、より複雑な命令を作るための部品として使うことができます。プログラミングではこの抽象化を何段階でもほぼ無限に続けていくことができるため一人の人間の頭脳から驚くほど巨大で複雑なソフトウェアを生み出すことが可能となります。
抽象化は思考のテクニックとも呼べるスキルです。どのような分野でも複雑な問題を解決していく時、問題となる対象を分割単純化する一方で解決の手段については単純な要素を組み合わせて最終的には複雑な問題を解決する方法を作り上げます。抽象化のテクニックはこのプロセスに応用することができます。プログラミングをやってみることで他にもこのような思考のテクニックを身につけることができます。すべての人が学ぶ価値があると思います。