前回完成したカロリーメイト、さらに別バージョンが納品されてきた。これはバニラ味だけど、フルーツ、メープル、チーズ、チョコの5種類が揃っていた。

この焼き加減、もう本物にしか見えないんだけど・・・どれだけ本気なのか。どういう意味があるのか。

ただ、創作する立場としてはよく分かる。だいたい何か作る時って、「誰か」じゃなく「この人」にこれを魅せたい、というのがあって、職場の物理学科の人に物理シミュレータを見せて変に思われたいとか、楽器経験者のはっぱさんに楽譜作成ソフトを見せて苦労した点を分かってほしいとか、そういう気持ちで作っている。これも、職場の人に・・・なんだろう、呆れられたいという気持ちが詰まっていますね。

前回のカロリーメイトで満足していたら、最新バージョンが納品された。

サイズ感が改善された他、塗装もされたことで色合い・手触りも本物そっくり。もう売っててもいい品質。3Dプリンタとプラモ製作技術が組み合わさるとここまでになるんですね。

以前、はっぱさんに3Dプリンタでカロリーメイトを作ってもらった。そんな話を会社でしていたら、何故か新しいカロリーメイトが手元にあった。というか職場のプロの方が作ってくれた。

以前私がモデリングしてはっぱさんに作ってもらったカロリーメイト。チーズ味。

そしてプロにモデリングして3Dプリントしてもらったものがこちら。フィラメントの関係でチョコ味。

これは本物そっくり、手触りも本物ってことでひとしきり盛り上がった。てことで本物を買ってきてみて見比べてみた。

あれ? カロリーメイトってこんなのだったっけ? なんかイメージより小さいし、穴も大きい。というか「どっちがカロリーメイトか」って言ったら3Dプリンタで作った方じゃない? とゲシュタルト崩壊した。

というわけで最近の3Dプリンタとモデラーはすごいよね、って話。

TBS「ラヴィット!」でタイピング企画があり、Weather Typingの対戦が放送された。期間限定だけどTVerで公開されている。

メールで相談を頂いていたが、準備期間がかなり短く、私も質問などに最低限しか回答できない状況だったので、生放送で大丈夫なのかな、と思ってたけど、無事終わって何より。大会でも8人対戦なんてめったにないので新鮮だった。

速度的には300kpm~400kpmくらいだったので、まあまあレベルは高い気がする。最後の1ポイントになったら足が震えるというのは実際対戦してみれば分かるかと。

最後、手動の画面表示と実際の得点が途中で1点ずれたので幻の10問目になっていたり、勝敗ルールがトータルポイントになっていたので勝敗が変に見えたりしていた。別途観戦モードPCを用意して全員のポイントを確認できるようにしたり、ルールをワード数に変更したりすればよくなるんだけど、さすがにそこまでは、と。

ソフト側でもいろいろと改善したいところはあるんだけど、作業時間が取れない。11月くらいから普通に休日は休めそうなので活動再開できるかな。

ALL ABOUT マイコンBASICマガジンⅢから帰宅。今時のイベントは結構配信もあって、参加した後で配信を見ながら感想を書けたりするんだけど、このイベント、コンプラ的に配信が無理なので仕方がない。とはいえ今回はそこまで(いい意味で)ひどい話は出てないのかな。毎回恒例の「危ない話が多いからネタバレ投稿はやめてね」という注意事項もなかったし。この規模ではさすがに拡散は避けられないってことで。

私のPC歴、ベーマガとイベントについては第一回第二回SP回の感想を参照。大阪含めて全通。

イベント参加まで

2018年大阪で行われたぶりのベーマガイベント。コロナ前にやろうとしていたというのはXで見た気もするけど、会場まで抑えていたんですね。てことで6年ぶりの開催。会場も1回目がアキバ500人、2回目が有楽町1100人、大阪が300人、今回が蒲田で1500人とかなり大きくなり、これは参加せねば、ということでチケット参戦。サイトが重くて15分くらい再試行して9801席を購入。PC-6001ユーザだけど。

当日。会場は散歩範囲なので歩いて向かいつつ、途中暑すぎてワープもしつつ蒲田へ。もちろん大阪で買ったベーマガ坊やTシャツを着用。

イベントの終了時間が18:30までになってるけど、そんなわけはないので、近くのやよい軒でしっかり栄養補給して会場入り。開場の12時ぴったりくらいに到着したが、既にだいぶ並んでて30分ほどかけて入場。

物販。大阪の時も結構な混雑だったのだが、東京はさすがに人が多すぎて、開始前、休憩中、終了後、行列が長すぎて諦め。欲しいものは大阪で買っておいてよかった。

会場。1階S席のちょうど真ん中くらいだったが、出演者の表情も見えてかなり見やすい。音もなかなか良かった。とりあえず2F席からの眺めを見たりしながら座席へ。客層は50代以上のおじさんばっかりかな。S席から見ると、つぐみさんがほんとに会場内で紅一点。

実録マイコンソフトコーナー

恒例の伝説ボーカロイド「6601」による挨拶から始まり、OPムービー。

第一部はマイコンソフトコーナー。大阪でやっていたコーナーをさらに大きくした感じかな。当時PC-6001でタイニーゼビウスをプレイしていたが、突然送られてきた投稿プログラムをベースにしていたとは。

サプライズはPasocomMini PC-8801 mkII SR。第3部でえらく小さいマイコンが置いてあって、実際にBASICの画面が映っていたので気になっていたのだが、実は実機だった。中身はラズパイ+エミュレータなのかな。フロッピーとかがいやにリアルだけど。

令和に復活!人気連載リバイバルコーナー

自分的にはメインのプログラムコーナー。今回は移植テクニックという具体的なコーナーがテーマで楽しみにしていた。

毎回興味深い森先生の題材は、大きなキャラクターの扱い。今(より昔)でいうアスキーアートですかね。普通に複数行の文字列にすると遅いので、CHR(カーソルキー)で単独の文字列一行に収めるという話。なるほど。

で、断空我先生が、コモドールでは直接文字化けみたいに書けるという話をしていて、それを今知ってどうするんだ、というのもあるわけだけど。ただこのコーナー、地味だけどめちゃくちゃ面白い。個人的にはこういう「リソースが限られていたからこそのテクニック」みたいなのをもっとたくさん見たい。こういうやつ

Bug太郎先生はマシン語のプログラムをリベンジ。イベントIIのときのファミベのよっしんさんも衝撃だったけど、爆速。

前回もそうだったけど、最後の森先生の話はやっぱり深い。ベーマガはプログラムを自由に改造できて、好奇心を存分に刺激する本だった。

ゼビウスのコーナー。イベントIISPのときにアンドアジェネシスを倒して盛り上がっていたけど、今回は16面クリアをアーケード筐体で挑戦。正直、これが40年前のゲームかという、40年!? まじかぁ。でも音楽も雰囲気も、プレイを見ているハラハラ感も、今でも全然面白い。

サプライズはチャレアベの復刻。知識不足でコメントはできないけど、バトルオブは前回買ってます。

ベーマガライターズメモリアルトーク

ここはネタバレは書かない方がよいのかな。これまでのイベントでも各コーナーを扱ってきたけど、全部入りみたいな贅沢コーナー。どのコーナーも情熱を持って作られていて、今では各所で活躍している人もたくさん。

特にOFコーナーは今まで出てなかったと思うので興味深かった。OFコーナーはOverFlowの略で読者投稿なのだが、小学校時代はこれを中心に読んでいた気がする。さすがに実際の会話とは思ってなかったけど、編集部の方がちゃんと書いていたのか。CheckerFlagはちょっと衝撃だったけど・・・。

サプライズはCLASSIC_GAME_WORLD_MUSEUM。完全なる趣味ということで楽しみですね。レトロPCのMuseumも欲しい。

まとめ

終了19:30だったので6時間半の大ボリューム。今回、大橋編集長の勇退記念ということで、いろんな関係者が家族のように参加していた。そこに我々読者も呼んで頂いた感じで、直接ありがとうを言うことができてよかった。

最後の挨拶、自分は遊態好奇高励者で、これからも技術の国の復興を目指していく、みたいな話。やっぱり会場の中で一番元気な人だなあ。


今の日本は技術者にあまり興味がなくて、インターネットもビジネスばっかりで面白くなくなっている感じはある。そんな中でも好奇心とモノ作りの楽しさを根源として、次代につなげていこうというのは大事ですね。私も職業の方が忙しすぎて開発ができてないけど、何かしないと。

特になし

タイピング日本一を決める大会「REALFORCE TYPING CHAMPIONSHIP 2024」を日テレスタジオで観戦してきた。日を置くと書けなくなってしまうので最速感想。ネタバレあり。

去年までの観戦記:RTC2017RTC2018RTC2019RTC2023

配信:YoutubeTwitch

全般

今回もありがたいことにWeather Typingを使用頂けるとのことで、協力させてもらった。お話を聞いたのも割と直前だったので、依頼を受けて打鍵音を修正したくらい。現地ではあまり分からなかったけど、配信だと赤側の音と青側の音が少し左右に振られている。どのくらいパンするとよいのか分からなかったので、どんな感じですかね。

タイパー視点での感想

まず会場が広い。去年から観客席がかなり大きくなっていた。去年も感じたが、知ってる顔の割合が少なくなっていて、身内の大会から一般の大会に成長している感があっていい。

内容としては、いったんの世代交代みたいなところが見られた。上位選手はほぼ全員互角だったので実際にはそこまで差はないんだけど、決勝戦常連のmiri選手とmuller選手に勝ったくわな選手対三山羊選手の決勝戦、さらにかな入力の初優勝と、これまでの歴史を塗り替えた感がある。かなについては、正直このルールでかなが優勝できると思ってなかった*ので、かなりの衝撃。

*Weather Typingでは、かなの1打鍵はローマ字の1.5倍の価値としている。例えばかなの「さ」とローマ字で「sa」を比べると同じ1打鍵でも2倍の差があり、Weather Typingのワード全体の統計を取ると平均1.5倍。それを前提としたランキングでもかなが上位。なんだけど、かな入力はキーボード4段打ちだったり、打鍵数が少ない影響で正確性を回復しづらいので、緊張感のあるオフライン大会かつ正確性重視ルールではかなり不利になる。

その上で今回、三山羊選手 vs muller選手のかな対決で1100kpmとか出ていたけど、こんな速度で正確に打たれるとさすがにローマ字は勝てないのか。

てことでいったんは世代交代に見えるけど、次回はレジェンドの恐ろしさを魅せてくれるのか、さらに新しい歴史になるのか、楽しみなところ。

開発視点での感想

今回、現地観戦しつつ少し運営側を見せて頂いた。いつも以上にトラブルに怯えつつもいろいろと参考になった。

とりあえず現地で気になったところだけ配信で確認。

一回戦 miri選手 vs riafi選手。riafi選手が最初の2ワードを打てなかったことがあったけど、配信を見る感じ、ウィンドウのフォーカスが外れてた感じかな。ミ田キーを押してしまって打てないというのも発生しているようなので、何かしら対策ができないか。

一回戦 セレナーデ☆ゆうき選手 vs muller選手。最後ラグで試合終了と勘違いしたというところ。配信(観戦PC)ではラグっぽくは見えなかったので、対戦PC側でラグがあった感じだろうか。1回戦最後の試合だったので、連続稼働で重くなる現象がまだ残っているのかな。ちなみに大会後にセレナーデ☆ゆうき選手からソフトのせいにしてすみませんと謝られてしまった。面白いだけでなく人間性も素晴らしい方ですね。

全体

今回からトロフィー(?)に優勝者の名前を刻んでいくとのこと。ということは来年度以降もある、という宣言と受け止めました(私はその辺りは聞いてないので勝手に言ってるだけ)。

大会も身内の大会から一般化して、新しい人が優勝して、今後も楽しみ。な一方で、前回も少し書いたけど、Weather Typingは来月で23周年という古いソフト。大学生がコンセプトの重要性も分からないまま適当に「Weather」って付けてもはや謎の名前になっているくらいのソフトなわけで、タイピングe-sportsのポテンシャルを活かせる新しいソフトウェアの必要性はやっぱり感じる。私も新しいタイピングソフトを作ってたりはするけど、100連勤とかの合間に進めるのは難しくて、誰か作りませんかね。

ALL ABOUT マイコンBASICマガジンⅢ申込み。12:00に待機してチケットページを開いてみたが混雑中が続いてなかなか取れず。何度かリトライした結果、12:07くらいにようやくつながって、S席のちょうど真ん中くらいが取れた。

S席だけでも500席近くあるのでしばらくは大丈夫かと思ったけどその後数時間でS席と2A席が売り切れ。もう半分近く埋まったってことかな。締切5/18までなのでどうぞ。

去年からベーマガイベントが復活するという情報があったが、正式に発表された。第一回が秋葉原で500人規模、第二回が有楽町で1000人規模、第二回のSP版が大阪で300人規模、今回は蒲田で1500人規模、かな? 段々大きくなっていってるのがすごい。

ここ2年くらい職業の方で組み込みの勉強が手一杯で、本業の開発が全く進んでいない。ただ、そろそろ組み込みの方も多少知識が追いついてきた感があるので、今回のベーマガイベントで開発モチベーションを上げられるといいなあ。まずは国会図書館でベーマガを読みに、行ける時間があるかなあ。

今年も「REALFORCE TYPING CHAMPIONSHIP 2024」が開催される。予選が終わって3/9に日テレの会場にて本戦。私も少しe-typingにトライしたけど予選突破はできず。ていうか1000位にも入れないけど…

今年もWeather Typingとして協力させて頂くことになっていてありがたい。去年の動画を見直しておかないと。

進捗なし。STM32の評価ボードをいくつか買って試している。

進捗はなし。ほぼ4ヶ月ぶりの休日になるけど勉強しないといけないことがたくさんあって何もできない予定。

変わらず忙しすぎてDenasu関連の進捗なし。

必要があってOpenAIを使おうとしたら、Creditの試用期限が切れてたので課金してみた。とりあえず$100課金してちょっと遊んでみたけど1円未満だったので結構遊べそう。

以下はWeatherTyping用の問題文を作ってもらったもの。もう少し長めに生成してもらいたいんだけど、ちょっと試した感じ難しかった。API呼び出しできるので、ウェザタイから呼び出してワード生成を任せることもできる。やるとしたらワードを作る度にお金がかかってしまうので、有償オプションになるのかな。ユーザのOpenAIトークンを入力してもらえばいいかも知れないけど、そういうモデルにしてるサービスってあるのかな。

ちなみにワードサーバの形で実装すれば誰でもChatGPT使用のウェザタイワードサーバを作成できるので、プロンプトエンジニアの方々、是非よろしくお願いします。

ずっと時間ないのでDenasu関連は何も進捗なし。

先月PCを買い換えたけど旧PCも普通に使えるスペックなので、Ubuntuを入れてLinux PCにした。通常PCにはMicrosoftの署名が入っていて、Microsoft署名以外のOSは起動できないが、Ubuntuの1stステージブートローダ(Shim)はMicrosoft署名がされているので問題なし。みたいなSecureBootとかSELinuxとかの勉強中。

Cドライブの容量が足りなくなりそうになったので新しいPCを衝動買い。

2018年からSurface Book 2を使っていてもう5年だけど、特に不満点はないのでそのまま後継機のSurface Laptop Studioの一番いいやつにした。CPUが第8世代->第11世代、メモリが16->32GB、SSDが512GB->2TB、GPUがGeForce GTX 1060->GeForce RTX 3050 Ti。全体的に性能は2倍くらいか。ヨドバで在庫セールしてたので30万円。会社補助とヨドバポイント還元を合わせると25万円くらいあるので実質5万円。

来週あたりMicrosoftから次の機種が発表される噂があるけど、日本で発売されるのは年度末とかになるだろうし、40万超えるだろうしってことで。

ゲーミングノートやデスクトップだともっといい性能で安いのがあると思うけど、例えば会社で使っているDELLノートは爆音と強風がすごい。それに比べてSurfaceシリーズは負荷をかけてもファンの音がしないのがいい。あとSurface Dockとか純正USB-Cディスプレイ変換とかペンとかも流用できるし。

まだセットアップ中だけど、Surface Book 2からの移行で違和感は何もなし。タブレット変形ができるので液タブとして使えるかも? Surface Book 2は画面取り外しができたんだけど、DockやらGPUやらが切り離されてしまうのでタブレットとしては使ったことがない。Surface Laptop Studioは手前に倒せるようになっているので、メインディスプレイと液タブみたいな形で自然に使えそう。

月󠄃記。とりあえずビルドエラーはなくなってセキュリティモジュールから作成・自動テストを作っている。やっぱり数年がかりになりそう。

今月の日記ノルマ。といっても今月もほぼ無休だったので進捗はあまりない。とりあえずウェザタイのUnity化のため、UI以外の部分をDLLにまとめて共通化を進めている。こうしておけばUI以外はTyping Fieldとも同じソースを使えるのでよさそう。現状ビルドエラーが大量に出ている状態なので一つ一つ直さないと。

月1回の日記ノルマを消化しないと。

Typing Field開発は進めたいんだけど、その前にWeather Typingロビーやランキングのセキュア化をやらないといけなくて、そうするとWeather Typing自体の作り直しが結構発生する。ついでに前々から話がでていたXamarin Formsの廃止と.NET MAUI移行の話もあって、どうせならWeather Typing 5.0にするかな、と思っているところ。

Typing FieldはUnityで作っているが、Xamarin Formsとコードベースがかなり違うので別々のソースになっている。これだとメンテもしきれないので統一したいというものある。ただ、.NET MAUIはXamarin Formsの後継なので、Xamarin Forms同様誰も使ってる人がいなくて大量のバグに悩まされる可能性が高い。ので、Unityかな。

Unityに移行するとなると、多少安定していた今のバージョンからまたしばらく不安定なバージョンが続くのが懸案だけど、自動テストを駆使してなんとか安定させたいところ。

ロードマップとしては以下なんだけど、あと10年くらいかかりそう。

  1. ロビーのセキュア化:完了
  2. ロビーの自動テスト:完了
  3. ランキングのセキュア化:完了
  4. ランキングの自動テスト:作業中
  5. Weather Typingのセキュア化
  6. ベース部分をUnityへ移植
  7. ベース部分の自動テスト
  8. Weather Typing UIをUnityで作り直し -> WT 5.0リリース
  9. Typing Field UI作成
  10. Typing Fieldのゲームデザインやり直し
  11. Typing Fieldのアセット作り
  12. Typing Field実装 -> TF 1.0リリース

まあ、常に開発していたいので、これくらい大変じゃないとやる気しないよね、ってことで。

ゴールデンウィーク終了。いろいろ必要だったのでずっとモダンな開発プロセスを勉強してた。

まず「単体テストの考え方/使い方」。以前AppiumでWeather TypingのUIテスト自動化を作って、ほとんどのテストをUIからテストするようにしてたんだけど、Appium自体が既に使い物にならなくなってるし、ちょっと機能エンハンスするだけでテストに通らなくなってしまうので諦めていた。が、この本を読むとUIテストで完全に自動テストするのはアンチパターンぽいことが分かった。もっとボトムアップに、外部仕様だけをテストするようにすればいいのか。とりあえずテストしやすいロビーやランキングからテストコードを作っているところ。

「ボトムアップ」というのは、UIは一番上位レベルのテストなので、UI仕様がちょっと変わるとテストが壊れるし、フォーカスを合わせたりスクロールしたりでとにかく動作が不安定で時間もかかる。なので、全てのケースをUIでテストするのは効率が悪すぎる。そうではなく、各クラスの動作を確認できる箇所は各クラスで確認して、その結果を前提にして上位のクラスの動作を確認して、UIのテストはUIのテストだけをすべき。そのためには実装もテストしやすいように作る必要があって、ロジックとUIを分離して、ロジックはロジックだけで高速な自動テストができるようにし、UIは単なる表示だけにして中身はロジックを呼び出すようにする。

「外部仕様だけ」というのは、内部仕様を自動テストに入れてしまうとすぐテストが壊れるので、将来的に変更のされない、というかそこを変更し直すなら当然テストコードも変更するよね、というものだけをテストする。つまり一つ上位や同じ階層向けのI/Fをテストする。こうしておくと内部実装の細かいところを変えてもテストコードは変わらないし、API名が変わるならリファクタリング機能で一括で変わるし、新しく機能を作ったならそこだけテストを追加すればいい。

で、この本もそうだけど、manningのこのシリーズの本いいですよね。「セキュア・バイ・デザイン」もすごいよかったし。


次にGitHubとCI/CD。Git自体はずっと使っているけど、そろそろCI/CD周りを勉強しないとついていけなくなっているので「Accelerate DevOps with GitHub」を読みつついろいろ試してみた。まだPart4で80%くらいまでしか読めてないけど。GitHub Actionでかなりいろんなことができて、ビルド、単体テスト、静的解析、クラウドへのコンテナのデプロイ、脆弱性スキャンみたいなことまで自動でできて、チケット管理とかクロスチェックとか、修正しないとビルド失敗も可能。なるほど、こういう風に使うのか。

機能をフルに使うにはパブリックレポジトリか有償になってしまうので、今のウェザタイで積極的に使うのは難しいんだけど、セキュリティ課題が解決したらいっそOSSにしてしまう手もある。


てことでセキュリティ。最近ウェザタイのロビーも末期になってきて、セキュリティをちゃんと実装するか廃止するか、って感じになっている。てことでTyping Fieldで実装しているセキュリティ機能をウェザタイに移植中。主にはTLS化とFIDOぽい認証。ここまでいけばロジックを守る必要はないので、あとクライアントの秘密鍵さえちゃんと守れれば、ランキングのチートも難しくなってOSSにしてもよさそうなんだけど、HSMを前提にするわけにはいかず、TPM使うのも大変。オンラインゲームでOSSにしてるようなものってあるのかなあ。というかブラウザゲームはOSSみたいなものだけど、チート対策ってどうしているのか。通信の保護をやぶるよりキーボードをシミュレーションする方が手っ取り早いからあんまり問題にならないのかなあ。

Azureセキュリティテクノロジ(AZ-500)に合格してきた。これでひとまずの目標、AWS/Azureのアソシエイト/セキュリティ取得完了。そんなに意味はないけど次受けるならDevかなあ。

てことでAZ-500だけど、今までで一番きつかった。GWにもちこしたくなかったので勉強期間は10日間。一冊しかない教本「最短突破 Microsoft Azureセキュリティ テクノロジ[AZ-500]合格教本」とUdemyの「AZ-500 Azure Security Engineer Associate – Practice Tests」114問をやったけど、さすがに問題数が足りなくてXamtopicsというよく分からないサイトで150問追加。それでも781/700点でなんとか合格。

内容だけど、Azure Administrator以上に仕様がカオス。AzureのロールとAzure ADのロールが無関係なのから始まって、なぜそこにその設定があるの、とか意味不明な仕様が大量にあって、過去と現在の仕様のどっちを聞いてるのか分からず存在しない仕様が正解だったりして、覚えてもしょうがないことが問題に出てくる。今回、Udemyで納得のいかない回答があり、問題文を検索してXamtopicsにたどり着いたのだが、ここの面白いところはいろんな人が問題にコメントを残せること。模範解答は大半答えが間違っていて、多数決の回答が載っている。コメントによる議論を見ると、これは問題が古いとか、意見が真っ二つに割れたり、問題としてもひどい。てことで、日本語の試験対策がほとんどないのもあって、少なくとも英語が苦労なく読めないと合格は難しそう。

そういえばGW前の金曜午後なんて混んでないだろうと思って予約したんだけど、大量のスーツの人がいた。新人研修の一環なのかな。

AWSの試験から少し間が空いたが、Azure Administrator(AZ-104)を受験。休日は仕事なので、どうせなら予約の取りやすい平日に受験したんだけど、結構人はいた。結果は870点で合格。

AzureはMSDNのサブスクリプションでクレジットがあるのでちょくちょくいじっていたが、真面目に勉強してみた。ただ、AWS同様、これは全体を知るだけの通過点で本命はセキュリティ(AZ-500)。

勉強期間は2週間くらいで、内容は教科書を読み込んで付属の模擬試験をやったのと、Udemyの評価が高かったAZ-104 Microsoft Azure Administrator Exam Practice Tests NEWという模擬試験を全6回中5回分やったくらい。AWSと比べた感じAzureは仕様が直交しないというか、出所不明な制約が結構あって、例外をたくさん覚えるのがきつい。

しかし、模擬試験と言いつつ本番とほぼ同じ問題がほとんどというのはどういうことなんだろう。何度も受けてちょっとずつ覚えて問題を書きおこしてるのかなあ。本来、幅広く勉強して、どんな問題でも解けるのが正しそうだけど、そういう独自問題の模擬試験があったとしてもユーザの評価が低くなって、本番と同じ問題を暗記するだけの模擬試験の方がユーザの評価が高くなるというのが仕組みとしては微妙。まあ資格試験なんて一応一通り勉強しましたよ的な意味しかないのでいいのか。

2ヶ月ぶりに普通に休みを取ったので、学生時代から20年以上通った八重洲ブックセンターの閉店前巡礼に行ってきた。専門書が目的なのでほぼメガ書店にしか行かないのだが、どんどん閉店していきますね。棚がスカスカなのが寂しい。

それはそれとして散歩してたら何故かアキバにいて、何故か千石電商で7色電子ペーパーモジュール「WaveShare 19283 4.01inch ACeP 7-Color E-Paper E-Ink Display HAT」を買っていた。スーパーのタグとかで赤が使われていて興味深かったのだがこれは7色。早速ラズパイに接続して我らがヨドバシカメラのお姿を表示してみた。表示までにチカチカして結構時間はかかるものの、表示されたもの自体は割と綺麗。電子ペーパーなので、当然電源を抜いてもこのまま残る。Kindleみたいな実用的な速度になるのはまだまだ先ですね。何かいい使い道あるかなあ。

しばらく「なれる!SE」シリーズを読んでいたのだが、全巻読み終わったので。Kindle Unlimitedでほぼ全巻読めるのでお徳。

これはラノベ?なんだけど内容がすごいリアルで読むのに体力がいる。騙されてネットワークインフラエンジニアになり、PM、提案、管理職などをいろいろ経験していくお話。協力社員が協力しないとか、顧客先常駐して無茶振りされるとか、あるあるな状況になりながらもちょっとおかしな方法で解決していく。

で、最終巻、最後の議論。これがメインテーマだとしたら物語全体を見る目が変わってくる恐ろしい構成。日本のSIerは高度エンジニアをすぐマネージメントや事業戦略に就かせて代わりに素人を投入する。それはITのスキルが重要なんて誰も思っていないから。その結果素人しかいなくなって日本のIT業界は何も生み出せない。

と、まあよく言われていることだけどその通り。終身雇用で1つの会社に居続けるためにゼネラリストにならざるをえなくて、新卒一括採用だから素人を入れざるを得ない、と。それが嫌なら独立するか外資系にいくしかないと。どっちにしようかなあ。

タイピング日本一を決める大会「REALFORCE TYPING CHAMPIONSHIP 2023」、3/12に行われたオフライン大会を観戦してきた。RTC2023は2019年以来4回目。RTC2019年の後、にじさんじ打鍵王でタイピングが盛り上がったり、miri選手が数多くのテレビ番組で紹介されたり、今やれば結構注目されるんじゃないかと思っていたが、長いコロナの休止期間を経てついに開催。今日を逃すといつ日記を書けるか分からないので当日中に残しておく。

今回、会社員の活動が1月からずっと休みなしなので現地観戦も行く気力がなかったのだが、Twitterで観戦勢の報告を見ているとやはり行きたくなってきたので現地へ。タイピング速度測定の作者様やタイピンガーZの作者様と少しだけど話ができて良かった。

去年までの観戦記:RTC2017RTC2018RTC2019
配信はYoutubeTwitch。今回twitterの反応が結構多い気がしますね。

タイパー視点での感想

タイパー視点でというのは他の人が書いてくれるのでここでは省略。といっても最近はtwitterで投稿するだけでブログ書く人も減ったけど。

個人的にはWeather TypingというコンテンツはRTC2019のひろりんご選手のGrand Finalがエンディングで、これ以上の展開はもうないと思っていたけど、これだけ選手が入れ替わって新しい展開になるとは。今回日テレ共催になることで、いい意味で内輪向けの大会から脱却しつつある感じがした。

会場は日テレのスタジオということで豪華。カメラワークとか、青と赤の照明の効果的な使い方とか、演出がすごい。

今回特にかなvsローマ字、かなvsかな、ローマ字vsローマ字それぞれ見所があった気がする。ワード毎の特徴も結構はっきりしているのでその辺を理解すると面白いかも。

具体的な対戦で特筆するとしたら3位決定戦のはやとぅ選手。前回95%ルールをうまく使っていたので今回はどう魅せてくれるかと思っていたが、今回も3位決定戦で相手が95%からミス入力して94%になった一瞬の隙を突いて勝っていた。

決勝戦はもはや言うことないですね。Weather Typingの試合で一番面白いのは互角の対戦だが、あの速度でのローマ字vsローマ字の完全に互角な対戦は最高に盛り上がる。現地の緊張感がすごかった。

あとは選手のキャラクター性も重要になってきたかな。今回たのんさんが公式ガイドを作成していたが、各選手の紹介が入っていたのが良かった。にじさんじ打鍵王が盛り上がるのはそれぞれキャラクターがあってそれぞれにファンが付いているところも大きいと思うので、miri選手の「王者」みたいにはっきりしたキャラクターがあって周知されていると強い。そういう意味ではセレナーデ☆ゆうきさんには給料を払ってでも毎回参加してもらうべきだと思います。

開発視点での感想

今回は観戦している分には問題らしい問題はなかったと思うのだが、どうだろう。RTC2017以降、動作が重くなる問題、結果画面が表示されない問題、片方のワード開始が遅れてしまう問題、最初のワードが打てなくなる問題、と毎回何かしら問題が発生して運営に支障が出ていたのだが、4回目にしてようやく安心してみることができた。

今回RTC版は以下の改善を入れている。この辺は本体に取り込む予定。

  • 観戦モードで1プレイヤー側の打鍵音を出すようにした。これは「HOKKAIDO esports FESTIVAL2022」の後に頂いた要望だが、ようやく実装。リプレイでも同じ要望を何年も前から言われているけど、同様なので修正するかな。
  • 観戦モードでプレイヤーの表示順を固定する。画面左のプレイヤーが必ず上に来ないとどっちがどっちなのか混乱するので、必ず同じ順番になるようにした。この辺りは次バージョンの別修正の副作用でどちらにしろ実装する予定。
  • 観戦モードのときに他のプレイヤーが全員落ちると動作がおかしくなる。これは念のため。

あと、RTC2023向けというわけではないが、ワード終了時のkpm表示は入れて良かった。もはや昔からこういう仕様だったかのようになじんでいるが、実は2018の大会の時に「入力不能時間のときにグレーの文字を表示するくらいだったら、ワードを非表示にした方がいい」という意見をもらってRTC2019で非表示化した。その後、それならその非表示の時間にワード毎のスピードを表示しよう、となって追加したもの。どっちがワードを取ったか、またワード毎に1000kpmオーバーとかが数値で分かりやすくなって盛り上がりに役立っていた。

まとめ

RTC2019以降、東プレさんもずっと開催のため調整を続けていたことを知っているので、ついにオフライン+観戦ありという最高の形での開催を実現して頂いた運営さんへは感謝。演出や配信、e-sportsとして本気でやっていこうというのを感じる。

一方ここまでいくと個人で作っているWeather Typingの限界も感じる。タイピングのe-sportsとしてのポテンシャルに比べてソフトウェアが足りていない感はずっとある。モダンなオンラインゲームとしてタイピングe-sportsのポテンシャルを活かせるソフトウェア、誰か作りませんかね?

2月が終わるので日記を書かないと。といっても2月は無休だったので進捗なし。せめて最近話題になってきたChatGPTを使ってみる。

毎年賞金100万円の大会が開かれてたのか、知らなかった。ていうか嘘ばっかり。ちなみにURLを教えて欲しいと頼むと適当なURLをでっちあげてくる。

ChatGPTの仕組みは現在勉強中だけど、その場でググって回答するのではなく、現在の記憶状態から今の単語に続きそうな単語をどんどん付け足していくような感じ。なので生成される文章は超適当。

ただ、すごくそれっぽいし、それは違うよね、とか話していると理解するような素振りをしたりするので、すごく人間くさい。既にチューリングテストなら受かってそうな気がする。

冬休み。いい加減勉強に疲れたので息抜きに「情報セキュリティの敗北史」を読んでみた。珍しくOreillyのサブスクにはなかったのでKindleで。525ページになってるけど、半分くらいは脚注と参考文献なので半日くらいかな。

内容的には、自分もずっと考えていたことが情報セキュリティの歴史から説明されていた感じ。今の情報セキュリティってどうやって攻撃するかだけが注目されていて、どう対策するかには誰も興味がない。ホワイトハッカーというよく分からない職業の人が、特に新しさのないバッファオーバーフローの脆弱性を付いて、仰々しい名前を付けて世界で公開して注目を集めるビジネス。

この建築会社が作った家はここに火を付ければ効率よく燃えるから欠陥だ、というのをテレビで発表して富と名声を得て、建築会社に無理矢理対応させるようなやり口。火を付けられるからって普通の人は火なんか付けないし。

・・・って思っていた人は必読。こんな感じの話をちゃんとした切り口で説明して、情報セキュリティは歴史が浅くて迷走してるけど、他にいくらでもある歴史が長い分野から成功した方法を取り入れよう、というのが分かりやすく書かれている。

AWS Certified Security – Specialty (SCS-C01)を受けてきた。839/1000点で合格。

今月頭にSolutions Architect – Associateに合格してそのまま3週間後に受けた感じ。正直3週間はいらなかった気がするけど、土日はクリスマスイブしか空いてなかった。

勉強内容は、唯一の書籍「要点整理から攻略する『AWS認定 セキュリティ-専門知識』 」を読んで模擬試験40問をやって、Udemyの模擬試験65問x2回、Kindle Unlimitedにあった「1週間で攻略!AWS認定セキュリティ – 専門知識 本番用問題集 140問」の模擬試験65問x2回、公式の模擬試験20問をやったくらい。あとは「AWS Security」を7割くらい読んで時間切れ。今回はAWSでの実験もあんまりやってないかな。合計320問くらいで、本番で全く見たことない問題は1~2問くらいだった気がする。

次はどうするかな。難関と言われるAWSのSolution Architect – Professionalを受けるか、Azureを受けるか。。。

IPAの情報処理試験は論文が必要なめんどいやつ以外は全部持ってるし、TOEICも900超えた後は受ける気しないので、久々に試験受けるのは楽しい。IPAも今時紙に手書きじゃなければ合格してあげてもいいんだけど。

AWSセキュリティ資格を取るために勉強中。なのだが、どうしてもAzureをマスターする必要があるのでAzureも同時に勉強。こんがらがりそうな気もするが、意外にAWSとAzureの違いを意識することによって気づくことも多い。Azureの「ロール複数つけるとアクセス権は和集合になる」という説明を読んでAWSは? と思ってもう一度調べると、AWSコンソールではロールのスイッチができるので1つしかできないとかに気づいたり。英語と他の言語を学ぶとそれぞれの違いが分かって理解が深まるというのと同じか。

AWS Certified Solutions Architect – Associate (SAA-C03版)に合格した。副業でAWSセキュリティのスペシャリストであることを無理矢理言わないといけないってことで。

AWSは2年くらいFargate中心に実践してて、勉強期間は実質1ヶ月くらい? 金に飽かせて「AWS認定アソシエイト3資格対策」と「AWS認定ソリューションアーキテクトアソシエイト問題集」をやりつつ有料のAWSで都度実験、「Udemyの模擬試験」を3回分やった。AWSすぐ万単位の課金になる。

Udemyは噂通りムズかったが、3日で1日1回、最初は6割、次の日もう一回やって9割になったことを確認して受験。777/1000点のスリーセブンで合格だった。10時半の回を受験して20時に合格を受領。コツはお金の力。

なんだけど、本命はセキュリティなのでそっちを勉強しないと。Associateは当然合格する前提で、既に1週間くらい前に申し込み済み。AWSのサンプル問題は全問正解だったけどどうかな。

12月になってしまうので更新だけ。副業休みなしで夜はAWS勉強なので何もできず。

WT Android版 4.3をリリース。他のプラットフォームで修正したいくつかのバグFixと、Simejiでもとりあえず動くようにしたくらい。IMEは全ての方式に対応はできず、一つのIMEに最適化すると他で動かなくなるのでいろいろ妥協しているので、とりあえずGboardでもSimejiでもなんとなく動くようにした。

で、今回Android 12向けにしたのだが、ストレージ周りが変更になって苦労した。内部ストレージにデータを入れるとアンインストールで全部消えてしまうのでSDカードにデータを置いていたのだが、Android11で使えなくなった。SDカードのアプリケーション領域に置いているので、4.3ではWTをアンインストールすると記録が消える。今時はクラウドに置けばいいんだろうけどリリースを優先させたのでそこまでは変えなかった。以前のバージョンからアップデートすると勝手に移動されるようにはしたので過去のバージョンの記録は消えない。

あとはGoogle Playのリリースにあたってデータセーフティのポリシーを定める必要ができた。20年前の設計なので暗号化もないしデータの削除機能もないが、別に公開しておけばいいのか。そこで出てくるR8による難読化ってのが気になったけど、Android単体で難読化ができるようになってるのか。今回はやらないけど調査要。