#TSKaigi 2025 に行ってきた

今年初参加。仕事でガチフルスタックTypeScriptやりはじめたところなので、対戦よろしくお願いします状態です (?)

2025.tskaigi.org

トークの感想かいつまみ

TypeScriptとReactで、WAI-ARIAの属性を正しく利用する

React on TypeScript を実現するための登場人物について、何がどのような役割分担で成り立っているのかを、少なくともぼんやりは知っている人が参加者の大多数だったと思うけど、実況を見ている限りでは、このあたりがそんな事になっているなんて…という驚きの声しか見受けられなかったくらいにはマニアックな話だったのだと思う。マジで全然知らなかった。型定義がイマイチでもlinterとかである程度なんとかなるような、一方でlinterでなんとかなるだけでいいんでしたっけ、みたいな会話を懇親会で繰り広げた記憶がある。

技術書をソフトウェア開発する - jsprimerの10年から学ぶ継続的メンテナンスの技術

圧巻の一言で、仕事じゃんというか、仕事でもないことをきっちり続けようとするとある意味仕事以上に仕事っぽい感じになるというか、みたいな……。ソフトウェアエンジニア的な話でいうと都度シュッと自作のツールが出現するのがまず迫力があり、Markdownの文章中のサンプルコードに対してテストを実行できるようにするやつ

github.com

や、章ごとの内容の依存関係を自作ツールで可視化することでわかりやすさの改善に努められていたりとか、

github.com

とにかく、続いているものごとにはそれなりの理由というかなんというかがあるのだ、ということを思い知らされるトークだった。背筋が伸びる。

スキーマと型で拓く Full-Stack TypeScript

結構な規模のシステムを短期間でリプレースされていてすごい。技術選定については納得感というか安心感というかという感で、そんな中で秩序と速を両立されていそうで、もっと進め方とか苦労話を聞いてみたい感じだったのだけど、ask the speakerのタイミングを逃してしまい……。

fast-checkとneverthrowのPBT+Result型で堅牢なビジネスロジックを実現する

neverthrow的なやつ使います?みたいな話を職場で最近していたところだったのでタイムリー。職場では結局使わない判断をしたのだけど、したらしたで多分こうなってたよな、というリアルの話、ドメインモデル的な層以外でもガチガチに使うのはしんどそうだよね、などが聞けてよかった。

君だけのオリジナル async / await を作ろう

同僚のトーク (関係性の明示)。いわゆる普通のWeb的な仕事をしている限りだったらせいぜいredux-sagaとかで使うくらいでは、という気がするgeneratorとyieldの説明に始まり、気づいたときにはモナドからエフェクトの話になっている、という沼の入口みたいなストーリーで超面白かった。型システムのしくみ読まなきゃ!!

TypeScript Language Service Plugin で CSS Modules の開発体験を改善する

同僚のトークその2 (関係性の明示その2)。丁寧な導入から黒魔術というかなんというかまで網羅的に解説されていて助かる。これっぽいやつを作ってしまう、っていうのが自分の手札に加わっていると良いことが今後の人生で一度くらいはあるんじゃないか?という気持ちにさせられる。いろいろミスって現地で見れなかったのが心残り……(すいませんすぎる)

総括

mizchiさんのこのツイート以上にまとめられる気がしない!

さまざまな経緯が積み重なった結果、TypeScriptというプログラミング言語は時代の寵児となり、我が世の春を謳歌している…のはたぶんまあ客観的にも事実と言っていいはずで *1 *2、一方でその完璧でなさを補うために発達してきたASTまわりの充実したエコシステムがあり、それもわりとたまたま?大AI時代においてもそこそこ強みになっている、みたいなストーリーがありそうな気がする。

あとは懇親会や廊下でご無沙汰の方とそこそこ会話できたのが非常に良かった。リアルのやつの醍醐味ですね。

運営・スタッフ・スポンサーの皆様もありがとうございました + お疲れ様でした、二日目に階段が解禁されたのがマジで助かりました :pray: 懇親会の寿司とダイニーさんのビールうまかったです!!!

そんでもってこれはマジでどうでもいいけど最近思ったこと: