並列処理を実現するには主にこの拡張を使用していました。非同期処理を行うことができます。一般的な拡張機能の導入の方法がほぼ同じなため導入しやすいです。使って実際にアプリケーション開発をした過程をノンフィクションでトークできればと思います。俊介shaka0maruChatworkでは10年近く前から運用されているプログラムがメインのシステムとして稼働しておりますが、近い将来に限界を迎えそうになっています。システムがなぜ限界を迎えるのか、どういうタイミングで限界が訪れるのか。鶯)25分枠PHPからgoへの移行で分かったこと樋口雅拓mahiguch1弊社バックエンドは、PHPエンジニアのみで開発を行なっていました。想定外の問題が発生しました。時代の流れとともに、goへの移行が選択肢に上がるケースが増えて来ているかと思います。これらの知見を共有することで、goに移行した方が良いケースと悪いケースを明らかにしたいと思います。(この時の懇親会で移行の課題に付いて聞いてみたいとのご意見をいただきました。)大規模なカンファレンスでの登壇は初めてです。環境が使われることが増えてきました。したくなるのが人情です。秀明このトークは『弁護士ドットコム株式会社』の提供でお送りします。課題について振り返ります。弁護士ドットコムはサービスを開始した2005年からPHPを使い続けています。開発プロセスの整備やメンバーの入れ替わりなどを経て、紆余曲折ありながらも前進してきました。その中で、我々は「弁護士ドットコム」という自社サービスをどのように開発・運用しているのか、事業会社としてのエンジニアリングをどのように考えているのか。その経験や結果を再確認しつつ、現状と、そしてこれからの展望についてお話します。美穂このトークは『株式会社Cygames』の提供でお送りします。このトークの録画・配信はありません。PHP7はブラウザゲーム『グラブル』の大規模アクセスにも恩恵をもたらしました。本セッションでは、PHP5.6からPHP7.2へのバージョンアップを行った際のパフォーマンス変化をお伝えするとともに、なぜ大きな効果が現れたのか、その理由を紐解いていきます。和槻cocoeyes02皆さんは普段テストコードを書いていますか?もしくはこれから導入しようと奮闘していますか?はたまたテストコードというのを初めて聞きましたか?テストコードと一口に言っても、ユニットテスト、featureテスト、APIテスト、E2Eテストなどたくさんの種類のテストコードがあります。テストコードを導入する前に「なぜそのテストコードを書くのか」を話せることを目的として、テストそのものやテストコードについてお話ししていきます。当セッションでは、以下のような話をする予定です。8.0ではたくさんのSQLが追加されました。存在を知らなければ、どんなに良い機能でも使いようがありません。改善失敗から学ぶ、レガシープロダクトに立ち向かうチーム作り。祐一このトークは『サイボウズ株式会社』の提供でお送りします。サイボウズの大企業向けグループウェアのGaroon(ガルーン)は、PHPで開発されている17年目の製品です。7までアップグレードを追従したり、もともとオンプレミス製品だったものを、クラウドでも提供を行うようにしたりと、今でも現役で開発されており、サイボウズの主要製品の一つとなっています。17年の開発の中では、多くの「歴戦の勇者」がGaroonという巨大な製品に対して、改善を試みていました。他のビジネス要件やQAのテスト工数との兼ね合いから、多くの改善が軌道に乗せられていませんでした。このような改善の難しさの一つとして、開発チームの体制の問題がありました。プログラマーはプログラマー同士で、QAはQA同士でコミュニケーションをとることが多く、職能を超えたコミュニケーションは決められた場所・決められた人が中心になって行われていました。そのため一つコードを改善しようと思っても、この開発体制が邪魔をして、思うように進められないことが多くありました。そんな中、それまでのウォーターフォールでの開発から、スクラム開発に移行しました。このスクラム開発への挑戦をきっかけに、プログラマーとQAのチーム統合や、プロダクトオーナー・ビジネスサイドとの対話が進み、今ではプロダクト開発に関わるメンバー全員でこのレガシーさに立ち向かい改善が行えるようになってきました。このセッションでは、そんなサイボウズGaroon開発チームの経験をお話しします。寛徳このトークは『EGセキュアソリューションズ株式会社』の提供でお送りします。このトークの録画・配信はありません。この度、株式会社グレスアベイルは、2019年8月13日に、イー・ガーディアングループへの参画を決定しEGセキュアソリューションズのグループ会社となり、それに伴い、徳丸浩が同社の社外取締役に就任いたしました。今回は、徳丸監修のもと株式会社グレスアベイルが新たに開発した新しい概念のWAFのご紹介をとおして、クラウドネイティブ時代のセキュリティについてお話しします。C/E会議室)25分枠Composerって何?どう動くの?読んでみました!きんじょうひできo0h_Composerは、もはやPHPの現場に無くてはならない存在です。内部構造に興味をいだいたことはないでしょうか?ソースコードを読みましょう。今まで良く分からなかった「このエラーって何💢」に親しみを感じるかも知れません。例にして、パッケージ名の解決・バージョンの解決・.lockファイルの吐き出しといった普段利用するComposerの挙動を読み解いていきたいと思います。前田直哉このトークは『スキルエンジン株式会社』の提供でお送りします。--数百以上のプロジェクト開発経験を踏まえ、プログラマに必要なスキルとは?数年後、10年後先を見据えどのようなスキル・考え方を身につければプログラマとして圧倒的に成長できるか?上記について徹底的に分析し、成長するためのエッセンスを凝縮した教育カリキュラムを紹介いたします。捉え方についてはエラー文/ログ解析など。正確に捉えるには、正確な知識が必要。正確な知識を習得する為はどうしたらいいか?など2.根拠に基づいた仮説を立てる複数の仮説を洗い出しする。その中から実現可能性の高い仮説を選ぶ。3.コーディング2で洗い出したパターンを実装する。一気に作らない、細かく動作確認しながら実装していく。1行1デバッグを行う。・スクラッチ開発いきなりフレームワークから入ると、応用力が身につきにくい。スクラッチ開発を通して、応用力のつく学習の流れを紹介。hgsgtkこのトークは『BASE』の提供でお送りします。ビジネスを実現するために我々はさまざまな技術から選択する場面に出くわします。技術選択は適材適所で行うべきと問われつつもその技術に開発運用の知見がない場合、短期的に見た自分たちの慣れという優位性に引っ張られ、より適しているとは言えない選択をしてしまうというのは一般事象としてみうけられることだと思います。知見のない言語・フレームワークの採用における大きな懸念点は、短期的に見れば学習コスト・コード品質を保てるのか、長期的に見ればその技術で構築されたサービスを保守できるかという点が挙げられます。このトークでは、BASEの新規事業において、知見のない言語を選択し、列挙された懸念を監視設計・コード検査・テストなどを駆使して乗り越えリリースしていった際の知見を話します。次の技術選定に立ち向かう戦略・ひとかけらの勇気をお持ち帰りいただければ幸いです。C/E会議室)25分枠PHPは何を捨て、どんな力を手に入れてきたのかうさみけんたtadsanPHPの言語仕様は変化の歴史であり、常にほかのプログラミング言語の特徴を取り入れることで発展してきました。その変化はときに断絶を生んできましたが、同時に我々に多くの可能性をもたらしてきました、このトークでは一人のプログラミング言語好きとしてPHPの言語仕様の歴史的経緯と強力な機能を紹介していきます。吉田あひるstrtyuuこの話は、オレオレフレームワークで作られたアプリケーションに秩序をもたらすべくヒィヒィ言いながらリファクタリングをし続けた男の5ヶ月間の記録である。脆弱性から学ぶWebセキュリティバーチーhypermktWebアプリケーションの脆弱性は、どこに潜んでいて、いつ狙われるのか分かりません。ひとたびサイト改ざん・情報漏えいが発生したらビジネスに及ぼす影響は甚大です。ツールなどがあり、脆弱性の発見・事前検知ができます。WAFを導入することで、外部からの不正な攻撃からWebアプリケーションを守ることも出来ます。いえ、そうは思いません。根底として大切なのは、エンジニア自身がWebセキュリティの正しい知識を持ち、安全なアプリケーション開発を行うことであると考えます。Webアプリケーションエンジニアの皆さん、今改めてWebセキュリティを一緒に見直しませんか。本セッションでは、Webアプリケーションエンジニアが遭遇しやすい脆弱性の概要と危険性、そして対策方法についてお話します。多方面で抽象化を行うことで、高度に変化への強さを獲得できるアーキテクチャです。昨今の変化の早さに対応するべく「アジャイル開発」や「マイクロサービス」が叫ばれているように、「クリーンアーキテクチャ」もまた日増しにその注目度は上がっているように感じます。取っつきにくいアーキテクチャであることからか、現状参考になる資料が無数に転がっているというわけでもありません。そこで、エキテンで現在Laravelベースで開発中の新しい予約システムを題材に、実際にアーキテクチャを形作っているコンポーネントの紹介や、開発する上で行ってみたちょっとした工夫、開発フェーズにおける現場の生の声などをお話しようと思います。VM(PHPの仮想的なCPU)の命令列に変換されてから実行されます。VMは本物のCPUと似た命令も持っていますが、本物のCPUではあり得ない命令も持っています。その一つが例外処理に関わるものでしょう。VMと本物のCPUとの違いは何か、といった実装の詳細をPHPのCソースコードを交えて紹介します。「CPUとは何か」をPHPで考える長谷川智希tomzoh中学生の頃にMSXというパソコンのCPUであるZ80のプログラミングを体験していました。その約25年後、2016年にPHPで書かれたゲームボーイエミュレータのコードを読んで衝撃を受けました。ゲームボーイのCPUはZ80ベースであり、エミュレータで実装されていたのはまさにZ80の命令だったのです。この体験で、エミュレータがハードウェア仕様をソフトウェア的に表現したものであることを理解しました。名著「CPUの創りかた」で紹介されているCPU、TD4を実装し衝撃を受けました。そこに見たCPUは電気回路として表現された状態機械でした。各種ツールについての紹介をします。コーディング規約チェック・静的コード検査・テストツール・リファクタリングを中心に、あまり着目されてない数多のツールを俯瞰します。コーディングやレビューでの参考にしてもらえればと思います。...17ビデオスライド12ログインが必要ですforteeにログインするとセッションをお気に入りに設定できます。お気に入りに入れたセッションはタイムテーブル上で色が付いて表示されます。@tomzohfortee利用規約プライバシーポリシ。