今年もお世話になりました!

今年は、会社の事業を拡大しようと試みた年でした。

去年からとてもしつこく勧誘電話を受けていたアイドマホールディングスという会社があります。とても胡散臭い会社だと思っていましたが、いざ今年の売上が落ちることが分かると、騙されたと思ってやってみようと契約したのが6月中旬でした。

そこからは、DXという新規事業を立ち上げるために、仮想的な組織を作るというアイドマホールディングスの言うがままに、営業を配置して新規顧客開拓を行いました。

私は営業という行為に苦手意識があり、また新たな商品開発をしなければDXだけでは顧客は付かないとひと月経ったあたりから気づきだし、電子帳簿保存法対応のアプリケーション開発に乗り出しました。

新規アプリの中核機能として、AIを使った文字認識に取り組みました。しかし知識ゼロからの開発は時間が掛かるのと、営業による新規顧客開拓も結果が出ないまま8月下旬になり、アイドマホールディングスとの契約を打ち切りました。

アイドマホールディングスの契約は2年契約が基本となっており、それを破棄したために違約金を払わなければならず、当時は騙された感がとても強かった。そのときはこの顔が江戸時代の武士みたいに見えて、農民のわずかな備蓄を、根拠も無い儲け話で奪っていくビジネスモデルで株式上場までしているのだから、如何に騙されている人が多いことか。やっていることは、ねずみ講と何ら変わらない。

独立したときから売上が少しずつ増えていた中で、今年は減収になることが見えていることの不安から自分を見失い、無謀な挑戦をしてしまったと反省しました。

AI技術は、機械学習させるときは、人間が学習させる方向を決めますが、機械学習の過程はコンピュータ任せのため、ブラックボックス感が強くて自分で作った実感があまり湧きません。

それに比べてBOT開発は、サーバサイトの仕様はブラックボックスですが、ブラウザで動作するように設計されたものなので、ブラウザの動きを解析すれば、ある程度自分で作ることができる点が面白い。

そんなこんなで、DX関連のアプリ開発が滞ってしまっています。

ただ、電子帳簿保存法は2024年1月から施行されることは確実であり、自分自身が使うためにもアプリ開発は継続していく予定です。

Emperorの新規開発として、新たな画像認証が導入されたハピネットをターゲットにしています。以前から次の開発候補としてハピネットが上がっていたのですが、やろうとするとほかの仕事が割り込んできたり、風邪を引いてそれどころでは無かったりという状況が続いて早1年が経ってしまいました。

リモートワークをしているので、通勤やオフィスで風邪菌をもらうことはありませんが、4歳の息子が幼稚園から強力な風邪菌を家へ持ち帰り、毎回家族全員にうつします。もーやだ。。。

わくわくするような画像認証なんですが、12月から新たな組織で働きだして、そこでの技術もなかなか難易度が高く、そちらの方が優先になってしまいました。

当社のアプリはQtというフレームワークを使っています。20代後半にこのフレームワークに出会って以降、個人的に使い続けています。Qtはとても使いやすく、マルチOSなアプリケーションを作れるという点に惹かれました。

Qtは欧州では認知度が高く、車載器などにも搭載されているのですが、日本ではほとんど使われておらず、自分が仕事で触れたのは数える程しかありません。日本では、C#やPythonなど、非コンパイラ言語の方が圧倒的に多く使われています。

12月からの仕事でC#からC++に移植するということを行い、初めて仕事でC#に触れましたが、非コンパイラ言語ならではの、柔軟なソースコードの書き方を見てしまうと、C++は神だと思っていたのが揺らいでしまうぐらい良くできた言語だと思ってしまいました。

私が使うC++は、2003年に出たC++03ぐらいまでの仕様しか使っていなかったし、それで必要十分だと思っていましたが、C++11以降(C++11,C++14,C++17,C++20)の仕様に触れて、C++の進化を改めて実感しました。

C++の進化について、簡単な例を上げます。

int a = 1 ;  ・・・①
int *b = &a; ・・・②
int &c = a;  ・・・③
int &&d = 1; ・・・④

①は、左辺の1を右辺のaへ代入する処理です。
②は、左辺のaのアドレスをbポインタに設定しているという意味で、aを参照していることから、左辺値のアドレスを指していることになります。
③は、a自体が左辺値であり、cがaを参照しているので、左辺値参照という解釈となります。
④は・・・これがC++11以降の仕様で、&&は右辺値参照という意味で、dは1を格納しているメモリの中身を参照しています。

左辺値のアドレスを参照とか、そんなこと考えなくてよくね??と思いたいですが、C++はアセンブリ言語の次に速い言語としての進化をし続けているわけで、私のC++の知識は20年ぶりにアップデートされました。

ということで、ここまで言い訳をダラダラ書きましたが、要は来年もよろしくお願いします、ということを言いたい!!

チケットぴあが何やらごにょごにょやっているなぁというのは気づいています。これはフレームワークのブラウザによる影響が高そうなので、ブラウザを変えることを検討しています。

来年も、常に最速を目指していきます!


モジュールアップデートを簡素化します

先々週対応した新暗号化ライブラリ版をインストーラにも適用したため、オンライン版のインストーラが例のVPS上においても動作するようになりました。

今後は、オンライン版インストーラのみに統一していくことにします。

当社のモジュールアップデートは、2種類の方法があります。

1つは、デスクトップのショートカットを起動すると表示するソフトウェアの更新ダイアログによるモジュールアップデートがあります。これは、同じバージョンのフレームワークを使用している場合に有効で、BOTの処理を更新するときなどに使用します。

もう1つは、インストーラからアップデートする方法で、これは未インストールのPCに対してインストールする場合や、フレームワークの更新がある場合は、こちらで行う必要があるため、fastBOTサイトでアップデートを通知していますが、なかなかアップデートが進んでいない場合は、前者の更新で強制的にインストーラの再インストールを促すことを行っています。

今後は、ソフトウェアの更新ダイアログがBOTのアップデート前に、オンラインインストーラの更新チェックを行い、更新があったときは以下の画面を表示するようにします。

上記画面でコンポーネントの更新を行うことで、インターネットから最新のモジュールに入れ替える作業をインストーラが行ってくれます。

今回はチケットぴあ自動購入のみ行っていますが、順次他のBOTも切り替えていきます。

livepocketの更新

クレカ支払いは、3Dセキュア認証が必須になっていました。

そのため、自動入力に対応しました。3Dセキュアが固定のパスワードのときのみ使用ください。


リクエスト種別の「開始時連発+継続」ですが、複数のリクエストを行うことで33%のところからの進みが遅くなっている現象が見られたので、機能自体を廃止しました。

どのくらい経過しないとディレイさせられてしまう仕様なのかは分かりませんが、本日最初に動作させたときは33%でディレイになることはありませんでした。(動画では33%で少しディレイがあります)