photo by www.etsy.com
みなさん知っていますでしょうか!?
「UNIX OS」には、開発に携わったエンジニアたちが後世に残した数多くの「設計哲学」があるんです!
この設計哲学はどれも含蓄に富んでいて、なんだか「ソフトウェア開発」という枠を超えて、私たちに大切な何かを教えてくれている気がします・・。
この崇高な教えは、ひょっとして人間の普遍的な問題、例えば「恋愛」についても当てはまるんじゃないでしょうか・・?
私にはそんな気がしてなりません・・。
ということで、今回は「UNIXの設計哲学」から無理やり恋愛の教訓について学んでみました!
目次
- 1 Small is beautiful.
- 2 Make each program do one thing well.
- 3 Build a prototype as soon as possible.
- 4 Choose portability over efficiency.
- 5 Store numerical data in flat ASCII files.
- 6 Use software leverage to your advantage.
- 7 Use shell scripts to increase leverage and portability.
- 8 Avoid captive user interfaces.
- 9 Make every program a filter.
Small is beautiful.
意味:
・「小さなプログラムは美しい」
プログラムはできるだけ小規模なものにとどめることが好ましいです。大きなプログラムを作ると、開発者の理解を超えて挙動が複雑になり、膨大な管理・運営のコストがかかってしまうことが、よくあるからです。
これを恋愛に当てはめると、どういうことになるでしょうか・・?
・「小さな恋は美しい!」
恋愛を楽しむためのコツは、二人の「小さな関係」に意識を向けることです。ドラマや漫画の世界みたいな波乱にみちた「大恋愛」を期待していると、往々にして期待外れでガッカリしてしまうことが多いです。日常の中で起きる二人のささやかな触れ合いに喜びを感じる恋愛こそが、スマートで長続きする恋愛なんです・・。
Make each program do one thing well.
意味:
・「プログラムには一つのことをうまくやらせる」
プログラムには「たった一つの仕事」を求めることが望ましいです。あまりに機能を盛りだくさんにしてしまうと、無駄が多くなり、複雑になり、融通が利かなくなります。
これを恋愛に当てはめると、どういうことになるでしょうか・・?
・「恋人は一つ好きなところがあればいい!」
恋人には一つ好きなところがあるくらいがちょうど良いです。あまりに恋人に多くの条件を求めすぎてしまうと、いつか相手に幻滅してがっかりしてしまうことになります。恋人のたった一つの良いところをしっかり見つめて、その姿を愛してあげてください。
Build a prototype as soon as possible.
意味:
・「できるだけ早く試作を作成する」
プログラムを開発するときは、早いタイミングで試作品を作り、動作確認をすることが重要です。開発が進み、本番直前の段階で決定的な不具合が見つかると、修正するのに大変な苦労がかかってしまうからです。
これを恋愛に当てはめると、どういうことになるでしょうか・・?
・「できるだけ早く二人の関係を試してみる!」
相手と交際をするときは、まずはお友達からはじめて、二人の相性が合うかどうかをしっかりと確かめてみましょう。気軽に恋愛関係を結んでしまい「やっぱり私たちは合わないね・・」みたいに破局に至ってしまうと、二人ともとっても傷つく恋のやけどをしてしまうことになりかねないからです。
Choose portability over efficiency.
意味:
・「効率より移植性を選ぶ」
特定の環境でのみ効率的に動作するプログラムを作ろうとすることは、あまりよい考えではありません。他の環境に移植した場合でも、しっかり動作して効率を発揮できるように、広い視点を持って設計をするべきです。
これを恋愛に当てはめると、どういうことになるでしょうか・・?
・「その場限りの関係よりもその後の関係を選ぶ!」
ちょっぴり落ち込んでいたり、寂しい気分になっているときに誘惑された相手と、その場限りの関係を結ぶべきではありません。そんな刹那的な関係ではなくて、健やかなるときも、病めるときも、富めるときも、貧しきときも、どんなときでもお互いを愛し敬える関係こそが、本当の関係だからです。
Store numerical data in flat ASCII files.
意味:
・「数値データはASCIIフラットファイルに保存する」
データは、テキスト形式で格納することが好ましいです。テキスト形式はどんなシステムでも普遍的に扱うことができる、汎用性が高いデータ・フォーマットだからです。
これを恋愛に当てはめると、どういうことになるでしょうか・・?
・「好意は言葉で伝える」
相手に好意を伝えるときは「好きだよ」と言葉に出す形式で伝えることが好ましいです。メールで好意を伝えたり、身振りや仕草でそれとなく好意を伝える形式よりも、直接に相手の口から聞く愛の言葉こそが、なによりも嬉しいからです。
Use software leverage to your advantage.
意味:
・「ソフトウェアを挺子(てこ)として使う」
ソフトウェアを徹底的に再利用しましょう。過去に開発されたコードを現在のプロジェクトで再利用し、現在開発しているコードは将来のプロジェクトで再利用できるようにすること。そうすれば梃子(てこ)の原理のように、チームの開発の力が増々と倍増します。
これを恋愛に当てはめると、どういうことになるでしょうか・・?
・「恋愛を梃子(てこ)として使う!」
自分が成長できるような、良い恋愛をすることを心がけましょう。自分が成長することで、良い恋愛ができるようになり、良い恋愛をすることで、もっと素敵な自分に成長できる。恋愛を上手に利用することで、梃子(てこ)の原理のように、ますます自分を磨くことができるのです。
Use shell scripts to increase leverage and portability.
意味:
・「シェルスクリプトを使うことで挺子の効果と移植性を高める」
シェルスクリプトを駆使することで、プログラムの梃子(てこ)の力が最大限に発揮できます。シェルスクリプトはとても移植性が高くて、汎用性がある機能です。過去に開発された小さなプログラムたちを、シェルスクリプトによって連結し、様々な処理をさせることが、仕事を成し遂げるために最も効率的な方法です。
これを恋愛に当てはめると、どういうことになるでしょうか・・?
・「恋愛テクニックを使うことで絆を深める!」
二人の交際が長く続くと、どうしても中だるみの時期が訪れることがあります。そういうときは、二人の関係にちょっぴり新鮮さを吹き込む、恋愛テクニックを参照すると良いかもしれません。恋愛テクニックは、過去の恋愛の達人たちが残してくれた小さな知恵の結晶です。山あり谷ありの二人の関係を、恋愛テクニックを使って乗り越えていくことが、お互いの絆をより深めていくための上手な方法です。
Avoid captive user interfaces.
意味:
・「過度の対話的インタフェースを避ける」
過剰に対話形式のインターフェースを実装することは、あまり好ましくありません。対話形式のインターフェースには、プログラム同士のシェルスクリプトによる連結ができなくて、梃子(てこ)の原理の効用が失われてしまう欠点があります。
これを恋愛に当てはめると、どういうことになるでしょうか・・?
・「過度の対話的コミュニケーションを避ける」
毎晩のように相手と電話をしたり、一日中おしゃべりをしたり、過剰に相手と会話をしたがることは、あまり好ましくありません。二人きりの楽しい会話も大事ですが、ときにはお互い距離をとって自分の時間を過ごすことも、恋愛関係を維持するためには大切なのです。
Make every program a filter.
意味:
・「プログラムはフィルタとして振る舞うようにせよ」
プログラムはデータを加工する「フィルタ」として設計することが大事です。データを生み出すのはあくまで人間で、プログラムはただそれを加工・収集する道具にすぎません。このプログラムの本質的な役割をとらえ損なうと、非効率で間違いが起きやすいシステムを作り上げてしまうことになります。
これを恋愛に当てはめると、どういうことになるでしょうか・・?
・「恋愛はフィルタとして振る舞うようにせよ!」
恋愛の役割は、二人の関係をよりよくするための「フィルタ」です。友達に自慢するために恋愛したり、恋に恋すること自体を目的にするような、間違った恋愛観にとらわれてしまうと、本当の二人の関係を築くことはできません。恋愛の主役はあくまで二人同士です。恋愛関係を、相手の良いところをたくさん見つけて、自分の良いところをたくさん見つけてもらう、フィルタとして利用しましょう。そうすれば、二人はもっと深く愛し合う関係になれるはずですから・・。