blob: 106b1db3f9606927d1f9e4c964ebb12a565123b9 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
|
<?xml version="1.0" encoding="UTF-8"?>
<article xmlns="http://docbook.org/ns/docbook" xmlns:xl="http://www.w3.org/1999/xlink" version="5.0">
<info>
<title>PHPerKaigi 2022</title>
<abstract>
2022-04-09 から 2022-04-11 にかけて開催された、PHPerKaigi 2022 に参加した。
</abstract>
<keywordset>
<keyword>conference</keyword>
<keyword>php</keyword>
<keyword>phperkaigi</keyword>
</keywordset>
<revhistory>
<revision>
<date>2022-05-01</date>
<revremark>公開</revremark>
</revision>
</revhistory>
</info>
<section xml:id="_はじめに">
<title>はじめに</title>
<simpara>2022-04-09 から 2022-04-11
にかけて開催された、https://phperkaigi.jp/2022/[PHPerKaigi 2022]
に、一般参加者として参加した。
弊社https://www.dgcircus.com/[デジタルサーカス株式会社]
はダイヤモンドスポンサーとなっており、スポンサー枠のチケットを使わせていただいた。</simpara>
<simpara>昨年のレポートは<link xl:href="/posts/2021-03-30/phperkaigi-2021">こちら</link>。</simpara>
</section>
<section xml:id="_感想">
<title>感想</title>
<section xml:id="_厳選おすすめトーク">
<title>厳選おすすめトーク</title>
<simpara>多くの素晴らしいトークの中から、特におすすめのものを
5つ選んだ。是非聞いてほしい。引用部分は、リンク先プロポーザルから引用している。</simpara>
<simpara><link xl:href="https://fortee.jp/phperkaigi-2022/proposal/ef8cf4ed-63fe-42f8-8145-b3e70054458b">予防に勝る防御なし
- 堅牢なコードを導く様々な設計のヒント</link></simpara>
<blockquote>
<simpara>PHP
はバージョンを追う毎に型宣言、例外、表明、列挙型などの機能が大幅に強化され、堅牢なコードを書くための機能が充実してきました。それらの機能はどう使うと効果的なのでしょうか。</simpara>
<simpara>本講演では PHP 8.1
をベースにして、誤りを想定してチェックするのではなく、そもそも誤りにくい設計とはどのようなものか、つまり「予防」の観点を軸足に、堅牢なコードを導くための様々な設計のヒントをご紹介します。</simpara>
</blockquote>
<simpara><link xl:href="https://fortee.jp/phperkaigi-2022/proposal/db00d49e-0dd6-453f-b54b-f731d112f10e">PHPのエラーを理解して適切なエラーハンドリングを学ぼう</link></simpara>
<blockquote>
<simpara>PHPを使ってるとよく遭遇する Fatal error / Parse error / Warning / Notice
理解していますか?<br/>
これらのエラー文を理解することで、すぐにエラーの原因に気付き適切に対象できる様になります!<br/>
またそれらを理解した上でのエラーハンドリングを学びましょう。</simpara>
</blockquote>
<simpara><link xl:href="https://fortee.jp/phperkaigi-2022/proposal/4a7e3ded-9134-4919-955c-ec7bf4491c0d">エラー監視とテスト体制への改善作戦</link></simpara>
<blockquote>
<simpara>毎日流れてくるエラーに皆さんはどう向き合ってますか?<br/>
エラーを出さない事が一番ですが、完全に塞ぐ事は難しいと考えます。<br/>
サービス運用の中で本番環境から発生するエラー(サーバー・クライアントサイド・サードパーティ起因のエラー)への監視体制と、<br/>
エラー・バグ防御のためチームで行っているテストコード文化づくりの話をします。</simpara>
</blockquote>
<simpara><link xl:href="https://fortee.jp/phperkaigi-2022/proposal/6f47daf8-c78f-4fb1-9b99-e9656e6fe7f7">ISUCON11のPHP実装は、何を考え、どのようにして作られていたのか</link></simpara>
<blockquote>
<simpara>昨年開催されたISUCON11にて問題(参考実装)のPHPへの移植を担当させていただきました。</simpara>
<simpara>最終的なソースコードこそシンプルなWebアプリケーションではありますが、その裏には<br/>
・「(私の思う)良い設計」を実現するための意思決定<br/>
・「ISUCONの問題」という位置付けに由来する取捨選択<br/>
・移植中に遭遇したトラブルとその解決策<br/>
といった文脈や葛藤が存在しています。</simpara>
<simpara>本発表はそれらを共有することで<br/>
・PHPアプリケーションの設計、実装事例として役立ててもらう<br/>
・ISUCONの言語移植に興味を持ってもらう<br/>
・ISUCON問題移植の「実装や設計の練習をする教材」としての可能性を知ってもらう<br/>
ことを目的とします。</simpara>
</blockquote>
<simpara><link xl:href="https://fortee.jp/phperkaigi-2022/proposal/5a260e4e-542d-4d82-849d-ef3d6cb7c854">チームの仕事はまわっていたけど、メンバーはそれぞれモヤモヤを抱えていた話──40名の大規模開発チームで1on1ログを公開してみた</link></simpara>
<blockquote>
<simpara>サイボウズの大企業向けグループウェアのGaroon(ガルーン)は、PHPで開発されている20年目の製品です。ガルーン開発チームは日本で40名、ベトナムで50名の計90名ほどのチームになっています。また、コロナ禍でフルリモートでの活動がこの2年ほど継続してきました。</simpara>
<simpara>フルリモートになっても仕事はまわっており、継続的にリリースはしていましたが、一方でお互いの考えていることや感じている問題意識が見えづらくなり、モヤモヤを抱えているメンバーが増えていました。</simpara>
<simpara>このセッションでは、そういう状況で私がチーム外からジョインし、聴き役に徹しながら見える化することで状況を改善していった取り組みを紹介します。同じように大きなチームやリモートワークで難しさを感じている人に、難しさの原因への気づきや取り組みへのヒントがあれば幸いです。</simpara>
</blockquote>
</section>
<section xml:id="_トークン問題の作成">
<title>トークン問題の作成</title>
<simpara>今回は、PHPer チャレンジ用に弊社のトークン問題を
3題作成した。こちらについては<link xl:href="/posts/2022-04-09/phperkaigi-2022-tokens">別途記事にしている</link>ので、そちらを参照されたい。</simpara>
</section>
<section xml:id="_phper_チャレンジ">
<title>PHPer チャレンジ</title>
<simpara><link xl:href="https://fortee.jp/phperkaigi-2022/challenge">1位</link>になった。<br/>
また、賞品として <link xl:href="https://www.amazon.co.jp/dp/B08MQNJC9Z">Echo Show 15</link>
をいただいた。</simpara>
</section>
<section xml:id="_カンファレンス全体への感想">
<title>カンファレンス全体への感想</title>
<simpara><link xl:href="/posts/2021-03-30/phperkaigi-2021">去年の参加レポ</link>
では、こんなことを書いた。</simpara>
<blockquote>
<simpara>1つ個人的な反省点としては、(中略) Discord
しかりアンカンファレンスしかり「このイベントのこの瞬間にしかないコンテンツ」に触れずに、後から見返せる発表やスライドに注力してしまった、ということだ。発表の詳細な見直しはあとからできるのだから、今しかできないことを考えるべきだった。<br/>
まあ初カンファレンスだし、とお茶を濁しておこう。</simpara>
</blockquote>
<simpara>この反省を踏まえ、今年は積極的にほかの場 (公式の Discord
サーバや、アンカンファレンス) にも参加した。<br/>
これにより、参加体験の質がはるかに向上した。特に Discord
に関しては、登壇者ご本人による補足や、質問への回答などがおこなわれる
(ことが多い)
ため、特別な理由のない限り、発言はしないまでも参加はしておいたほうが良いと思われる。</simpara>
<simpara>なお、アンカンファレンスについては、1日目の終わりにhttps://fortee.jp/phperkaigi-2022/unconference/view/d332797a-8921-4706-a7e2-ee72640c9b5e[トークン問題の解説放送]もおこなった。</simpara>
<simpara>また、今年はオフラインとオンラインのハイブリッド開催であったが、去年の全オンラインと比べて、オンライン参加の体験が落ちていなかったのは、特筆すべきであろう。
今年は
3回目のワクチン接種が間に合わなかったこともあり現地参加は見送ったのだが、来年は是非オフラインで参加したい。</simpara>
</section>
</section>
<section xml:id="_そして来年へ">
<title>そして来年へ……?</title>
<simpara>PHPerKaigi 2023 があるかどうか存じ上げないが、あるとすれば、次の
4つを目標としたい。</simpara>
<itemizedlist>
<listitem>プロポーザルを出す</listitem>
<listitem>PHPer チャレンジのトークン問題を 5題作成する</listitem>
<listitem>現地に行く</listitem>
<listitem>PHPer チャレンジで圧勝する</listitem>
</itemizedlist>
<simpara><hr/></simpara>
<simpara>最後になりましたが、PHPerKaigi
のスタッフ、スポンサー、スピーカーのみなさん、素敵な時間をありがとうございました。</simpara>
<simpara>ではまた来年。</simpara>
</section>
</article>
|