eniehackとの議論7

  • フィルタ
    • 両方というのはluauとmluaの連携?

      • luauとRustの連携、mrubyとRustの連携、の両方を試すべきかなあ、という意味だった
    • luaAPI(=Rust側)のwrapが、どのレベルなのかにも依りそう

      • これだよねー、どっかで実験せねば
  • ユーザ管理
    • frontend, backendまとめて1人用・1アカウントから作り始めて
      • …その後1人用・マルチアカウント(ソース)というので考えてる
  • frontend <-> backend のプロトコル
    • フォーマット
      • とりあえずUNIX domain socket(Rustなら UnixStream かな)を使う?
        • socket上にjsonを流すのってプラクティスとして良いのかなわからん
      • gRPCとかではない?
    • 必要になるメッセージの種類
      • 以前「frontendはTwitter APIが話せる必要がないけれど、かといってbackendがすべてwrapするのもつらい、一部frontendに移譲していいかも」という話があった
        • タイムラインはフィルタ処理を通す必要があるのでbackendでwrapしてやるのが絶対
        • 他にwrapしたほうがいいのってなんだろう
          • 作ってからwrapしたくなるケースがありそうで、そうするとまた互換性が困りそう
            • 例:lists/tweets (リスト中のツイートの意; 実在しない)エンドポイントをフィルタするようになった
              • list = call_api("lists/tweets/", arguments...) と書いていたところを、list = get_filtered_tweets_in_list(arguments...) とするような仕様変更
              • このとき変更前に書かれたfilterからの lists/tweets に対するcall_api 呼び出しを get_filtered_tweets_in_list にbackend側でリダイレクトするようにすれば、filterの変更は必要ない
                • が、あまり良い策ではなさそう…
            • バージョン管理?
              • なんらかのメタデータはいずれにせよ用意する必要があるなあ
            • 考えすぎ?
      • frontend -> backend
        • A) (フィルタされた)ツイートを読み込む
        • B) 任意のエンドポイントについてリクエストを依頼する
        • etc…
      • backend -> frontend
        • a) Aに対して返信=ツイートのリストを送る
        • b) Bに対するレスポンスを返す
        • etc…
    • frontendのモックもほしい
      • CUIで、生のメッセージを読み書きできるようなやつ
      • frontendを作る上でのリファレンス実装にもなる
  • レポジトリ作ったんで…(URLを貼ろうとしてアクセスするとすでにStarされていることに気づく)…よろしく!
    • https://github.com/sei0o/binchotan-backend
    • libchotanどっかで使いたいなw
    • とりあえず自分が書けそうで、必要そうなものから書いてる
      • ソースコード中に
  • お互いの議論がScrapboxとQuartzに分散してて検索に不便だな、どうしよう
    • GitHub Issues?
    • mailing lists?
    • scrapbox?
      • よくあるのはお互いのアイコンをつけてコメントしていくやつ
        • [sei0o.icon] ↑これ難しそう みたいな
      • でもこれコメント増えたら面倒そうだよなあとか思う
      • フロー(議論)とストック(整理)?
  • 議論を一旦まとめようと思ったんだけど、seccampのチューターがなかなか大変なため、もうちょっと後になりそう

Backlinks