作ったツールの課題

このサイト(ntgaura.net)はDropboxに入れたmarkdownが自動的にサイトに反映されるシステムでできてます。 ソース: https://github.com/ntgaura/ntgaura.net

これは運用初めてみて非常に非常に快適で、いいものができたなあと思っているのですが 使ってみて課題も見えてきました。

重要な点は主に以下の2点に集約されると思います。

  1. markdownを超えて必要になるデータを保持できない
  2. 記事投稿イベントをフックにして何かを実施するという普通の考え方が使えない

1については、システムを作った時の記(といっても数時間前の時点の話ですが)でも触れていました。 そしてこれは単に書くコードの側をmarkdownから、 もうちょっと強い言語に拡張してあげればいいなというのがわかってきたので、 そういう方向にアーキテクチャを拡張していこうかと思っています。 (追記: この課題は解決しました)

しかし2は運用をして気づいた点で、結構厳しいです。 これはたとえば新規記事投稿をベースにSlackやTwitterに投稿告知を行うような処理ができません。

1つのアイディアとしては、cronを回して定期的にDropboxの中をたたき、 前回から更新されたmetadataを眺めて、それにしたがって通知処理を行うという手があるのですが これをやると、「前回」を保持しなければならず、このアプリのコンセプトであるDropbox以外のデータベースを要さない、という点が崩れてしまいます。

DropboxAPIにはDropboxをKVSとして取り扱う機能もあるので、それに乗ってしまうのも手かなあと思ってはいるのですが。 どうするのがいいかなあ。