はじめに
TSKaigiに参加した。1億数年ぶりに中野に降り立った。
スライドまとめ(随時更新)
セッション一覧はこちら
スライド最終更新: 2024/05/12 06:09
時刻 | Track1 | Track2 | Track3 |
---|---|---|---|
10:30 ~ 11:15 | Keynote: What's New in TypeScript 📄(未) | ||
11:30 ~ 12:00 | フロントエンドもバックエンドもインフラも… 全てをTypeScriptで統一したらこうなった!📄 | TypeScript ASTを利用したコードジェネレーターの実装入門📄 サンプルコード | Prisma ORMを2年運用して培ったノウハウを共有する📄 |
12:10 ~ 13:10 | TypeScript化の旅: Helpfeelが辿った試行錯誤と成功の道のり📄 | TypescriptでのContextualな構造化ロギングと社内全体への導入!📄 | エンジニアの技術的な意思決定を支えるADR - LayerXの活用事例📄 |
新サービス Progate Path の演習で TypeScript を採用して見えた教材観点からの利点と課題📄 | 生成 AI と Cloud Workstations で始めるクラウド AI ネイティブ開発📄(未) | toggle holdingsとTSあるいはTSKaigi📄(未) | |
PMF達成の立役者!Full TypeScript Architecture の選定背景と構成📄(未) | EARTHBRAINが挑むグローバルな課題とTypeScriptの活用事例について📄(未) | 高まった熱量をぶつけられるコミュニティ活動のススメ📄(未) | |
TypeScriptで統一したアーキテクチャ📄(未) | こんなTypescriptは嫌だ📄(未) | ||
チームで挑むTypeScriptコードの漸進的改善📄(未) | |||
Ubie のプロダクト開発における技術的レバレッジポイント3選📄(未) | |||
13:20 ~ 13:50 | TypeScript 関数型バックエンド開発のリアル📄 | TypeScriptと型のパフォーマンス📄 | 部分型の代数的模型📄 |
14:00 ~ 14:30 | TypeScript の抽象構文木を用いた、数百を超える API の大規模リファクタリング戦略📄 | TypeScriptから始めるVR生活📄(未) | 複雑なビジネスルールに挑む:正確性と効率性を両立するfp-tsのチーム活用術📄 |
TypeScript をパワフルに使って開発したい!📄(未) | |||
TypeScriptでもLLMアプリケーション開発!LangChain.js入門📄(未) | |||
TanStack Routerで型安全かつ効率的なルーティングを実現📄 | |||
14:40 ~ 15:10 | Step by Stepで学ぶ、ADT(代数的データ型)、モナドからEffect-TSまで📄(未) | tRPCを実務に導入して分かった旨味と苦味📄 | Type-safety in Angular📄 |
15:20 ~ 15:50 | ハードウェアを動かすTypeScrptの世界📄 | サービス開発におけるVue3とTypeScriptの親和性について📄 | TypeScriptできると思ったのは勘違いだった件📄(未) |
Effectで作る堅牢でスケーラブルなAPIゲートウェイ📄 | |||
Introduction to Database Connection Management Patterns in TypeScript📄 | |||
Prismaでスキーマ変更を行う際のベストプラクティス📄(未) | |||
16:00 ~ 16:30 | TypeScriptとGraphQLで実現する型安全なAPI実装📄 | Exploring type-informed lint rules in Rust based TypeScript Linters📄 | Denoで作る快適な “as Code” プラットフォーム📄(未) |
16:40 ~ 17:10 | Prettierの未来を考えるスピーカーノート | TypeScriptのパフォーマンス改善📄(未) | スタックチャン -TypeScriptで動くオープンソースロボット-📄 |
ts-morphを使ってコードリプレイスとASTへのハードルを下げる!📄 | |||
SWC Transformerから見るTypeScript関数記述ベストプラクティス📄(未) | |||
TypeScriptのコード生成をつらくしないために📄(未) | |||
17:20 ~ 17:40 | TypeScriptが学生のエンジニアコミュニティ参加を促進する📄(未) | Documetation testsの恩恵📄 | |
Reactでハードウェア制御できるEdison.jsを作っている📄(未) | Full TypeScriptだから実現できる世界線📄(未) | ||
多言語化対応における TypeScript の型定義を通して開発のしやすさについて考えた📄(未) | Real World Type Puzzle and Code Generation📄 |
参加セッションと感想
感想は簡易的なものです、、すいません。。後半は私用で参考できませんでした。
Keynote
TypeScript 5.4, 5.5の話で、Narrowingの強化周りは自分のコードの書き方的にも影響がありそう。Isolated Declarations周りの話は後で見直したい。。
TypeScript ASTを利用したコードジェネレーターの実装入門
Himenon/openapi-typescript-code-generatorの作者の方。AST周りはGoで静的解析ツール作ったことがある程度で、TSでも簡単に出来るか気になったので、セッションを聞いた。TypeScript AST Viewerが便利で、ざっくりどういう構造を知るのに良いなと感じた。graphql-codegenは文字列結合という話を聞き、逆にコードジェネレーターをAST以外で扱うこともあるのかと感じた。ASTはts-morphも使ってみたい。スナップショットテストなど、テストも簡単に出来る方法が用意されてるし、思ったよりハードルが低くて良きと感じた。
TypeScript 関数型バックエンド開発のリアル
過去の資料を見たことがあったので、中身は大体知っていたが副作用があるあたりの部分の解説があってよりクリアになった。関数型的な思想で作ったバックエンドの話。そこまでハードルは低くなさそうに感じたが、neverthrowと心中する覚悟は必要そう。
複雑なビジネスルールに挑む:正確性と効率性を両立するfp-tsのチーム活用術
Result型の合成で、エクセルのバリデーションチェックをする話、面白かった。学習コストがあることにも触れていて、オンボーディングを工夫しているところなど、リアルな話が聞けて良かった。
Step by Stepで学ぶ、ADT(代数的データ型)、モナドからEffect-TSまで
EffectというScalaやHaskellとしてのZIOから影響を受けているライブラリ。こちらも関数型的アプローチの例が乗っていて参考になった。
さいごに
コード生成、関数型、個別のライブラリの周りの話が多かった印象です。関数型ネタが多くて(自分が興味あるのもそう)、ここら辺はこれから流行りそうという印象を受けた。
関数型というより、Result型にしたい行って意欲が大きいのかな。もうGoとかRustじゃtry catchは書かないもんね、、プログラミング言語自体の変遷とか流行りとしてこの流れは理解できる。
コード生成はやはりフィールド多いドメイン領域に携わるときに型書くのがそもそも大変だったので、積極的に活用していいなと感じた。
まずは自分のブログから、Scalaで書き直してみようかなと思いました!
とても楽しいセッションばかりでした!スタッフ、スポンサーの皆様ありがとうございました!