« 泥沼から抜け出すために | トップページ | 私の夏バテ解消法 »

プログラミングにおけるレバレッジ

最近「レバレッジ」という言葉が流行っているようである。レバレッジというのは語義を言えばいわゆる「梃子(てこ)」のことである。古代ギリシャのアルキメデスは、

「私に支点を与えよ。されば地球を動かしてみせよう」

と言ったとか言わないとか。

要は、小さな労力で大きな作用を生み出すと言うことである。

ここ数年の超低金利時代では、特に経済活動における「レバレッジ効果」を指して使うことが多いようである。ウィキペディアから抜粋だが、

総資産=自己資本+他人資本

上記の式は恒等式であるが、一般に売り上げや利益は総資産に比例する。

例えば、100円の自己資本だけを持っている場合、総資産は100円である。

総資産10円が10円の売り上げと1円の利益をもたらすと仮定すると、総資産100円からは100円の売り上げと10円の利益がもたらされる。この場合100円の自己資本に対して利益率は10%となる。

ここで、400円の他人資本(借り入れ)を導入し、総資産を500円にしたとする。その場合、総資産500円からは500円の売り上げと、50円の利益(営業利益)がもたらされる。

400円の借り入れに対する利払いが、5%の20円だとすると、利益(経常利益)は30円となる。これで、自己資本に対する利益率は30%となる。

このようにして、他人資本を導入することで同額の自己資本でも、より高い利益率が上げられることをレバレッジ効果と呼ぶのである。同様に、他人資本を既に利用している企業も、その他人資本の利用割合を高め自己資本比率を低下させることで、レバレッジ効果を利用することができる。

ということである。

さて、プログラマにとってのレバレッジと何だろうと考えてみると、自己資本が「プログラミングにおける知識やテクニックや経験」だとすると、他人資本は「サンプルプログラムやライブラリ」などそのままあるいは少しの改変で使えるツール類のことを言うのであろう。有償のツール類だと、対費用効果が見込めるのなら購入等にかかる費用は十分取り戻せるし、無償のツールやライブラリなら効果は絶大である。何しろ楽ができるし、余った時間をほかに回すことができる。

ただ、「逆のレバレッジ効果」もあることを忘れてはいけない。また、ウィキペディアから抜粋だが、

一方で、レバレッジ効果は変動性を高めているため、自己資本に対する損失の割合も大きくなる。すなわち、総資本を利用した事業の利益率が他人資本の調達コストを下回るときは、むしろレバレッジ効果により、利益率の減少または損失の拡大を招来することとなる。

下手するとヤケドをすると言うことである。このあたりはよく考えて見極める必要がある。プログラムに関しても同じである。引用したライブラリにバグがあったりすると、とたんにデバッグが難しくなる。何せ自分で作ったわけではないから、対応が難しい。自分のコードが悪いのか他人のコードが悪いのかを見分けるのが難しい場合も多々ある。時間短縮のために導入したライブラリーが却って悪さをして余計に時間が掛かってしまった、というのはよくあることである。Windows OSやVisual Studioなど開発言語からしてどこにバグが潜んでいるのかわからない。自分の作ったソフトに比べれば相当なテストを行っているはずなのにである。

プログラミングにおいては、これからはテストやデバッグなどにもっとレバレッジを掛ける必要があると痛切しているところである。

|

« 泥沼から抜け出すために | トップページ | 私の夏バテ解消法 »

日記・コラム・つぶやき」カテゴリの記事