100分

100分で本番デプロイ!Laravelで作るWebアプリケーション作成

hanhan1978 富所 亮

PHPのWebアプリケーションといえば、やはり開発生産性の高さがウリです。ところが、自社サービスでも、受託開発でも、機能開発の一部分だけを担当していると、全体感がわからずいつまでたっても半人前という状態になってしまいます。

本ワークショップでは、PHPの開発経験がある程度あるけど、本番Webアプリケーションをデプロイして運用するという経験を全体を通してやったことがない方を対象にして、100分間でLaravelのWebアプリケーションを作って、仕様変更をして、修正リリースを行います。

本ワークショップで得られる体験

  • 本番Webアプリケーションのデプロイ経験
  • 初期デプロイから自動テストが動いているアプリケーションの体験
  • CI/CDの設定
  • 仕様変更と修正リリース(運用・保守)

本ワークショップの前に必要な準備

  • AWSのアカウント(本番アプリケーション動作により課金が発生します)
  • Docker Desktop for Mac, または Windows が動作する開発用のラップトップPC
  • PHPのWebアプリケーションを開発するためのツール類 IDE、ターミナル
  • ある程度速いタイピング速度
100分

チームビルディングのためのインプロワークショップ

ysaito8015 ysaito

概要
インプロヴィゼーション(即興劇)という演劇方法があります。お互いの個性を受け入れ合い、創造していくトレーニングはチームビルディングに最適です。

積極的に協力しあうチームをつくるのためのワークショップです。

アウトライン

  • イントロダクション
  • meeting & greeting
  • focus
  • Yes, and

最大実施可能人数
20 名

ターゲット/得られるもの

  • 童心にかえったような楽しい時間
  • 創造力アップ

参加条件
ありません

参加者の持ちもの/準備するもの
動きやすい格好

100分

PHPでリバーシを作って学ぶテスト駆動開発

aki_artisan あかつか

概要
ターミナル上で動くリバーシを作りながら、テスト駆動開発について学びます。

アウトライン

  1. テスト駆動開発の概要説明
  2. git init
  3. Todoリストの作成
  4. PHPUnitなどのパッケージのインストール
  5. テストコードを書く
  6. 実装
  7. リファクタリング
  8. Todoリストの見直し
  9. 4~7を繰り返して、できるところまでやる

最大実施可能人数
15人

ターゲット/得られるもの

  • TDD本読んだ後に何か作ってみたいと思っているあなた
  • TDD本を読んだけど写経はしてみていないあなた
  • TDDに興味はあるが手を出せていない方

参加条件

  • PHPの基本的な文法がわかること
  • テスト駆動開発の経験は不問です

参加者の持ちもの/準備するもの
PHP8が動くパソコン(Dockerでも良いです)

  • PHP
  • Git
  • GitHubアカウント(あれば)
1
100分

PHP Internals わいわい #phpinternals_waiwai ピセカばん

youkidearitai てきめん

概要
PHPはC言語でできています。
php-srcリポジトリやPHP Internalsメーリングリストでは様々な機能追加などを議論しています。
その開発をちょっと覗いてみませんか?

アウトライン

  • PHPのコンパイル
  • C言語についての解説
  • php-srcのディレクトリ構成について解説
  • PHPの新規関数の追加について解説

最大実施可能人数
15人

ターゲット/得られるもの

  • PHPがどうやってできてるのかの知識
  • PHPの関数の追加方法
  • PHP Internalsのノウハウ

参加条件
あると嬉しいのがC言語の知識

参加者の持ちもの/準備するもの
仮想環境でUbuntu Linuxが動くパソコン

40分

PIE (PHP Installer for Extensions) をみんなで試そう

koyhoge 小山哲志(こいほげ)

概要
PIE (PHP Installer for Extensions) は、PECL の代替として現在開発中のPHP機能拡張をインストールする仕組みです。まだ開発の初期段階とされていますが、試すことはできるようなのでみんなで試そうという会です。
時間に余裕があれば、PHP機能拡張の作成チュートリアルもやります。

アウトライン

  • PIE の概略説明
  • 実際にインストールを試してみる

最大実施可能人数
20名

ターゲット/得られるもの

  • PHP機能拡張に関する知識
  • 新しいものをいち早く試したという満足感

参加条件
まだ枯れてない技術を使用するので、ある程度自走できる人が望ましいです。

参加者の持ちもの/準備するもの
Windows/Mac/Linux のいずれかが動作するPC。

100分

eBPFと周辺技術を利用してPHPアプリケーションコードを変更しない可視化をやってみる

egmc 岩堀 草平

概要

アウトライン

  • eBPFの概要説明(10m)
  • 環境セットアップ(30m)
  • bpftraceを利用したトレース体験(10m)
  • ebpf exporterを利用した可視化の実装(40m)
  • ユースケースについてのディスカッション(10m)

最大実施可能人数

  • 15人(内容が込み入っているため控えめに)

ターゲット/得られるもの

  • PHPアプリケーションの課題解決に役立てる手法としてeBPFを利用したランタイム情報を利用する引き出しが得られます

参加条件

  • AWSのEC2環境でパッケージインストール、エディタを使ったセットアップ、ポート開放などができること(ubuntuのLTSイメージを利用する想定です、スペックはそれほど必要ないですが個人で持ち出せる範囲内でお願いします、Lightsailでも大丈夫です、ある程度プロブジョン用のスクリプトを用意するつもりです)
  • 広くPHPアプリケーションの課題解決に関心があること
  • サーバ上での各種コマンド実行に抵抗がないこと

参加者の持ちもの/準備するもの

  • 指定のイメージによるEC2/Lightsail環境
  • sshアクセスとsudoができることの確認
2
40分

ISUCON初心者ハンズオン:New Relicで学ぶアプリケーションパフォーマンスの可視化

島谷 和也

概要
ISUCON初心者向けに設計された、アプリケーションパフォーマンス改善の入門講座です。
短時間で効率よく、New Relicを活用してアプリケーションのパフォーマンスを可視化し、ボトルネックを特定する基本的な手法を学べます。
初級レベルの内容となっており、複雑な技術や設定は必要ありませんので、安心してご参加ください!

アウトライン

  • オープニング (5分)
    • 自己紹介
    • ISUCONとNew Relicの概要
  • 事前準備確認 (5分)
    • 各自が用意したAWSまたはDocker環境の動作確認
  • ハンズオン1: 初期状態でのパフォーマンス計測 (5分)
    • 初期状態のスコア計測方法を解説
    • New Relicを使ってボトルネックを簡単に特定
  • ハンズオン2: 改善案の実装 (20分)
    • SQLの最適化、設定変更などを実施。
  • まとめとQ&A (5分)
    • 質疑応答、締めの挨拶

最大実施可能人数
10名

ターゲット/得られるもの

  • ターゲット
    • ISUCONに挑戦したいが、何から始めていいかわからない方
    • ウェブアプリケーションの高速化を学びたい初心者
  • 得られるもの
    • New Relicを使ったパフォーマンス可視化の基礎知識
    • 初歩的なボトルネック特定の手法

参加条件

  • PHPの基礎知識がある方
  • パフォーマンスチューニングに興味がある方

参加者の持ちもの/準備するもの

  • 持ち物
    • ノートパソコン
  • 準備すべきこと
    • 事前に開発環境を含むGiHubリポジトリを共有します。Dockerでの構築もしくはAWS環境での構築を想定しております。
    • New Relic公式サイトにアクセスして、無料アカウントを作成してください(https://newrelic.com/)。
    • 当日は事前に構築した環境を使用して進めますので、スムーズに進行できるよう準備を整えておいてください!
3
100分

「こんなテストコードは嫌ぁ〜ダ!ヤダー!」を祓う会

o0h_ きんじょうひでき

概要
テストに関する「困ったこと」「悩みのタネ」は、
よく知られたものからまだ名前のついていないもの、ニッチなものまで、
そしてテストコードやローカル環境・CI上でのテスト実行まで、
非常に多くのものが存在しています。

会場にいる皆さんで、「こんなテストは嫌だ」「こんなテストコードに悩む」「こんな時にテストで困る」を共有して、
一緒に対策を考えてみませんか?

アウトライン

  1. 序盤戦では、テストの「お困りごと」をブレスト的に出し合います(20分)
    • 基本的には個々人で「出しまくる」ターンですが、会話や「相乗り」で発散を狙い、2,3人の少人数グループでワイワイと喋りながらの実施になります
    • 時間を区切って実施し、出てきたものは全体で共有します
    • それらを近い性質のものでグルーピングします
  2. 中盤戦では、関心の近い人で集まってソリューションを考えます(40分 or 20分*2ターン ※参加者数によって変動)
    • グルーピングされたものから、参加者は任意のテーマを選んでグループを作ります
    • グループ内で、問題の言語化と対応策を考えます
    • とりわけ、「単純な対応策」よりも、「どんなコンテキストでそのような問題が生まれるか」の言語化に力を入れると楽しいはずです
  3. 終盤戦では、問題とソリューションの共有を行います(30分)
    • それぞれのグループで出てきた内容を、全体に向けて共有します

最大実施可能人数
100人

ターゲット/得られるもの

  • 持続的な開発を支えるテストコードのアイディア、引き出しを増やす
  • (「そういうの困るよね〜」という共感で癒される)

参加条件

  • できれば日常的にテストコードを書いている人が望ましいです
  • PHPUnitの利用者が多いだろうと想定しますが、必ずしも具体的なフレームワークの利用経験は規定しません

参加者の持ちもの/準備するもの
特になし。
事前に「最近こういうテストで頭痛がしたな」を振り返っておいてもらえるとスムーズです

40分

初めてのRector Custom Rule作り体験

o0h_ きんじょうひでき

概要

Rectorはとっても便利で楽しいツールですね!
PHPやフレームワークのバージョンアップの際には、豊富に用意されたルール群がとても役に立ちます。
一方で、汎用的な問題ではなく、自環境に固有の場合はどうでしょう?
そんな時には”オレオレ”ルールをサクッと作れると助かります!

このワークショップでは、ごく簡単なルール作りの体験を通じて、Rectorの世界に入門します。
参加者は「へぇ〜そういう概念と仕組だったんだね!」が学べることでしょう

アウトライン

1:N形式の座学+個人作業がメインです

イントロパート(座学) // 5〜10分ほど

  1. Rectorとはどんなツールか?の簡単な紹介(機能、実際の動作の様子など)
  2. Rectorを支える基本的な概念(世界観や技術的な要素など)

チュートリアルパート // 10〜15分ほど

  1. ルール作りの基本的な流れの解説
    • 使うクラスやAPIの紹介
    • テストの書き方
  2. 超ミニマムで単純なルールを実際に作ってみる

ハック!!パート // 10〜20分ほど

5.各々、フリーお題で何か作ってみる

  1. できた人からお披露目(任意)
    • 「こんな問題を解決するルールを作りました」の共有と「こんな感じに動きます」のライブデモ

アウトロ // 〜5分ほど

  1. 締めの言葉的なもの

最大実施可能人数

20人

ターゲット/得られるもの

Rectorを知る、ルールの作り方に触れる

参加条件

  • PHPStanやphp-cs-fixerなど、何らかのPHP製の静的解析やQAツールを利用したことがある
    • Rector自体の利用経験は問いません

参加者の持ちもの/準備するもの

  • PHPを実行できる(下記の条件を満たす)端末が必要です
  • 事前に開発環境を含むレポジトリを共有するので、クローンしてきてください
  • Dockerfileを含むので、コンテナを利用できるようにしてください
40分

PHPStan 型付け体験教室

tadsan うさみけんた

概要
PHPStanは簡単に使い始められる便利なツールですが、レベルを上げようとするとPHPStanの型付けの特性について学ばなければ効果的に型をつけることはできません。本ワークショップではブラウザから動かせるPHPStan Playground上で問題を解くことでPHPStanの型についての理解を進めます。

アウトライン
Web上に資料を用意しますので、各自のPC上で説明を読みながら問題を解いてください。
講師が巡回しますので、参加者は随時質問ができます。

最大実施可能人数
15人程度

ターゲット/得られるもの
まだPHPStanを使いこなせていない参加者が、普通のPHPコーディングとPHPStanのギャップを減らせるようになることを目指します。

参加条件
PHPの基本的な機能を理解していること。

  • PHPStanは未経験でも問題ありません
  • 必要な関数については随時説明があります

参加者の持ちもの/準備するもの
Webブラウザが動作するPC (またはPHPとComposerがインストールされたPC)

1
100分

OST

chiroruxxxx ちひろ

概要
OST(Open Space Technology)は、参加者が話したいことを話し、聞きたいことを聞くわいわいした会です。
多くのセッションやワークショップはコンテンツ提供者が多く話しますが、OST は違います。あなたが主役です。
あなたが話したいことを話すことができ、あなたが聞きたいことを聞くことができます。それがOSTです。
ぜひ、話したい/聞きたいテーマを持ち寄って参加してください!

OSTは、まず話したいテーマを募ってタイムテーブルを作成します。
次にテーマごとのグループに分かれて議論を行います。
グループ分けはありません。参加したいグループに入ってください。
途中で抜けて他のグループにいってもかまいません。
最後に話した内容をホワイトボードか模造紙にまとめ、グループに参加できなかった人にも内容がわかるようにします。(発表はありません)

アウトライン

  • 自己紹介・OST説明
  • テーマ出し・タイムテーブル作成
  • ラウンド1
  • ラウンド2
  • ラウンド3

最大実施可能人数
100人!!

ターゲット/得られるもの
あなたが知りたいことを知ることができます。

参加条件
特にありませんが、PHPについての基礎的な知識があると話に参加しやすいかもしれません。

参加者の持ちもの/準備するもの
特にありません。

1
100分

チーム開発でリーンを体験!

chiroruxxxx ちひろ

概要
擬似的なチーム開発を体験して、チーム開発の勘所を掴みましょう。
・・・え?もうチーム開発してる?
では、何がチーム開発にとって重要なのか、再確認をするのはどうでしょう。
何が重要か、パッと思い浮かばなかったら参加してみる価値があるかもしれません。

このワークショップでは、ドットゲームというゲームを通じて、リーン開発のエッセンスを再確認します。
DevOps とワンセットでよく耳にするリーンですが、実はあまり理解が浸透していないようです。
ぜひ、このワークショップでリーンのエッセンスを学び、チームに持ち帰ってください!

アウトライン

  • 自己紹介・ワークショップの説明
  • イテレーション1・ふりかえり
  • イテレーション2・ふりかえり
  • イテレーション3・ふりかえり
  • 全体のふりかえり

最大実施可能人数
8人

ターゲット/得られるもの
チーム開発やリーン開発のエッセンスを得られます。

  • WIP制限やバッチサイズ
  • フローの管理
  • 継続的改善
  • などなど

参加条件
参加条件はありません。

  • チーム開発の経験は不要です。
  • PHPの経験は不要です。

参加者の持ちもの/準備するもの
ありません。
PCは持ってきても邪魔になるだけなので、カバンに閉まっておくことをオススメします。

1