皆さん、こんにちは。
私は、インターネットがまだつなぎ放題ではない従量課金の時代から、趣味で自宅にサーバーを立て、アングラなチャットサーバーや、ウェブサイト、BBSなどを運営していました。
30代以下の方は、インターネットが「つなぎ放題ではない」と言ってもピンとこない方が多いかもしれませんが、一般人が利用できるようになった初期のインターネットや、それ以前の「パソコン通信」と言われていた時代は、データ通信が固定料金ということは無く、接続した分だけお金がかかり、人によっては月に何十万も請求された、ということがありました(かく言う私も、月に数万払っていたことがあります)
携帯電話が普及し始めた頃は「パケ死(メールや写真を送りすぎて携帯代がバカ高くなること)」なる言葉が流行りましたが、それと同じような状況です。
この「サーバー」というのは、皆さんが普段見るウェブサイトなどのデータを保存し、それを配信する、ネット上にあるコンピューターのことです。
インターネット上のサーバーは、Linux、BSD、Windows Serverと言ったOS(オペレテーティングシステム)で動作しており、その中で、様々な機能のアプリケーションが稼働しています。
皆さんがお使いの、AndroidやiOSといったOSも、サーバーで使用されているLinuxやBSDから派生したものですので、実は、皆さんのスマートフォンの中でも、サーバーと同じ機能を持ったプログラムが動いているのです。
その「サーバー」ですが、一から構築する場合、OSをインストールし、ネットワークの設定を行い、アカウントやセキュリティー、ウェブサイトを公開する設定、データベースの構築など、多くは、コマンドラインと言われる、文字入力の操作で設定を行います。
私は、この一連の作業が好きで、一通り設定が終わると、非常に充足感を得ることができます。
なぜ、この「サーバー構築」作業が好きなのか、その理由に、今更ながら気づきました。
それは、「サーバー構築」が、非常に「抽象度の高い」作業だからです。
「抽象度」はこれまでの記事でも説明してきましたが、簡単に言えば「情報を取りまとめる概念の度合い」のように説明できます。
例えば、人間や犬は「哺乳類」という概念の中にあり、哺乳類や爬虫類は「動物」という概念でまとめられます。このように、具体的な情報を包摂する概念が高次になるほど「抽象度が高い」と言います。
更に、動物やスマートフォンなどの物理的存在は、視覚や触覚を通じて情報が脳に伝わり初めて認識されますので、認知科学の分野では、物理空間と情報空間を連続したものとして捉え、情報空間がより「抽象度の高い」と考えます。
サーバー構築は、「コマンド」と呼ばれる文字を入力し、文字によって成り立っているデータを整理する作業ですので、その全貌や個々の状態を頭の中で描く必要があります。
つまり、「抽象度の高い」情報空間をイメージしながらの作業となりますので、より頭脳を使い、頭が活性化され、充足感が得られるのです。
これは、プログラミングも同じで、何万、何十万行というプログラムを頭の中で整理し、記述された内容を、そこかしこで引用しながらプログラムを書く必要があるため、非常に「抽象度の高い」作業が必要とされます。
抽象度の高い作業をすることのメリットは、私のように充足感が得られること以外に、より広範な視点が持てるようになり、様々なことに対してアイデアが湧きやすくなる点です。
だからと言って、皆さんにサーバー構築やプログラミングをオススメするわけではありませんが、機会があればチャレンジしてみると良いかと思います。
しかし、最も手軽に抽象度を上げる方法は、読書により、情報空間の中で脳の訓練をすることです。
読書により知識が蓄積されると、それらが脳の中で洗練され、情報空間におけるイメージ能力が向上します。
既に知っている内容の文章を読んだ時に、流し読みしただけで内容がイメージできるように、文字や言語といった情報空間のイメージ力が高まると、その下位にある物理空間での問題解決能力が一段と高くなります。
つまり、ビジネスなどにおける困難な課題やトラブルも、抽象度の高い思考を持ってすれば、迷わず迅速に対処できるようになるのです。
皆さんも、「問題があると右往左往してしまう」とか「トラブルになると他のことが考えられない」という方は、普段から興味の対象外のことなどにも関心を寄せ、読書などを通じて、より抽象度の高い思考の訓練を意識してみてください!
この「思考の抽象度を高めよう!」は、また、本ブログやメルマガで掘り下げていきたいと思います。