初めてPHP以外のカンファレンスに参加してきました
結論はタイトルの通り、最近少しDDDとか設計みたいなところの熱は一段落してきたところだったのですが、今回のイベントでまた少し熱が戻ってきた感があります
にわかプログラマなりにモデリングとか設計とかもう少し頑張ってみたい、そんな気持ちにさせていただいたイベントのレポです
前日
実は前日の夜まであまり熱は上がっていなかったのですが、元同僚の@tkuroiwa0216さんがこんなツイートをしていたので一緒に行くことに
改めてタイムテーブル見たら自分が大好きな設計本の著者の皆様が一同に会することに気づいてちょっと熱が上がった前夜
でも3冊持っていくとなると重い…ので表紙だけ持っていくことにしました。
当日の動き
高崎駅で集合し、一路東京へ!
※自由席でもいけるだろって思ってたら思いの外混んでて道中の新幹線ではあまりお話できなかったことを軽く後悔しています...(´・ω・`)
イベント参加者は全体的な印象として
若い人が多い!がベテランの風格の方々もいっぱい
PHPerが思ったより多く、そこまでアウェー感はなかった
セッションに限らず、廊下でも設計論などが交わされていてソフトウェアに対する温度感の高さを感じた
今回のイベントでは目一杯楽しむぞ!ってことでスポンサーブースも制覇しました!が、ガチャはアクキー x 2でした...残念!
タイミン可愛かった...次に会ったときは家にお迎えしたい
セッションの合間にひさてるさん、ミノ駆動さんに、懇親会で増田さんにサインを頂けたのはとても嬉しかった!
特にひさてるさんは何度もエンカウントしているのに1年以上サインもらえていなかったので思わずツイートしてしまった
そしてこのサイン会(!)で以前からフォローさせていただいてツイートを拝見させて頂いていた@magnolia_k_さんと@suenamiさんとエンカウントできたという嬉しい誤算(?)もありました!(大吉祥寺.pmもぜひ行きたい...!)
一通りセッション聞き終わったあとはちょっと疲れてしまってクロージングはスキップしてしまいました...(ごめんなさい!)
懇親会までの時間は@tkuroiwa0216さんと@masakichi_engさんと色々お話させて頂きました...カンファレンスの廊下感がとてもエモかった
懇親会
セッションが終わったあとの懇親会にももちろん参加してきました
DDDを実践されている話やまだ計画すら怪しい群馬県内でのイベントの話(!)をPHPerの皆さんとしました
本当は多言語の人とももっとコミュニケーション取るべきだったのでしょうけど、人見知りなので絡めず...次は頑張ります...
そんな中でも増田さんとミノ駆動さんには感謝の意を伝えたくて頑張りました!
※ミノ駆動さんの方はツイートし忘れましたが、クソコード動画と下記のツイートを常に参考にしている旨お伝えしました!
今回聴講したセッション
下記を聴講しました
基調講演:オブジェクト指向のリ・オリエンテーション
オブジェクト指向の歴史的背景やその周辺知識は全然知らなかったので勉強になった
オブジェクト指向の段階論、モデリングの段階論は参考になった(早くレベル4に行きたい...)
SOLID原則のまとめかた(凝集度・結合度)はすごく腹落ちした
この辺はもしかしたらアナグラムとして表現しようとした結果なのかも?
生成AIの不確実性と向き合うためのオブジェクト指向設計
AI生成のユースケースを体験から考える話がとても良かった
Automation(自動化)
Agent(代行)
Advice(助言)
Augment(強化)
クソコード動画『カプセル化 Mk-II』で考える、上手くカプセル化できない理由
安定のクソコード動画
目的と手段が逆転していないか?という問い
目的論的抽象化 VS 存在論的な抽象
新刊楽しみだなー
インターフェースの目的別分類
切り口がめっちゃ良かった(これが言いたかったことだったんだよな感)
特にLayer/Packageの境界の話はとてもよく言語化されているなと感じた
実践編のサンプルコードも秀逸
チーム開発でデプロイ頻度を上げるための設計とタスク分割
サンプルコードがめっちゃありがちな実装で笑った(笑えない
料金計算をバージョニング...はて...どこかで見たような?
(ヒント:前のふわせぐさんのセッションと合わせて見たほうが良い)
複雑性をFactoryとStrategyできれいにスッキリ
設計の話とちょっと盛りだくさんすぎた感は若干あった
非デザイナーのフロントエンドエンジニアがOOUIを考える
タスク指向 vs オブジェクト指向
モーダルとモーダレス
思考をデザインする
設計の知識と技能で駆動するソフトウェア開発
ソフトウェア設計の知識と技能は掛け算(≠足し算)
設計スタイルの話
抽象化の方向(機能 vs データ型)
モジュールの用途(インバウンド/アウトバウンド/演算)
状態の扱い方(可変 vs 不変)
システム構築の原理(ブレークダウン vs ビルドアップ)
ポート&アダプターアーキテクチャ
ラウンドテーブル:OOP可読性テクニック
Interactive Round Trable(IRT)で参加者が議論するセッション
言語問わずあるあるがいっぱい
クソデカPR投げる人ほどコミットが分かれていないとかw
設計や思想、ソフトウェア工学的な話は言語問わず共通な部分が多いことを再確認
今回は裏番組になってたりして聞きそびれてしまったセッションで面白そうなものがたーっくさんあったので、アーカイブ公開されたら追いかけようと思います...!
スタッフの皆さん、登壇者の皆さんありがとうございました!