見出し画像

EBt の最新版がストアで公開されました

長かった

なんちゅうか、色々長かったなーという感覚ですが、EBt の最新版が Microsoft Store (Win) と Play Store (Android) に公開されました。
もうダウンロードできる状況ですので、気分が向いたらお試し下さいませ。

それはともかく、今回のリリースは結構大変でした。その理由としては、そろそろ EBt のマルチユーザー対応に向けた下準備と、EBt Server への対応にむけた準備をしたことですね。
まぁ、どっちも見た目はあんまり変化はありませんが、ちゃんと対応しておかないといけないものなので。最終的にはおかげでどっちも何とか作業としては終わりました。

一応、あちこちバグとかも修正してまわっているんですけどね。こういう地味な修正は見てもわからないのでアピールが弱いのがどうにも。

なんにせよ

EBt のベースとなる各種機能のチューニングをしたので、色々と使い勝手は良くなってきました。良いことです。
もちろん、まだまだ甘いところはあるので、気づいたところから修正はしていきます。正直、まだまだあちこち足りないことは自覚しています。
ですが、それを全部直していたらいつまでたっても公開できませんからね。そこそこのところで公開するということは、今後も続けていくと思います。

ChatGPT 連携機能を強化しました

いわゆるプロンプトを自分で設定できるようにしました。まぁ、プロンプトをゴリゴリいじっている人も少ないだろうなーとは思いますが、お仕着せのプロンプトだけじゃやりたいことが出来ないかもしれないんで、そういう人は便利に使えるんじゃないかと思います。
基本的には ChatGPT に問い合わせた結果を新しいメモとして作っていくので、ChatGPTへの確認データの山に埋まることも無いんじゃないかと思います。

検索機能を強化しました

古式ゆかしい検索ロジックが実装してあります。その検索ロジックの特徴として、そこそこ類似したデータが調べら得るというのがあります。
というわけで、メモに近いメモを検索したり、適当に入力したテキストにほどほど近い内容のメモが検索できます。
なお、検索は文字ベースで行います。だから古式ゆかしい。まぁ、意味ベクトルの集合にすれば意図色出来るんですが、そのための形態素解析エンジンとかを EBt に入れるわけにも行かなかったので。勘弁して頂ければ。

データ同期を強化しました

地味だけど大事なデータ同期機能を今回がっつりと強化しました。今までは正直なかなか同期がうまく進まなくって使いにくかったのですが、そこはだいぶ改善できました。
ま、まだまだ修正すべき点は多い。そこは素直に認めます。でも、たとえそうであったとしても、今までと比べてかなり進歩していることは確かです。
これで、データ同期も使い物になるかな?と行ったレベルまで来ました。

データ同期については、近いうちに WinUI 版の EBt Server を公開する予定です。すでに、こちらの環境ではテスト稼働に入っているので、
そこそこ安定稼働することが確認できたらリリースに向けた作業を進めていくつもりです。

これをネットワーク上で動かしておくことで、勝手にバックアップが始まります。なんか、サーバーの立ち上げは非常に面倒くさい印象が有るかと重い明日が、EBt Server については、データをどこに置くかを設定するだけで大丈夫というなかなかにイージーなサーバーとなっています。
開発が意外と早く終わっているのは、実は EBt 本体もサーバー機能に近いものを持っているからです。つまり、EBt Server は内部的には EBt から GUI とかを削除したもので、DBや通信層はほぼ一緒なんですよね。この辺はしっかり設計したのがうまく作用しているかなって思っています。

コードサイズってどれぐらいなの?

多分、びっくりするぐらいのコード量です。複数の名前空間に多数のクラスがぶら下がっているという状況でして、多分、クラス数は余裕で 100 を越えますね。だから、コードサイズ(=ステップ数)なんか、もう考えるのも嫌なぐらい。だから、どっちも数えていません。
大丈夫です。コードサイズは今のところ大した影響ありませんから。問題としては、このコード量を一人で書いたということぐらいでしょうかね。もう、冗談抜きでしんどいです…

だって、ほら。DB も通信基盤も全部自分で作りましたからね。そりゃもうすんごいことになってますよ。DBなんか出来合いの使えば良いじゃん?って思うかもしれませんが、RDB に EBt の構造のっけるのは不可能ではないけど正直筋が悪いという認識なので、どりゃーって自分で作っちゃいました。通信基盤も P2P に近いものだし、トポロジを自分のニーズに合わせて動的に変化させたりするので、やっぱり自分で作るしかないし。

まぁ、ここまでやらなくても良いのでは?という感覚もないわけではありませんが、最終的に狙っている用途を考えると、多分こういうコードを書くことを避けてはいけないので…

昨日の note にも書きましたが

EBt はメモソフトですが、メモを共有するということにフォーカスを当てたいと常々思っています。一時期、EBt を Web アプリにすれば良いよね?って思って WEBt なんてものを作っていたこともあるのですが、なんか違うなぁ…っておもってやめました。
折を見てしゃべっているのですが、私がクラウドサービスに依存することがちょっと嫌だということが多分強く影響していますね。
そして、時間はかかりましたが、クラウド無しでデータ同期をするというシステムまで何とかたどり着けそうな目処が立ちました。すごく長かった。でもまだ完成にはほど遠い状況です。
この辺のプランは昨日の note にも書いたとおり、近日中に気合いを入れて書きたいと思います。

今の時点でも分散環境でのデータハンドリングがそこそこ出来ます

まぁ、自分の分身をあちこちの環境にばらまくのは、別にあちこちの環境でデータを開いて編集するだけで出来ちゃうんですよね。
その時に動いているサーバーに勝手にデータ同期しちゃうんで。
まぁ、なんか勝手にデータ同期するのも嫌なんじゃないかなとも思うんで、サーバーとの通信に制限をつけることは結構真剣に考えているところです。

一応 URL 貼っておきます

Microsoft から Token 買う機能があるのに Free は紛らわしいと指摘されたので、アプリ名が微妙に変わりました。

  • EBt3 Link Memo Tool (Starter Edition)
    https://www.microsoft.com/store/apps/9PF8F59NTGL0
    今までの EBt3 Link Memo Tool (Free, Limited) に相当するものです。Microsoft から突っ込みが入ったので名称を変更しました。
    同期機能はありませんが、個人で1台のPCで使う場合はこれで十分です。

  • EBt3 Link Memo Tool (Standard Edition)
    https://www.microsoft.com/store/apps/9N2RW5ZV56GC
    今までの EBt3 Link Memo Tool (Single User) に相当するものです。Free 版の名称変更に伴い、こちらも名称変更しました。
    同期機能を持っていますので、同一セグメントにある PC間、PC-Android 間のデータ同期が可能です。

さいごに

ざっと 2週間 EBt の作業に没頭していてかなり疲労がたまっています。
ちょっと明日は大人しくしているかもです…

いいなと思ったら応援しよう!