お金の稼ぎ方とコンピュータの計算量の共通点について

Calendar Clock iconCalendar Clock icon

misc

目次

# 働き方とコンピュータの計算量

今世界一周旅行にあたって今の家を引き払うために家財道具などを売ったり捨てたりしているのだけど、その中でコンピュータの計算量とお金の稼ぎ方についてとても面白い共通点に気がついた。
捨てるのには費用がかかるが売るなら逆にちょっとした収入になるので、出来る限り売却した。
で結局売上だけで20万円になった。
仮に処分した時の費用を考えると25万円ぐらいのプラスだろう。
想像以上の大きい額だ。
労力に対してもまあまあ時間効率がいいと言える。

でも、それらの収入は1回きりだ。
来月はその収入は0。

お金の稼ぎ方を知らない人はこういう収入に多大な労力を使う。
それははっきり言って徒労だ。
なぜなら1回それで収入を得てしまえば次は無いからだ。
また別の手段を考える必要がある。
これではまったく収入は安定せず、いつか人生に疲れてしまう。

だからこそ人はサラリーマンになって月々の安定した収入を欲しがる。
サラリーマンであれば少なくとも毎月同じことをしていれば決まった額の収入が得られる。

ここまでで一旦立ち止まってタイトルにもあるようにコンピュータの計算量との共通点について考えてみる。
計算量とはコンピュータが行う仕事量のことだ。
同じことを達成する場合は仕事量が少ないアルゴリズムのほうが優れているとされる。
先の家財道具を売却したことは計算量に例えるとO(1)O(1)だ。
これは定数と言って、計算するデータの数がいくら増えても計算量は増えずに一定ということ。
アルゴリズムでいえば最も優れたアルゴリズムの部類だ。
お金の稼ぎ方でいえば、真逆でO(1)O(1)は最も劣った"アルゴリズム"だ。
だって労力が増えても収入は1度きりで途絶えるんだから!

一方でサラリーマンの月収の方は、2パターンに分かれる。
1つは営業職や体を使う仕事など経験を積んでいってもあまり楽にならない仕事。
もう1つはホワイトな大企業のサラリーマンのように勤続年数に比例して楽になっていく仕事。
前者は計算量でいうとO(N)O(N)だ。
後者はO(N2)O(N^2)
NNというのはデータ量のことだ。
前者はデータ量が増えるのに正比例して計算量が増えることを意味する。
後者はデータ量が増えていってもその労力の増え方は半分ずつになっていく。

カツカツの自転車営業をしている自営業者もO(N)O(N)だ。
医者や弁護士、スポーツ選手などの専門家は基本的にO(N2)O(N^2)だ。
どちらも大変さの差こそ大きいが、自分が仕事を辞めたら一切の収入が途絶えることには変わりない。

ここまで非効率な順に、O(1)<O(N)<O(N2)O(1) < O(N) < O(N^2)の"アルゴリズム"を紹介した。
労働時間を例えば1000とすると、収入はそれぞれ1<1000<10000001 < 1000 < 1000000となる。

コンピュータの世界ではもっと劣ったアルゴリズムがいくつもある。
例えば次は、O(2N)O(2^N)
これをお金の稼ぎ方に当てはめて労働時間を1000とすると収入はなんと以下のようになる。

10715086071862673209484250490600018105614048117055336074437503883703510511249361224931983788156958581275946729175531468251871452856923140435984577574698574803934567774824230985421074605062371141877954182153046474983581941267398767559165543946077062914571196477686542167660429831652624386837205668069376

文字通り桁違いだ。
コンピュータも使い方1つでこんなにも成果に差がある。
人間の仕事もコンピュータと実は全く一緒だ。
ではどんな仕事が当てはまるだろうか?
それは以下2つの条件を満たす仕事だ。

    1. 一度した仕事が未来に渡って収入を生み出し続ける
    1. 次にする仕事が過去の仕事の収入に正のフィードバックを与える

具体的に言えば、印税、株の配当、ブログ広告、Youtube動画広告など。

# O(2N)O(2^N)収入の具体例

# 株の配当

例えば株の配当を考えてみよう。

100万円の投資から始めて年利10%で配当を受け取れるとする。
配当分も再投資の原資に加えていくと10年後には260万円になっている。

配当収入:  ¥100,000     残高:  ¥1,100,000
配当収入:  ¥110,000     残高:  ¥1,210,000
配当収入:  ¥121,000     残高:  ¥1,331,000
配当収入:  ¥133,100     残高:  ¥1,464,100
配当収入:  ¥146,410     残高:  ¥1,610,510
配当収入:  ¥161,051     残高:  ¥1,771,561
配当収入:  ¥177,156     残高:  ¥1,948,717
配当収入:  ¥194,871     残高:  ¥2,143,588
配当収入:  ¥214,358     残高:  ¥2,357,947
配当収入:  ¥235,794     残高:  ¥2,593,742

年の収入にすると23万円と大したことがないと感じるかもしれないが、これは一切労働を必要としない収入だ・・・。

# Youtuber

もう1つの例。
Youtuberが大金を稼げている理由にイマイチぴんと来ておらず、それらはあぶく銭だと勘違いしている人のためにYoutubeの広告収入の具体的な数字を計算してみよう。

手持ちの資金が0から始めるとする。
月に1回動画を投稿。
動画1つは月に500円の広告収入を生み出し、関連動画として過去の動画の視聴数を5%アップさせる効果があるとする。
これは現実的に割と簡単に達成できる数字だ。

3ヶ月目まで。

1 月目  月収:  ¥500     残高:  ¥500
2 月目  月収:  ¥1,025   残高:  ¥1,525
3 月目  月収:  ¥1,575   残高:  ¥3,100

まだ大した額じゃないだろう。
12本の動画を投稿した1年後は月収7千円と残高4万6千円。

12 月目 月収:  ¥7,650   残高:  ¥46,150

60本の動画を投稿した5年後にはなんと月収7万5千円と残高180万円にも達している。

60 月目 月収:  ¥74,250  残高:  ¥1,814,750

忘れてはならないのは、この収入も今後一切労働を必要としないということだ。

# まとめ

アルゴリズム、つまりプログラムのちょっとした書き方の違いでコンピュータの計算量、つまり処理速度は全く異なる。
アルゴリズムは効率が良い順にO(1)<O(N)<O(N2)<O(2N)O(1) < O(N) < O(N^2) < O(2^N)などとクラス分けされている。
お金の稼ぎ方にもこのアルゴリズムの計算量の概念が当てはまる。
同じことを仕事にしていても、ちょっとした工夫で収入は全く変わってくる。
ぜひO(2N)O(2^N)のアルゴリズムを意識して、定期的に出来て、かつ過去の仕事にプラスの影響を与えるような仕事をしたいところ。


リモートフリーランス。ウェブサービス、スマホアプリエンジニア。
東アジアを拠点に世界を移動しながら活動してます!

お仕事のご依頼・お問い合わせはこちら

コメント