PHPカンファレンス香川2024に参加してめっちゃ楽しかった〜〜記 #phpconkagawa

5月10日に開催された、

phpcon.kagawa.jp

に参加してきました!

主宰/実行委員長のchatiiさんが「コミュニティのおかげで人生を送れている、コミュニティが存在して欲しい」「香川にPHPerが増えると嬉しい」「登壇する人、聴く人、運営スタッフをする人…集まれば、それはカンファレンス」と述べていた通りの、参加者が集まって楽しく刺激的な時間を過ごせる場が目の前にあったなぁというのが、大きな感想です。

(↑クロージングで、実行委員長が「楽しかったですか?」と問いかけていたのに対するリアクション)

「みんなでうどんを食べに行きましょう」もかなり高いレベルで実現されていそうw

前回*1の小田原でも、実行委員長が「色んな人に小田原に来て欲しい」と繰り返し述べていたのはその通りに形になっていたと感じますし、「"月刊”PHPカンファレンスはそれぞれ個性があるね」という感想が多くの人との会話の中で出てくるのには、その根幹に、人の前に立って形を作っている人の想いが詰まっているからなんだろうなぁ。
と、改めてそして強烈に感じられたイベントとなりました。

そんな場に参加させてもらうのは、毎度のことながら敬服にも近い感謝や感動を覚えますし、何よりも楽しいです。

主宰のちゃちいさん、表に裏に奔走していた増岡さんを始めとしたスタッフの皆さん、とても素敵な時間と空間と体験を提供してくださり、ありがとうございました。すんごく良かった、最高でした!!

ちゃちいさん〜〜〜どっか飲みにいきましょう〜〜〜「1杯奢らせてください」ってやつ〜〜〜

アウトプット

今回はかなり特殊な体験となって、めちゃくちゃ面白かったな・・・

元々は「ライブでコードリーディング」と想定していた内容で登壇の機会をいただき、ワークショップという形でやってみない?とお誘いを受けまして。
それはやったことないな〜面白そうじゃね???ってことで、2つ返事で「いいっすよ!!」とか言った気がします。*2
最近?は、「なんか新しく面白いことやってみるの良いじゃん」ってモードが強めで生きているので。

↑いま考えたら、「ライブ中心で丸々1本」もやったことない。

まだ作りかけで色々と足りていないですが(利用するコードサンプルのリンクすらない)、その際の台本となるチュートリアル資料はZennに公開済みです。

zenn.dev

*1:・・いや、運営も企画も本来は何も繋がっていないはずだけど

*2:迷う素ぶりは見せたかも

続きを読む

PHPカンファレンス小田原2024に参加してめっちゃ楽しかった〜〜記 / Fun/Done/Learn #phpcon_odawara

phpcon-odawara.jp

に参加してきました!

非公式・公式含めて、前夜祭〜懇親会まで参加しまして、現在は「(非公式)ぺちこん小田原後日祭 - ブログ書くぞ」に参加してこの記事を書いています。

今回のデッキ

大変ありがたいことに登壇の機会もいだだけまして、15分セッションのスピーカーでもあります。
発表後のAsk the speakerや懇親会でも「ココをもっと聞きたかった」「こういう考えはどう?」など、話しかけてもらえて最高でした。
「登壇しました」記は、それらの内容を盛り込んだ形で、また後ほどまとめてみたいと思います。

fortee.jp

参加者&&エンジョイした立場の話を書くぞ〜〜〜〜〜〜

続きを読む

コーチングセッションのクライアントを募集します

ふと思う所があり、私が提供するコーチングのクライアントを若干名募集します。

といっても「素人が練習相手を探しているよ!」という具合のものですので
軽い気持ちで、誰か付き合ってくれたら嬉しいな〜〜〜と思いながら書いています。

続きを読む

PHPUnitでテストケース個別の事前/事後処理をしたいんだけどなぁ

setUp/tearDownってクラス単位で生やしてテストケース実行時に処理が走りますけど、アレをテストケース(メソッド)単位で指定できたら良いのになぁ・・・って気持ちがあるんですね。何か設計が間違っているのかもだけど。
例えば「DBをいじくり回すケースの前に中身をキレイにしておきたいな」とか。同じクラスであっても、全部のケースの前で実行されると処理が無駄になりそうだなぁ的な

こういう感じのことですね。
デコレータでは無いが

<?php
    #[CaseDecorate(before: 'beforeNanika')]
    public function testFix()
    {
        $data = ['a', 'b', 'c'];

        $actual = ArrayUtil::fix($data);
        $this->assertSame($data, $actual->toArray());
    }

    #[CaseDecorate(after: 'afterNanika')]
    public function testFix2()
    {
        $data = ['a', 'b', 'c'];

        $actual = ArrayUtil::fix($data);
        $this->assertSame($data, $actual->toArray());
    }

    public static function beforeNanika()
    {
        var_dump(__METHOD__);
    }

    public static function afterNanika()
    {
        var_dump(__METHOD__);
    }

何か簡単な方法を用意できないものか??って願望があるのですが、本体や誰かのプラグインで用意されてても良さそうだよなーって思いつつあんまりちゃんと調べてないです。

Extension書いたら出来るんかな?
・・そう、私はPHPUnitのExtensionを作ることができるので!*1

fortee.jp

で、実際に動きはするやつを落書きしてみたのがコチラ (run in separationとかdata provider周りの、 TestSuite の挙動が変わる奴については動作確認取ってないです)

github.com

どう思います?

作ってみて感じたのは、

  • Emitter経由でEventを受け取る仕組みだと、TestCaseオブジェクトそのものを受け取るわけではないので、インスタンスメソッドを使えない
    • コレが使い勝手を悪くするなぁ。DB接続とか、インスタンス欲しいね
    • setUp()とかBefore attributesを使った標準の仕組みだと、TestRunnerが直に呼び出してくれるので使えるのだけども
    • 某FWのObjectPool+Facadeっぽいやつとは相性良さそう
  • 名前、「デコレータ」にしてるけど実現が難しそう
    • 実行前・後でラップしたり、実行結果自体を自分で直接観測できたら出来ることが増えそうなんだけどなぁ
      • とはいえテストケース(メソッド)は戻り値を持つわけではないから、あんまり要らないけど
      • テストの実行結果とかはEventの種類で分かるし、assertの実行結果とかも購読できる訳で
    • TestRunner自体を自分で書けば出来るんだけども、モチロンやりたくない

みたいな所ですかね〜

*1:このプロポーザルに対応する資料がアレばよかったのに、作ってないから思い出すのに少し時間がかかった

#phperkaigi で色々な発表を聞けてはっぴ〜記

セッションが色々あって、すごーい!!という感想でございます。

とてもおもしろいものが多かったので、さて聴講の感想ブログを・・・・と思ったは良いものの、ページ開くのが辛くなるくらい長くなりそうだったので、Notionに書きました✨

oo00hh.notion.site

そもそもこういう感じ(↓)になって → 何だかんだで軽く25本超えてきたことに気づいて → 「おっ、あぶないぞ、いったん引き返そう」となりまして、放流するものでございます。

たくさん書きましたよ〜〜〜〜〜

続きを読む

PHPerKaigi 2024に参加してめっちゃ楽しかった〜〜記

掲題のとおりです!!!

今回は色々と機会をいただきまして(スタッフの方にめっちゃ迷惑をかけつつ・・・ありがとうございました、本当に心から御礼申し上げます)、

  • レギュラーセッション登壇
  • LT登壇
  • パンフ記事(8ページ)
  • パンフ記事(4ページ)
  • パンフ記事(2ページ)

をコントリビュートしました。
こんなスペースもらって、掲載料金お支払いなしでいいの???って気持ちにマジでなりました。
どうしようもないのですが。
(その結果、何の辻褄もあっていないのですが、PHPカンファレンス香川の個人スポンサーに跳ね返っています)

登壇等に関する話も含め、しっかり書いていきたいと思うのですが、
それは別記事に譲りつつ今回は「速報的にライト目に書く」というエントリーになります。

(なので今回は「PHPerKaigiに参加しました!!」って投稿が、コレ含めて3本くらい生まれそうな気がするw)

何故そんなことを・・・?
単純に、他の参加者の #iwillblog を見ていて面白いし幸せな気持ちになったので、「自分の書きてぇな」ってなったからです。
欲求を供養するために書きます。

続きを読む

Miroを使えるようになると何が良いって、楽しい〜〜つってね!

わたくし、自分が考える前職での功績の1つとして「Miroを社内(の一部)で流行らせた」があると思っており、
使っている内にプライベートでも個人で課金する程度にはMiroが好きになったのですが、

突然↓のような事を言われて、

ふと思い浮かんだことがあったのでメモです

Miroを使えるようになるには?

好き〜〜!楽しい〜〜〜!って気持ちで触れていったら自然に育つのではないでしょうか!

fin

言いたいことはここまで、書きたかったことはこのあとです。

続きを読む