「Webアプリ」に関する日記

Misskey

何もいじっていないMisskeyの仕様確認のため、ローカルでMisskeyインスタンスの構築を試みていました。

Misskey構築の手引き | Misskey Hub
こっちの方は、手順が途中でおかしくなってしまって、断念。
もうちょっとLinuxとサーバーに詳しくなってからリベンジ…するかもしれないし、しないかもしれない。

Docker Composeを使ったMisskey構築 | Misskey Hub
素直に推奨されている方のDocker Composeを使う方法にしたら、おおむねうまくいきそうな感じで、あとは起動するだけになりました。
まあ、起動してからどうなるかはわかりませんが…。

ふわふわふにゃ on web browser

今度こそ、スマホで勝手にリロードされる問題、解決しました!
Pull-to-Refreshというキーワードに辿り着くまでが長かった…!

前回みたいにいきなり公開して実は改善してないというのは避けたいし、ゲームバランス方面でもう一個いじりたいのもあるので、ちょっと時期を開けてから新バージョンは公開しようと思います。

ゲーム記とドラゴンクエスト10とふわふわふにゃ on Web Browser

ゲーム記

Miiverseから取ってきた画像の掲載と、商品リンクの拡充と、カービィハンターズZのページの更新。
体験版追加してみようかとか思ってたけど、今更語れるものは今はなかった…。
オクトなんとかは公式サイトが見当たらないし…。

ドラゴンクエスト10

第8回アストルティア★ハッピーくじを全キャラで購入。
カジノのイベントもやっているようだけど、個人報酬は普段と大差なさそうだし、私が参加しなくても達成しそうな勢いなので、今回はスルー。

ふわふわふにゃ on Web Browser

スマホでやっていたら更新が暴発する件の解消法を思いついたので、試してみようかと思います。
draggableをfalseにしたら何とかなるかな…。

WordPress

WordPressを導入しようかと検討中…。
以前も検討したのですが、具体的にやることが思いつかず、他で足りるという結論から、結局使わなかったのでした。

VPS+CentOS7+Nginx+ASP.NET

昨日まで構築していたVPS環境は、設定がいろいろしっちゃかめっちゃかになってしまったので、いったん初期化しました。

んで、DockerとMastodonは後回しにするという前提で、FTPサーバーを確実にインストールすることから始めることにしました。
とにかく、ややこしい設定にするとたちまち詰まるのは目に見えているので、シンプルな設定で済むように、コマンドを打つときに使っているSSHを暗号通信にそのまま使えるSFTPでやることにしました。

VPSでやりたいことは、Linux(ここではCentOS7)で、C#により記述されたプログラムを動かすサーバーを動かしたいので、Nginxと.NET Coreをインストール。
WebサーバーはApacheでもよかったのですが、どうせWebサーバー本体はHTTP/HTTPSでのアクセスへの玄関口としてしか使わないし、Nginxのほうが新しくて軽くてシェアも伸ばしているらしいし、最悪、背後でApacheサーバーを動かすこともできると分かったので、新しいサーバー技術の勉強も兼ねて、WebサーバーはNginxにしました。設定自体は案外簡単で、HTTPで公開するだけなら、ちょろっと設定ファイルをいじって、Nginxを自動実行するように設定するだけです。

.NET Coreのインストールも簡単で、マイクロソフトの公式サイトに書いてある手順を踏むだけ。昨日はASP.NETを動かすという場面で詰まってしまいましたが、ファイルのアップロードができなかったために詰まっていたので、その点も解決済みです。こちらも、ASP.NETのサーバーを自動実行するように設定しました。

そして、実際にできたのが、以下のサイト。テスト用なので、いずれ消すとは思いますが、ひとまずはうまく動いているようです。
http://linuxtest.tgws.plus/

あとは、VPSでいろいろ定期実行したいこともあるので、crontabについても調べていきたいところですね。

以下、参考にしたサイト。

WordPressとTGWS_Wiki

いろいろ試していたら、WordPressの.htaccessが関係ないところにまで効いてしまっていました。
一部のページに影響があったかもしれません。
WordPressのページは、まだ一般公開はしていないものの、見られて困るようなものは置いていないので、セキュリティ的なリスクはないはず。

TGWS_Wikiの改良。
表組に対応。テーブルはヘッダ行を付けたり好きな属性をつけられたりします。
以前検討したMarkdownを使う必要はひとまずなくなりました。

ヘッダ行をつけられるよ
縦結合横結合
スタイルセル単位のヘッダ

プログラミングコーナー

プログラミングコーナーこそWordPressとかのCMSで実装したらいいんじゃないか?と考えています。
理由は主に3つ。

  • ページごとの個別のロジックや凝った構造があるわけでもないからCMS任せでも大丈夫
  • カテゴリなどの、似た記事を探す機能が豊富
  • コードのシンタックスハイライトをJavaScriptに頼らず自動化できる!

過去のコンテンツを移行するかどうかはさておいて、検討の価値はあるんじゃないかなと思います。

Repeat Task

もうちょっと使いやすく改良。
evalを使って手っ取り早く実装した都合で、evalの制約を色々受けてたんですね。
でもやりたいことって基本シンプルだから、より簡便な記述で済むように、お決まりの部分は自動補完するようにしました。

ます…なんとかに少し興味。
せっかくオープンソースの分散型で誰でもサーバーを立てられるんだから、自宅サーバーで、それが無理でもVPSとかで自分だけのサーバーを立ててみたいですね。

CocosSharpとMarkdownとWordPressとアクセス統計とMifuminator

CocosSharpとか使えるかなーとか思ったり。
サンプルがビルドできないけど。
funyakのフロントエンド開発には何を使うかいまだに決まってないんですよね。
一応WPFでそれっぽいものは作っているけれど。

各コンテンツで使っているマークアップ言語についても検討中。
アンパンマンDBははてな記法に似せて作ったTGWS_Wiki構文を使っているけど、手早く自作したものだから、機能不足なんですよね。
Markdownが最近ははやっているらしいけど、あまり私の理想には合わないような…。
段落を自動で入れてくれて、テーブルを簡単に作れて、柔軟なリンク指定ができて、普通の文章でマークアップが誤爆しにくく、カスタマイズ性が高い、というのが欲しいんですよね。
やっぱりTGWS_Wikiを改良するかな…。

WordPressのアカウントを管理者アカウントと投稿用アカウントに分割。
管理者アカウントは表に見せたくないものでね…。
いざWordPressを設置してみると、他のサイトで間に合うことが多くてなかなか最初の記事作成に着手できないですね…。

恐らく私以外誰も見ていないであろうアクセス統計のページを微修正。
ランク外に出たものは統計の対象外になってしまうために、再びランクインしたときに、ランクアップしてきたのか、全く新規の項目なのか区別がつきませんでした。
ランク外に出て見えなくなってしまった項目も、内部的には記録するようにして、正確なランク変動がわかるようになりました。

Anpanatorの実装のMifuminator、Packagistに公開しました。
mifumi323/mifuminator - Packagist
使い方とか全然書いてないし、requireしただけでは何も動かないので、まだ一般には使い物にはならないとか思いますが、Packagistの練習も兼ねて。

応答速度計測とWordPressとAnpanator

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

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

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

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

How Secure Is My Password?

本家見たら結構バージョンアップしていたようですね。
バージョン4.0だそうで。
よく使われるパスワードが500から10000に増量、パスワードの良いところ、悪いところも指摘してくれる、安全度に応じて背景色が変わってゆく、などなど、いろいろ変わっているようです。
ただ、もう配布はしていないようなので、これをまた移植するというのは無理がありそうです。

How Secure Is My Password?

なんだか急にアクセス数が伸びていました。
どこかで紹介されていたようですね。
今となっては少々古いコンテンツなので今の状況に合わせたバージョンアップも必要かもしれませんね。

無題

自作Twitterクライアントの置き場所だけとりあえず作っておきました。
それに伴い、Webアプリの一覧ページをリニューアルしました。
一覧だけのリニューアルでアプリそのものが強化されたわけではないので更新履歴には入れていません。
今はまだ一覧に載せるべき追加情報が何もないのでリストがテーブルタグで書き換えられただけですが、将来的にはアプリの説明や最終更新日などを表示できるようにします。

無題

なんかTwitterの公式クライアントが気に食わないので、自作しようかと考えています。
ええ、自作です。他社クライアントなんて使いませんとも。
とりあえず、トレンドとかお勧めユーザーみたいな雑音は出さない。広告は言わずもがな。
検索は常に「全て」を検索。公式デフォルトの「トップ」は見たいものが隠されてしまううえ、まるで無関係なツイートがなぜか表示されてしまう。これは検索と呼べる代物ではない。
リツイートは原則として表示。ブラックリスト方式で非表示。「○○がリツイートしたツイートは無視」、「○○のツイートはリツイートされてもタイムラインに出さない」の2点でOK。
URLはリダイレクトを展開して直接表示。リンクは面倒なので貼らない。
ハッシュタグは普通に扱う。

無題

How Secure Is My Password?の日本語版作ってみました。
英語で何undecillion yearsとか言われても分からないので、何澗年とか、そういった分かりやすい日本語表現に。
え?日本語でも意味が分からないって?

あとは、SQLite3を使えるようにするためにPHPを再インストールしたり、パラメータ付きでDigest認証に失敗する問題を解消したり、いろいろやっていました。

無題

TwitterのAPIについて調べてみました。
これなら更新情報を基に自動つぶやきもできそうです。
いろいろ考えていたのですが、Twitterは更新通知と思考整理の場になりそうです。

あと、日記に「外部サイト」カテゴリを追加しました。
昔からいろんなサイトを使ったことを日記に書いてきたのですが、これまでそういった日記をつなぐカテゴリがありませんでした。
便利なWebサービスをこれからも紹介していければと思います。

無題

とりあえずSQLiteManagerのインストールには成功しました。
パスワードの設定もちょっと調べたらできるようになりました。
ただSQLite自体がMySQLに比べて機能が少ないというのがちょっと不安どころではありますね。
AUTO_INCREMENTに相当するものはあるのでしょうか。

簡単エディタ

ふにゃふにゃのページを更新しました。
開発メモ。どうやら以前のエディタは難しすぎてエディタ作者自身にも手に負えない代物だったようで、以前の何でもできるエディタは残しつつも、新しい簡易エディタを作ることにしました。

  1. ペイントの鉛筆ツールで曲線を描くかのごとく自由で簡単で直感的な直線生成
  2. ドラッグ&ドロップで置きたい場所に置ける画像
  3. 必要なファイルは全部ステージファイル一つに埋め込み、最低限動作に必要なファイルを極力減らす
  4. エクスプローラからドラッグ&ドロップで勝手に背景としてインポートされる一枚絵
  5. その他必要なファイルはインポートできるようにする。インポートしたファイルは関連付けられたプログラムで開く
  6. いろいろあった設定は必要最低限まで減らす。あとは自動設定
  7. 当然の如く用意されるすり抜け防止策
  8. ステージ作者が最初に使いたがるだろう機能をコンパクトにまとめたツールボックス
  9. ステージ作者を困惑から救う優れたヘルプシステム
だいたい開発理念はこんなもの。

そして、Bomber丸Worldのページも更新。
戦闘画面がついに出ました。
イメージ画像ですけど。
なかなか面白いことになっていますよ。

そんでもって、RPG±0、さしあたり自分で不便に思っていた右クリックの挙動を統一。
スポイト機能と右クリックメニュー、両方一気に実行されます。

チャットの人工無能ちゃん、以前のようにファイルに入れておくよりも、mySQLのデータベースに入れておいたほうが管理しやすいと思ったので、mySQLを勉強し始めました。
とりあえずphpMyAdminの使い方を思い出しつつどんなデータがどう使われるのかを覚えていきます。

ふにゃさんは今日はBGMを作成中。
先日言っていた違和感はほぼ取れたように感じます。
メロディ以外のパートは修正するときの補助のために入れた音で、後ではずすかもしれません。

1125326932.mid