「アンパンマンDB」に関する日記(52)

アンパンマンDBの、主に開発に関する日記。

<前 次>

アンパンマンDB

もうひとつのカテゴリ案。
一致度は設けず、一致するか否かが明確になるよう定義と領域を設定する。
データ修正だけなので、プログラムの修正が必要なくなる。
とにかく、プログラムが複雑になり過ぎないように、データが膨大になり過ぎないように気を付ける必要がある。

アンパンマンDB

アンパンマンDBのカテゴリに一致度という概念を取り入れようかと以前から考えていたが、一致度未記入をどうするか、データ量が膨れ上がらないようにするにはどうするかが課題だった。
カテゴリの一致度とは別に、可変長の記入進捗データを用意し、完全に記入完了したものは短い表現のデータに置き換える。一致度データなし、かつ、記入完了扱いされているカテゴリは、不一致とみなす。これでいいのではないか。
あと、管理メモに置いてある、ギミック付きのページを管理メモから独立させたい。なるべく楽に量産できるような仕組みで。

日記とプロフィール

TGWS_Wikiがうまくできたので、日記とプロフィールに適用してみました。
日記はもともとTGWS_Wikiを使うようになっていたのですが、プロフィールは今回やっと適用したので、これからは記入が楽になりそうです。
日記は日記で、スタイルシートがちょっと相性悪かったので、少し調整を加えました。
アンパンマンDBも似たような仕組みを使っていますが、影響を受ける記事数が非常に多いので、ちょっと様子見です。
動作が確認出来たら適用します。
コードのシンタックスハイライトにも対応させたらプログラミングコーナーのWordPress化も必要なくなるかな…?
いや、カテゴリのこともあるし、それはさすがにないか。

アンパンマンDBと六甲山

アンパンマンDBのカテゴリに関する構想。
カテゴリに、合致度の概念を導入し、良く合致する、少し合致する、全く合致しないなどの、段階を設ける。
「全く合致しない」も記録することで、「合致する」でないのが未考慮ゆえか本当に合致しないかを見分けられる。

六甲山。
Twitterに書いたのをまとめなおすのも面倒だったので、モーメントで済ませておきます。
⚡️ 「六甲山」

応答速度計測とWordPressとAnpanator

応答速度の計測にバグがあって、問題のあるページのURLが記録されていませんでした。
遅かったのが私一人しか使わない画面だけだったのでよかった。
手っ取り早く直しておきました。

んで、時間計測をアンパンマンDBにも仕込み中。
時間計測機能自体は実はかなり前から搭載済みで、ユーザーも設定で出すことができるのですが、それとは別に毎回やるやつです。

WordPress導入。
いろんなコンテンツやるうえで、どこのコーナーにも当てはまらないようなのって結構あるんです。
そういうコンテンツって、日記でちびちび書いていたり、はてなダイアリーに書いたりしていたのですが、内容を考えると、日付を重んじる日記は不適格かなって思うんです。
また、日付を重んじないとはいっても、書こうと思ったタイミングでさっと書ける軽快さも欲しいと思ったのです。
既存のコーナーのやり方は、基本的にはインターネット黎明期と変わらない、HTMLソースを書いてアップロードという流れで、軽快さには欠けます。
プログラミングコーナーみたいに、ある程度まとまった内容でないと話にならないようなものならともかく、こんなこと思ったよ、ここ行ったよ、みたいなのは、勢いのあるうちに書いてなんぼだと思うのです。
長々しくなったけど、要するに、日記じゃないコンテンツをさっさと書きたいからCMS導入することにしたということなのです。
内容についてはもう少し検討が必要になりそうなので、WordPressのページを公開するのはもう少し先になるかと思います。

で、今日はAnpanatorを正式版として公開。
プログラムの修正がほぼなくなってきたとか、ベータ版でいつまでも引っ張る意味もないと考えたので。
正式版にするにあたって、テキストと、ユーザーインターフェースあたりを少し修正しました。
ルールも微妙に変わっていますが、今まで大丈夫だったことが即NGになるようなことはないので、気が向いたときにでも見ていただければと思います。

アンパンマンDB

更新通知はしていませんが、モバイル版でのサムネイルを高解像度化しました。
順次適用されていきます。
なお、HTML5.1を使っているので、かなり新しいブラウザでないと、従来の低解像度版のサムネイルが表示されます。

アンパンマン最新情報bot

長らくアンパンマンこどもミュージアムの最新情報が取得できていませんでしたが、ミュージアムのサイトリニューアル内容に合わせて、情報取得プログラムも改修しました。
他にもうまく情報が取得できていないサイトがあるので、ぼちぼちそっちも調査しようと思っています。

アンパンマンDB

コメントに認証追加。
普通の人には出ませんが、要注意な人には出てきます。
認証が出るだけでは特に何かペナルティがあるわけではないので、具体的に何かしていない人にも出てくるときは出てきます。

Anpanator

ベータ7公開。
最後までキャラクターがわからなかったときの検索機能を改善しました。
同じキャラクターの表記ゆれは一つの名前に名寄せしていたのですが、今までは正式な名前でしか検索できず、表記ゆれのほうだと見つけられませんでした。
これが、表記ゆれのほうで検索しても、正式な名前のキャラクターが出てくるようになりました。

アンパンマンDB

管理メモの高速化など。
SQLはどのように組めば速いのかというのは、実装に大きく依存する。
それがよーくわかりました。
テストサーバーと公開サーバーで2種類のSQLの速度が逆転していました。
それも大幅に。
ちなみに、速度差を調べたのは、データの存在をINNER JOINで調べるかEXISTSで調べるか、というものでした。

アンパンマンDB

声の出演やスタッフクレジット、変身や変装などの、組み合わせリストの検索に対応しました。
オープニングクレジットから探す場合は「OP:項目=名前」、エンディングクレジットから探す場合は「ED:項目=名前」、声の出演から探す場合は「声の出演:キャラ名=人名」の形式です。
変装や変身も同じ要領で。

変装で例を挙げると、
「変装:アンパンマン」は変装する側かされる側のどちらかにアンパンマンが入るパターン
「変装:=アンパンマン」はアンパンマンに変装するパターン
「変装:アンパンマン=」はアンパンマン「が」変装
「変装:アンパンマン=ばいきんまん」はアンパンマンがばいきんまんに変装
となります。

Anpanator

ベータ4。
質問追加に関してバグがあったので修正しました。
Mifuminator側のバグだったので、そちらも併せてコミットしておきました。
あとは、嘘回答対策をもっと強化したいところですね。

アンパンマンDB

管理画面を強化。
入力補完のかかる場所では、書く順番を考慮して候補を出すようにしました。
例えば、声の出演の項目では、アンパンマンの次はばいきんまんに決まっているのです。
ならば、アンパンマンが入力されていれば、次の行は、「ば」を入力するまでもなくばいきんまんを出せるのです。
声の出演を例に挙げましたが、オープニングやエンディングクレジットでは、似たような項目の羅列が多いので、特に効果を発揮しそうです。

MifuminUITypeEditorとアンパンマンDB

昨日言っていたライブラリの件ですが、TGWSではバイナリを配布し、GitHubでソースコードを公開する方針にしてみました。
普通の人が普通に使う分にはDLLを参照し、ソースコードを直接使いたければGitHubからクローンすればいいのです。
ソースコード本体は共有プロジェクトに入れてあるので、共有プロジェクトを参照すれば、プロジェクトごとソースコードとして取り込むことができます。
アップデートがあれば、最新版DLLに差し替えるか、Gitリポジトリをプルしてくれば完了です。
ソースコードで使っていて、カスタマイズした内容があれば、それはきっとGitが知っているはずなので、それを手掛かりに開発者がなんとかできることでしょう。
ひとまず、EncodingEditorとEnumFlagEditorが似たような内容だったので、この方式の先駆けとして、一つにまとめてMifuminUITypeEditorとして公開しました。
今後も、似たようなものをまとめつつ、DLLとソースを再利用しやすい形で配布していこうと思います。

アンパンマンDB。
タイトルジェネレータの管理画面を作りました。
追加しか対応していませんが、とりあえず新キャラクターが出てきたときや変わったタイトルのときには素早く対応できるようになりました。

アンパンマンDB

タイトルジェネレータの管理画面作成中。
さすがにいつまでもSQL直打ちじゃ効率が悪すぎるのです。

TGWSAdmin

ニュースチェック系にテスト機能を入れました。
そして、データの修正機能も付けました。
で、アンパンマン公式ポータルサイトの更新情報がこれでやっと配信できるようになりました。

冒険日誌アーカイブとアンパンマンDB

冒険日誌アーカイブ。
過去に消えた画像も、情報が残っている分は復活完了。
いくつかサルベージしきれなかったものはありました。
文脈から考えて当てはまる画像は探せなくもなさそうですが…とりあえずそれは後回しで。
あと、キャラクターごとに一覧表示もできるようになりました。
広く使ってもらうようなコンテンツではないので特に更新通知などはしていません。

アンパンマンDB。
10月上旬ごろからペナルティの仕組みが仕事していませんでした。
プロフィールの読み込みで、ペナルティ情報のないデータがキャッシュされてしまい、ペナルティ情報を読み込めていませんでした。
このせいで迷惑なお客の動きが止まらなかったのですが、直したので、止まっていた1ヶ月余りのペナルティが一気に適用されます。
なお、ペナルティの逆で、まともな活動をしていれば制限が緩まるというのも止まっていたのですが、それも直りました。

アンパンマンDBと日替わり紹介botと冒険日誌アーカイブ

アンパンマンDB、URLから編集機能がぽすれんに対応しました。
日替わり紹介bot、商品画像のツイートに対応しました。
冒険日誌アーカイブ、自分のは全キャラ分登録し終えました。

アンパンマンDB

データ側の更新を中心に行っていました。
更新履歴に出ている目立った更新のほかに、Anpanatorのデータや、その他定型的なデータの補完などを行っていました。
こういうのってどうしても自動化が難しいんですよね。
かなりの部分を自動的に補助できるようになりましたが、最終的な更新作業はやっぱり手動です。
あと、内容を書けなくてもページだけ用意しておく意義もあるので、そういった内容のないページもいくらか作りました。
もちろんすぐ書けるものは書きますが、それが無理そうなところは無理せずに、ほとんど空白ページです。
システム的な部分の更新としては、商品画像の表示不具合と、先ほど説明した空白ページをGoogle検索とかに出ないようにする修正を行いました。

<前 次>