Modelmap とは (ざっくりver)

## 0. はじめに

<b>下記は時間がない人、ざっくり読みたい人向け。</b>まじめに書いた記事もあるよ！
[Modelmap って何? -まじめver](https://qiita.com/Modelmap/items/bbec2e365f4dd00482c0)

## 1. Modelmap って何?

![Modelmap Image](https://i.gyazo.com/c7d8cc5f0b6af8cf1b570cd3eaf0259e.png "Excel and Modelmap")


Modemap は、ざっくり言うと、<b>JSONで定義された計算データ</b>だ。樹形図として表示できる。エクセル内の数式と互換性があって、計算過程が視覚化できる。現時点だと、エクセル->樹形図生成が主な用途だけど、樹形図->エクセル計算生成も将来できるようになる（予定）。

## 2. おいしいの?

世の中には、下図みたいなヤバいエクセルが沢山ある。作った本人も内容覚えてないか、引継いだ担当者も中身ほとんど分かってない。少なくとも、自分は引継ぎを全力で拒否する。

![Unstructured Spreadsheet Image](https://i.gyazo.com/dedb23422a63d2eac0c9130911c59d39.png "Unstructured Spreadsheet")

Modelmap を使うと、上記みたいなエクセルでも、特定のセルからとりあえず計算過程を樹形図化してくれる。<b>計算過程がすげー見やすい。</b>

![Diagram Generation Image](https://i.gyazo.com/a957bdbfbe35d5a79f8cb39c4f836623.png "[Diagram Generation")

## 3. そんなに困ってる人いんの?

エクセルで計算するのは、ちまちま数式書くの嫌だし、チェックも面倒だ。でもどうしてもしなきゃならない場面がある。たぶん4つぐらい。

1. 会社買うとき
2. 工場建てたり新製品開発したりするとき
3. やばいエクセルを引継ぐとき
4. 会計士先生とかが監査でエクセルの中身チェックするとき

### 3-1. 会社買うとき

会社を買うのは、マジで大変だ。ちょっとノリで会社買ったりなんかすると、ゴミみたいな会社を高値で買ったり、粉飾決算したりしてて、阿鼻叫喚になる。だから、買う前に全力でチェックする。<b>事業シミュレーションなんかも、エクセルで全力で作る。30万個ぐらいのセルを数週間徹夜で作って、気合いでチェックする。</b>投資銀行とか、コンサルタントの人が頑張る。作業はマジで辛いけれど、給料は高い。

![Model Review Image](https://i.gyazo.com/dc69787ea9532cbcd02d94b03d051e33.png "Model Review")


### 3-2. 工場建てたり新製品開発したりするとき

会社を買うほど大変じゃなくても、工場建てたり、新製品開発したりするのだって、大変だ。ちょっとノリで新店舗出して失敗したりすると、良くてボーナス無しか、下手したらクビになる。なので、一応始める前に色々エクセルとかでシミュレーションを頑張る。<b>1万個ぐらいのセルを数日頑張って作って、チェックする。</b>経営企画の人とか、新規事業開発の中の人が頑張る。


### 3-3. やばいエクセルを引継ぐとき

上の方で出てきたやばいエクセルも、引継ぐ人はどこかにいる。この手のエクセルは、経理とか会計周りのファイルでよくある。<b>経理のおばちゃんは、どこのセルに値入力してこのボタン押す、とかは教えてくれるけど、中身の計算は多分知らない。</b>先輩も多分知らないし、聞くと多分怒られる。しゃーないから、自分も何も考えずに、値入力してボタンを押す、という作業を淡々とやる。たまに気合でセルごとに数式を追いかけて、徹夜で理解を試みる。


### 3-4. 会計士先生とかが監査でエクセルの中身チェックするとき

税理士先生とか、会計士先生は、監査で色々チェックしなきゃいけない。上に出てきたヤバいエクセルも、重要であれば当然チェックする。経理のおばちゃんも内容は分かんないけど、監査となれば流石に説明しなきゃならんので、しどろもどろに頑張って理解を試みる。この間、おばちゃん他の仕事不可能になる。先生も、経理のおばちゃんを心配して、自分でファイル開く。後悔する。そしてお互い<b>すげー時間使って、何とかチェックを終える。</b>


## 4. 要は？

ここで言いたいのは、情弱もっとツール使えよとか、~~脳筋乙とか、~~そういう話じゃない。要は、<b>エクセル便利だけど、特定のタスクを行う上でUIに根本的な欠陥あるよね</b>、というお話。ざっくり言うと、エクセルは本来表計算ソフトなので、クイックな計算はOKかもだけど、複雑な計算に向いてない。バージョン管理機能とかないし、とにかく1回数式書くと、計算過程がマジで分からん。


## 5. なにがすごいの?

ただのエクセルタスク補助ツールかと思うかもしれんが、実は色々すごい。

+ インプットとアウトプットがしっかり決まる
+ 計算プロセスが逐一わかる
+ <b>モジュールとして扱える</b>
+ データベースに蓄積できる


### 5-1. インプットとアウトプットがしっかり決まる

エクセル上だと、見えてる数値全部アウトプットだけど、セルを選択して1個決めてアウトプット確定させる。そうすると、計算式を追ってインプットも自動的に決まる。

![Input/Output Image](https://i.gyazo.com/ce67f4f881589b686a9501ab3b739083.png "Input/Output")


### 5-2. 計算プロセスが逐一わかる

アウトプットとインプットまでの構成要素が逐一わかる。ウォッチウインドウとか要らない。

![Calculation Nodes Image](https://i.gyazo.com/cf3be226bb7b83e3e06c5add169cb64a.png "Calculation Nodes")


### 5-3. モジュールとして扱える

インプット、アウトプットしっかり決まってるので、<b>樹形図を1個のモジュールとして扱える</b>。複数のモジュールを繋げてもっと大規模な樹形図も作れちゃう。<b>メンテやバージョン管理も、モジュール単位で簡単</b>。インプットはローカル・クラウドの色んなソースとリンク可能。

![Calculation Module Image](https://i.gyazo.com/e260194025b1626f726cc2c73939d050.png "Calculation Module")

### 5-4. データベースに蓄積できる

アウトプットとインプットが決まったJSONなので、データベースにできる。欲しい計算は、ちまちまエクセルで1から作らなくても、データベースから気に入ったモジュールDLして加工・編集すればOK。<b>複雑なシミュレーションとかも、モジュール4~5個DLして繋げちゃえばすぐ完成。</b>

![Cloud Database Image](https://i.gyazo.com/202f0c7e67a587fc1cf6dc4c31ea648b.png "Cloud Database")

## 6. まとめ

まとめると、Modelmapは 1. エクセルから数式ぶっこ抜いて作ったJSONデータで、2. エクセルの数式作ったり、チェックしたりする時間がほぼなくなる。3. ヤバいエクセルを作る人・チェックしてる人が泣いて喜ぶツールで、4. エクセルのUIだと根本的に解決できないことをやってる。5. 一番便利なとこはモジュール単位をつなげてエクセル的な計算やシミュレーションがさくっと作れちゃうこと。

今シリコンバレーにいるけど、興味ある人は下記から適当に連絡してね。

+ [シリコンバレーで開発初期のリードエンジニアを募集中](https://www.wantedly.com/projects/177387)
+ [Modelmap Co](https://www.modelmap.co/)
+ [Linked in - John Kawai](https://www.linkedin.com/in/john-kawai-cfa-014bbbb/)