雑感 〜少し肌寒い編〜

タイマー

カップ麺を食べる際、タブレットのタイマー機能で、云々ということをやっていました。ただ、タブレットが替わると、その標準的なアプリはメーカーによって、UI/UXが異なってきます。すると、お湯を入れてから、アプリを動作させるのに、少しだけ戸惑う時間が発生します。少なくとも、十数秒程度は。加えて、カップ麺そのものを頻繁に食べないこともあって、毎回、その逡巡する時間が発生してしまいます。
なんとかしたいなぁ、と思ってて、某timer周りをいじってたんだけど、今のところ上手くいってなくて、結果的に、上手くいってるPyGTKベースのTimerを作成(ちょい変)。デフォルトで、180秒と300秒のカウントダウンのみ。アラームもでないけど、作業をしているデスクトップ上に、ポチッとおけるので、いいかな、と。

SQLite3

諸々のSiteを巡回するのに、RssアグリゲーターであるLifereaを使用しています。このアプリ上でも閲覧はするのだけど、元々、このアプリを使うようになったきっかけは、DataをSQLite3で持っていたことに起因します。
RssのLink先から得られるFull TextをOfflineでも、読めるようにしたいということを考えていて、epub化すれば、いわゆる一般的なブックリーダーで読めるな、と思ったわけです。限りなく、自分的には、ビンテージに近いアプリで、当時、iPod Touchで読めるようにするのが、自分的至上命題だった。
それ故、Handling可能なDataをSQLite3で構築しているLifereaが筆頭だったのです。SQLite3は、一般的なCopy and Pasteにて、可搬性が可能なRDBでしたので、作ったScriptは、当初、

  1. SQLite3をCopy→未読Data収集→Script実行→Dataの既読化→Offline使用
  2. SQLite3を含めて、Backup

ということをやっていました。使用されているSQLite3は、既読してもData量が減るわけではなく、Readフラグが「0」となるか「1」となるか、でしたので、Data自体は、膨れていきます。(時々、Delete実行するんですけどね)
Dataは基本鮮度が大事なので、そこまでして、Dataを保持する必要性もないかな、ということで、作業フローの見直しをしました。

  1. 未読Data収集→Script実行→Dataの既読化→Offline使用
  2. epub/HTML化したDataのみBackup

のように、SQLite3自体は、通常の運用範囲内で扱うことに変更をしました。
また、Scriptの実行工程は、

  • epub向けData作成→epub化→HTML向けData作成

という3工程を手動で行っています。(コマンド一つですけどね)
「epub向けを作成」している時、大体、Frontで、Liferea上で、読みたい記事を一つ二つ読んでいて、読み終わったら、既読化するわけです。ところが、この日は、「HTML向けを作成」している時に、動作不良が発生したのです。epubは上手くいったので、そこが上手くいけばHTMLが失敗することは、ほぼほぼ無い、というのが実情なんだけど、この日はおかしかった。

Debugを開始するものの

ScriptであるPythonのCode内に、問題を起こしている辺りにprint文を入れ、Debug開始。何箇所かprint文を入れてみるものの、ある瞬間、「Dataがゼロ」という部分に目が行きました。「Dataがゼロということは、Dataがないということ」「でも、epub用のData取得できてるから、ゼロっていう話はおかしい」「はて?」
元々のSQLite3のCopyは、Dataが消失するという点を懸案して、Copyすることにしたのですが、その作業を随分長い期間実施していたこともあり、Liferea内のSQLite3と同期していないということが念頭にこびりついていました。
FrontのLifereaのData状況を確認しました。「全既読状態」になっていました。つまり、Liferea上で、読みたいArticleを読んだ後、既読をクリックしていたのです。あぁ、やっちまった。

Recovering Data

先にも記載しましたが、Data自体は消失したのではなく、Readフラグが立っているだけ、ということですので。

$ cd .local/share/liferea
$ sqlite3 liferea.db
sqlite> select item_id, read from items;
....
49999|1|
50000|1|
50001|1|
sqlite>

これを差し戻します。大体、1日辺り200記事ぐらいですので、

sqlite> update items set read=0 where item_id>=49750;

で、直接Dataをいじった後、Liferea上で、未既読Dataの微調整を行い、再度、Scriptを実行し、問題なく、Data生成ができたこを確認しました。よかった!よかった!

push and modify

gitにpushかけて、Travis君に怒られて、修正というのを繰り返しておりました。

フライパンレス

パスタの一味問題は変わらないのだけど、たまたま、見ていた和風のレピシで、フライパン使わないので、我が家で鉄板っていうのがありまして。「和風のツナパスタ」だったんだけどね。概略で、マヨ、めんつゆ、さわびと、ツナ缶(油抜いてね、とあったけど)をまぜませしておいて、そこに、茹で上がったパスタをまぜるだけ、っていうのがあって、試してみたのですね。
確かに、便利。マヨはもう少し少ない方が良かったかもな、と思いました。後、まぜるだけに合う、シャキシャキ感を何で実現するかってところかな、と。

問題発見

Markdownの引用が、上手く作用していないことに、本文をCheckしてて、見つけてしまったぞい。なんとなくわかるのだけど、どうしたものだろうか。

コメント

このブログの人気の投稿

Tabulatorで行こう! 〜ダイバー編〜

Tabulatorで行こう! 〜違うじゃん編〜

Fedoraで行こう! 〜音声合成pyttsx3編〜