眠いがいろいろあって寝るわけにはいかないのでアプリのバグ取りして平静を保つ。ExoPlayerわからんしFragmentわからんしXMLわからんしで何もわからんマンになってる、もう全部Composeにしようぜ~(労力)
いささかやる気が出ない。 いつも通り燃え尽きてしまってるわけなんだけどさすがに5月まで引きずると社会的/精神的/肉体的の三面から死にかねんのでエンジン点けていきたい所存。 とりあえず今の気力で取り掛かれる事から進めていきたいね~ 下になんか実装のメモ書いててくれたし(今の今まで忘れてた)それからか
raplace-android
の現状の実装だと再起動したときとかに都度Feedを触りに行っててそこでラグが発生してるのでなんとかしたい。
UseCase層でRoomをキャッシュとして利用するのが良さそうなんだけど結構動作の変更が必要になってくるなぁって感想(ViewModel層でAPIデータの処理をしているため)。やっぱFat ViewModelはアカン……アカンと思ってちょっと反省はしたけど今後もやらかしていく予感しかしない。
とりあえず抽象的なイメージを書き出しておく。
とても眠い。
おひっこし~
RaplaceのAndroid版がまあ使えるレベルに仕上がったのでtinyap運用開始。本当はap.puage.org
で運用したかったけどmsサブドメインから変えるの面倒になっちゃってそのままになった。
まだリプライ実装できてなかったり色々詰めが甘かったりするけど最悪動かしながら仕様変えていけばええ!スマホからつぶやけるメリットには敵わんて
Fediverse側のフォロー先探さなきゃな~フォロー0人だとただの日記投げサービスになってしまう、それでもまあいいんだけど
そもそも中伝に至るまでは横認識のレベルを上げる関係で周辺視野を強化しないといけないのに皆伝になると急に低速対策で周辺視野捨てられるようにならなきゃいけないんだもんな、必要なスキルからして違いすぎる ソフラン低速対策にDDR始めようかな~~~
起きてからPCデスクに座るまで9時間かかった。笑えん
スクリプトの関係で手動Migration初めてやったけどすっごい緊張するこれ。少なくとも本番環境でやれるもんじゃない
Migration用のスクリプトが汚くなってきた。ormlite-cliがsqliteに対応してれば速攻で乗り換えたんだけどナー……いい感じのMigrationツールに出会えるまで気合でクソスキーマ管理しましょうね
https://www.shuttle.rs/ Rustサーバレスのタダで使えるプラットフォームとかなんとか 面白そう
KotlinとRust並行で触ってるからvar,val,letでかなり混乱する、特にKotlinでも機能違うとはいえletあるのがヤバい
ref
キーワードの使いどころ。
if let Some(x) = hogehoge
なら何かしらの処理(DB挿入とか)したくて、かつその後にOptionを使う必要があって、かつOptionSome(ref x)
として参照を貰ってこれるとイケメンかもしれない(今日やっと気づいた)処理でxを消費しない場合に限るけど
ISO8601 Durationは許されざる
Fat ViewModelを検知……(死)
endpointのコード量がクソデカになってきたから1000行突破する前にモジュール分割したいわね 面倒!
memo: 画像を先にアップロードしてMediaを取得、attachmentに添付した状態で本文のNoteを送信する(クライアント側)
Androidからの投稿できた。フィードも引っ張ってこれるようになったし次は画像周りかな~attachmentできるとかなり住みやすくなるだろう tinyms統合していい感じの画像アップロード機構取り付けて~クライアントにも実装~めんどい!!!!!!!!!!!やるけど
風がやたら強い
BPM145までならデニムガチ押しできるっぽい。成長わね
LSPに怒られる→シンプルにありがたい LSPに許されるけどコンパイルエラー→Rust業界ではご褒美 実行時例外で落ちる→まだ助かる 想定外の挙動→アホ死ね
DIの考え方と重要性をよーーーーーーーーーーーーやく少し理解した。(テストをまともに書けなくなってしまったクソコードのための)
7鍵が苦手な理由を言語化できそうなので吐き出す。 今までずっと鍵盤を叩くという動作を「指を降ろす」ワンステップだと解釈してて、7鍵に関しては薬指を曲げるっていう都合上「指を曲げてから→降ろす」の2ステップと思い込んでたっぽい。曲げてから→の段階で余計な思考が混じってしまうから47->乱打みたいな配置が嫌いになってたのかもしれない。かといって曲げた状態キープし続けてたら(今も頻繁に降ってくる地帯は曲げっぱだけど)腱鞘炎待ったなしな気がするから「曲げつつ降ろす」、指先を斜めにスライドさせるイメージで練習してみたい。
Kotlin好きかもしれんな……
ンンンンンン(仕様変更に次ぐ仕様変更で影響範囲が見えなくなったときの苦悶の声) こんな小規模プロジェクトですらこうなるんだから要件定義とかデザインパターンの大切さが身に染みてわかるわね。実行するかは別
x = if hoge.is_some() { true } else { false }
みたいな代入、x = hoge.is_some()
でよくね?ってなったのが今日の気づき。なぜ今まで気づかなかったのか……