収支管理シートを作っていて JavaScript 書いた
- Google Spreadsheet で作っている収支状況管理シートが一応形になった。
- 8 月上旬に実家に帰省していた際に 2 日ほど集中して作業して、その後しばらく放置状態となっていたが、先週半ばから少しずつ取り組んでいた。
- クレジットカードの支出を集計して表示するあたりが一つの山で、金曜の夜から昨日の夜までほぼずっと取り組んでようやくできた。
- 収支管理シートは 2 年ほど前にも作って実家と自分とでそれぞれ運用していたが、手入力で同じ情報を複数箇所に記入する必要があったり、少々手間がかかるものだった。
- というのも、できるだけスプレッドシートの標準の関数を使って処理しようとしていたので、どうも「無理やり感」があるというか、スプレッドシートをいじくるのが好きで得意な人向けのものになってしまっていた気がする。
- そして僕も母も色々他にもやることあるし収支管理シートのことだけに専念できるわけではないので、キッチリ運用というのが難しくなってきていた。
- また、 MVC じゃないけれど元データとビューの分離というか、データベース的発想が自分の中に少し定着してきたのもある。
- 会社で Excel を触っていても思うのだが、最終的に見たい結果(表など)を直接作りこむのではなく、データはデータとして表の形で持っておいて、そのデータを読み込む形で(関数なりマクロなりを用いて)見たい結果を生成する、というやり方の方がメンテナンス性および拡張性が優れていることが多い。
- なので、できるだけ手動で入力する箇所を最小限にして、それでいて見たい結果を手軽にみることができるように、という考えのもと、作りなおした次第。
- Google Spreadsheet は JavaScript で処理を記述できるので色々調べながら自動化したい機能を書いていった。
- 実家で書いたのが大体 300 行くらいで、今現在はトータル約 800 行くらい。 JavaScript をこんなに書いたのは初めての経験。
- 実家では Google Apps Script のオンラインエディタで書いていて、途中で Ctrl-/ で語句補完が効くことを知ってこれは便利と思っていたが、こちらに戻ってから Visual Studio Code を使って書くようにしたら JS についてはかなり親切に補完が効くし関数の定義箇所、参照箇所へのジャンプもできるしで、効率が 2 倍くらいになった気がする。
- 実家でも VS Code を使っていればよかったと思うくらい。
- Google Apps Script のモダンな開発方法もあるようだけれども、今の自分には少々敷居が高かったので、 VS Code で書いてオンラインエディタにコピペして実行、デバッグという感じでやっている。
- GAS 独自の API については補完が効かないけれど、そこまで不便ではない。
- VS Code はなかなかよいエディタだと思った。
トリックアート
VRだポケモンGOだと大騒ぎだけど、3Dトリックアートが描かれるまでも凄いから見て pic.twitter.com/zcZdKz5kBD
— はねゆり (@tororo1218) 2016年7月13日
先日母が言っていたものと同じ絵かもしれない。すごい技術だな。
160723 土曜 疲れ
- 身体が重く、活動する気になれなかった。
- 先週はちょっと無理しすぎたかもしれない。
- ゆっくり寝よう。
160715 金曜 シンガポールへ
- 木曜の夜の便でシンガポールへ。
- 昨年 10 月末以来、 2 回目。
- 空港内のレストランはやや高い上に、混んでいるか、居酒屋的か、がっつり系(すき焼き等)か、という感じで一人でサクッと食事するという目的に合致しそうなお店があまりない。
- 3F の奥にある Pronto でパスタとジュースで済ませる。
- 空港で購入したものとしては機内用のスリッパとマスク。
- 出発ゲートそばのベンチでは、背中合わせに設置されている 2 台のベンチの間にポールが立っていて、そこに USB の給電ポートがついていた。
- これは助かるね。こういうのは誰が発案しているのだろう。海外の空港の事例などを参考にしているのだろうか。
- 機内では寝たり起きたりで、あまりまとまった睡眠は取れなかった。
- 窓側の席だったのでできるだけトイレに立つことがないよう、水分の摂取には気をつけた。
- 何か飲むとすぐにトイレに行きたくなるので。
- 途中で同じ並びの人が二人とも席を立ったタイミングで自分も一回トイレに行っておいた。
- 東京からシンガポールの所要時間はだいたい 6 時間くらい。
- まぁ寝たり起きたりしているうちに着いたので、そこまで大変ではなかった。