yasudacloudの日記

北海道に住むソフトウェアエンジニア

将棋の学習ツール開発

ここ一年ほど将棋の大会にちょこちょこ出場するようになりました。

アマチュアの大会は初心者向けの優しいものもあるんですが、いわゆる将棋ガチ勢みたいな強者向けの大会が多いです。そして出場回数が増えるということはガチ勢と対局する機会も増え、打ちのめされて凹む数も増えるわけです。

最近特に壁を感じるようになって、基礎から学習しようと思い至りこの記事のタイトルに繋がります。

自身の課題について

自身の一番の課題に"定跡全然知らない"問題が挙げられます。

一般的には初学者の段階で将棋教室や棋譜並べをして学ぶことが多いと思いますが、自分の場合はその道を通っていませんでした。将棋アプリの早指しで何となく戦型を覚えたり、YouTubeやプロ棋士の対局を観たり、雰囲気で指していたんですね。

最近は本を読む習慣が身についてきたので符号多めの書籍を読むのも苦に感じなくなってきました。が、一手毎の細かい違いを覚えるのが結構苦手なので書籍や動画で知ったことを整理して反復しないと意味がないという結論に達しました。

将棋SaaS  コマノートの公開

前述の問題を少しでも軽減すべく、棋譜の管理ツールをSaaS化しました。

shogi.yasuda.cloud

SaaSと呼ぶのは少し大袈裟かもしれません。書籍やネットで紹介されている定跡の棋譜を整理するためのものです。自分用にメモ帳の延長みたいな位置付けで作ってたのですが、だんだん凝ってきてログイン機能やブログ記事を書く機能を設けてしまいました。ローコスト運用に重きを置いており、特にマネタイズは考えていないので無料です。

所定の棋譜フォーマット(KIF)で入力すればこんな感じで棋譜ビューワーで表示されます。

まあ、最低限なのでシンプルです・・。

構成

技術スタックをさらっとご紹介。

Web側をNext.jsのSSRで構築し、APIをCloudflare Workers(Hono)を使うことで運用コストが爆安になりました。データはR2、及びD1に保存。認証はCognitoのユーザープールを利用してこちらも当然無料枠。

あと棋譜表示にはOSSのKifu for JSを使っています。大変感謝🙏

他のサービス

つい先日、将棋YouTuberのSugarさんが将棋の学習のためのラーニングサイト(サブスク)、令王将棋教室を立ち上げたそうです。

reioushogi.jp

無料公開されてる資料をみたところ、動画やスライドで定跡を学べるようです。自分にとっては良いタイミングで魅力的ですが、、将棋のサブスク結構入ってるのでちょっとな〜と悩み。

他の話題だと、水匠が候補手について解説してくれる新機能が話題になりましたね。まだ級位者向け?の位置付けになるようですが、進化が早い業界なので大変期待しております。

www.youtube.com

おまけ

本件とあんまり関係ないですが、将棋盤と駒の3Dオブジェクトのフリー素材を見つけたのでthree.jsを使って棋譜ビューワー化してみました。

KIF形式の符号を元に盤や駒台の位置を計算して動かしているので、例えば将棋アプリや将棋DBなどの棋譜情報をコピペで持ってくれば簡単に動かせます。もちろんスマホでも表示可能。

駒の書体がちょっと不自然な感じありますがフリー素材なのでご容赦。。

最近は将棋VTuberもちらほら出てきており、3D化してキャラクターコラボとか360度対応できれば需要はあるだろうか?と思い模索中。これはWeb上で動作するものですが頑張れば360度動画としてYouTubeにアップできるらしい・・・とChatGPTが言っておりました。

text to speechも年々精度が良くなってるので、棋譜読み上げも違和感がなくなってきているようです。

また何か進展あったらご紹介します。