プレゼンツール作ってる 2

f:id:side_tana:20170514223627j:plain

変な角度なのは机の上が散らばってるからです。これでもなんか映り込んでるので、画面外はお察しという感じ。

異なるWindow間のデータの同期みたいなのがどうしてもテーマになってしまっていて,今は知見もないのでとにかく愚直にやっている.具体的には

ウィンドウ間で共有が必要なデータはメインプロセスで管理し,

  • メインプロセス
    • REQUEST_<何かしらのリソースの名前> イベントを受け, 現在のリソースを SYNC_<何かしらのリソースの名前> イベントで送り返す
  • ブラウザウィンドウ
    • ipcRenderer.on('SYNC_<何かしらのリソースの名前>') みたいな感じでデータを受ける準備をし
    • ipcRenderer.send('REQUEST_<何かしらのリソースの名前>') みたいなのを送る

みたいな感じ.実際にはこのウィンドウとこのウィンドウでは共有したいけど,別のウィンドウでは共有したくない,みたいな状況があるので (複数のドキュメントを開いている時にウィンドウ間でドキュメントの内容は共有したらはちゃめちゃになる,みたいなことです),もうちょっと丁寧にやっているのだけれど,丁寧というか複雑な感じで険しい.

ゴールデンウィーク中に redux middleware でガバっとやろうと取り組んでいて,値を外に送り出すところは簡単に出来たのだけれど,action をどこで発行するかで悩んでしまい進まなくなったので, 結局 redux ごと剥がしてしまって, componentDidMount で ipc 待ち受けて setState すればいっか,みたいな気持ちになって素朴な構造を積み上げまくる,みたいな方針になった.

プレゼンツール作ってる

r7kamuraさんの日記見て,おもしろそう〜という気持ちになったので,今月の16日からプレゼンツール作り始めた.

f:id:side_tana:20170424084218p:plain

f:id:side_tana:20170424084253p:plain

レイアウトの部分結構難産で,先週の前半は仕事以外の時間ほぼレイアウトの仕様を考えていて,後半は体調悪くて帰宅後寝込みがちだったのだけれど,寝込みつつレイアウト定義ファイルの仕様とか考えてた.土曜は調子が良かったので,それらを一気に実装に落とし込んだ.

プレゼンモードとプレゼンタービュー作ったら使えるレベルまで到達しそう


趣味プロダクト,自分は三日以上かかるものを完成まで持って行けたことがないので,如何に継続させるか,みたいな課題感がある*1.今回は GitHub Projects を積極的に使っている.

f:id:side_tana:20170424085049p:plain

こういう感じで, todo, wip, done のカラムを用意して,wip が空の状態で作業を中断しない,というのを心がけている.こうすると,次にやるぞ,となったときに「何をやるんだっけ?」見たいに悩まなくて済む.

あと,作業してると別の子としたくなることがあって,たとえばエディタ部の部分作ってるのに,急にファイルの入出力まわりをやりたくなる,みたいなことがあるのだけれど,そういうことをするとワケわかんなくなるので,今やってること以外のことがしたくなったら取りあえず todo に積んでおく,みたいなことをしている.

前は issue でやってたけど, issue でやると他のタスクとの粒度が違ったりしてつらくなりがち(個人の感想です).

プレゼンテーションモード,とくにプレゼンタービューをつくろうと思うと,異なるウィンドウ間で状態を共有したくなるので難しい,今週はちまちまそういうのやるんだと思う.

*1:と思ってたけど前作ったやつはちゃんと2週間ぐらい掛けてリリースまでしてた

遊歩道

家の近くに区の整備している遊歩道がある事に気がついた.道沿いにはたまにお店があるけど,基本的にはアパートやマンション,戸建ての家が建ってる.

たまにあるお店のおかげで,縁のない住宅街に立ち入った時のような気まずさは無い.

それでもやっぱり生活の匂いみたいなのが漂っていて,人間が生きてるのだと思う.僕からすれば無名の他人なのだけれど,向こうからしたら僕もそうなのだろう.無名の人間たちによってこの社会が維持されていて,僕も無名の人間たちの一人なのだと思うとなんとなく気持ちが軽くなる.

別にそんなに背負い込んでるものがあるわけでは無いから,まぁそんな気持ちになるってだけなのだけれど.