PHP Conference Japan 2019 トーク一覧

他イベントOK 60分枠

EM×QA視点で進めるテスト自動化への取り組み

斉藤 健太 saik1010
※25分枠よりも、具体例を多めにお話します。
4
他イベントOK 25分枠

EM×QA視点で進めるテスト自動化への取り組み

斉藤 健太 saik1010
「初心者向け(自動化に今から取り組む人向け)」

EM(エンジニアリングマネージャー)とQAチームの責任者をしております。 両役割の視点から、QAで考えるテスト計画や設計をもとに、エンジニアリングでテスト自動化を進めていく取り組みを始めました。 弊社ではテスト自動化が、ほぼ標準化されておらずゼロからの取り組みとなり、そこに向けてどういうアプローチで進めていってるか、どういう全体構成や技術で基盤作りをしようとしているかなど、具体的な事例を交えてお話します! QAチーム自体も、私が約1年半前に完全内製化で立ち上げたチームですので、これからテスト自動化を進めていこうと思っている皆さんの参考になればと思います!

▼キーワード
CI/CD、自動テスト(unit/api/e2e)、静的解析、コードメトリクス、Webスクレイピング・・・など
2
他イベントOK 60分枠

What can PHP Foreign Function Interface do for you?

Bohuslav Simek BohuslavSimek
FFI is one of the new exciting PHP 7.4 features. But what kind of problems is FFI trying to solve? Does this mean that we no more need to write PHP extension if we want to use an existing library? In this talk, we will together discover the way how to easily call almost any C library directly from PHP, how to overcome common pitfalls and most importantly when to use approach and when not.
6
他イベントOK 60分枠

Hands-On: How to use Laravel Queue for batch processing

Piti Champeethong ninefyi
I will demonstrate How to create simple excel report by using Laravel Queue for long running query.
他イベントOK 25分枠

Salesforceとのデータ連携でいくつかの方法について実践してみた。

三浦克浩 MiuraKatsu
みなさん、Salesforce使ってますか?昨今、バックオフィス業務でSalesforceを使うケースも多くなってきていると思います。でも顧客データのマスターとか、実績データとかは既存のRDBに入っていて、Salesforceと連携がなかなか出来ない、みたいな方も多いかと思います。
弊社ではいくつかの方法を使って、AWS上にある商用サービスのDBとSalesforceとの連携を行っております。
TIPSも交えてご紹介したいと思います。
1
他イベントOK 25分枠

プロダクトセキュリティチーム立ち上げから1年間でやってきたこと

奥野 健一 okuken3
株式会社ウエディングパークでは、2018年12月にプロダクトセキュリティチームを立ち上げました。
PHP Conference Japan 2019 当日でぴったり丸1年になります。

本発表では、プロダクトセキュリティチームを立ち上げた経緯から始め、
1年間でどのような取り組みを行ってきたかについて、以下のTopicsを取り上げて具体的にご紹介します。

 ・脆弱性診断の一部内製化
 ・自社最適なセキュアコーディングガイドの作成(Laravel)
 ・新卒向けプロダクトセキュリティ研修
 ・セキュリティログ可視化
 ・リスクアセスメント
 など
2
他イベントOK 60分枠

Does Your Code Measure Up?

Adam Culp adamculp
This talk will introduce tools to analyze PHP code in an automated fashion allowing developers to write better quality software. Then explain key metrics to help understand what needs to be refactored using code smells to highlight bugs before end-users discover them.
4
他イベントOK 60分枠

Practical PHP Deployment with Jenkins

Adam Culp adamculp
Developers and DevOps need to automate deployment but what can be automated, where to start, and what tools exist? I will show how a PHP application pulled from git, complete with unit tests, Composer dependency management, and package creation, can be deployed using Jenkins. Then leverage support by a system if the application breaks and the nightmare happens through automated rollbacks.
1
採択 他イベントOK 2019/12/01 13:00〜 Track 6 (3F 特別会議室 - サテライト: 6F D会議室) 60分枠

Putting legacy to REST with middleware

Adam Culp adamculp
We fear modernizing legacy applications, or going API first. But it's not as futile as you might think. With modern PHP microframeworks geared toward middleware it can be a breeze.

Now the truth: It is a terribly difficult task full of pitfalls. But I will share how to do it in a step-by-step method that makes it much more approachable, and enable you to be a super hero.
6
他イベントOK 60分枠

Hypermedia!

Adam Culp adamculp
You have a great REST API, but now your API users have no idea what it is capable of. They are forced to search documentation to know what they can do next with limited data provided in responses.

Let's talk about hypermedia for beginners, and what should be done in modern PHP REST APIs. We'll investigate standards, and the Richardson Maturity Model. Plus, I'll show tools to help you get there.
5
他イベントOK 60分枠

PHPに活かす!純粋関数型言語Elmのススメ

吉岡瑛一郎 yo4raw
フロントエンドの技術は日進月歩で死屍累々の怖い世界だと思っていませんか?私はそう思っていました。Elmに出会うまでは。
ElmはAltJSの一種で強い型付けかつ純粋関数型言語でありながら学習コストが低く、関数型言語に興味を持つ全ての人にオススメできる言語です。
PHPは第一級関数・高階関数の性質もあるので、関数型言語のエッセンスを活かすことが可能な言語であると同時に、関数的な考え方をしなくても実装できてしまう言語でもあります。
今回はElmを通じてPHPに活かせる関数型言語の考え方とElmの基礎をお伝えします。

【こんな人にオススメです】
array_mapやarray_filterは読めるちゃあ読めるけど、書くときはforeachやforになってしまう。
「タイプヒンティングめっちゃ助かる!」と型の重要性に気がついてしまった。
コンパイラという師匠を持ちたい。
4
他イベントOK 25分枠

How to begin with machine learning

Piti Champeethong ninefyi
How to use ML library to analysis data with simple use case by using php-ml.
1
他イベントOK 60分枠

Seatec Astronomy

Vranac Srdjan vranac
Where are your credentials and secrets stored?
In .env files or in environment variables, or even worse in config files?
Are your primary AWS keys shared amongst developers?
Do you still have SSH keys from former employees on your servers?

If your answer is "Yes" to one or more of these questions you probably haven't heard the term "secrets management"
2
他イベントOK 60分枠

Distributed Domain Destruction

Vranac Srdjan vranac
For the last couple of years I have been building, maintaining and fighting a
projects that make use of distributed computing, parallel processing,
message brokers, queues and workers. This is one of those "from the
trenches" talks, where I will regale you with tales about the series of
unfortunate events that may happen as your application grows in complexity.
4
他イベントOK 60分枠

--enable-zip が使えなくなった?それ PHP 単体で読み込めば解決できます。

めもり〜 m3m0r7
PHP 7.4 より、PHP をビルドする際に使用されるオプションである --enable-zip が正式にバンドルされなくなりました。
これにより、 PHP で zip を展開したり、読み込んだりすることにハードルが上がってしまいました。
libzip は PHP 7.3 より、libzip 自体の野良ビルドが必要であったり、 cmake のバージョン自体もあげないといけなかったり、必要なモジュール導入のハードルが高くなっていました。
PECL に移ったとはいえ、ビルドするのはなかなか敷居が高いです。ではどうしたらいいのか。何もモジュールにこだわる必要はありません。 PHP 単体で zip ファイルを読めばいいのです。本セッションでは、 PHP でどのようにして zip ファイルを読み込むのかをトークさせていただければと思います。
1
他イベントOK 25分枠

--enable-zip が使えなくなった?それ PHP 単体で読み込めば解決できます。

めもり〜 m3m0r7
PHP 7.4 より、PHP をビルドする際に使用されるオプションである --enable-zip が正式にバンドルされなくなりました。
これにより、 PHP で zip を展開したり、読み込んだりすることにハードルが上がってしまいました。
libzip は PHP 7.3 より、libzip 自体の野良ビルドが必要であったり、 cmake のバージョン自体もあげないといけなかったり、必要なモジュール導入のハードルが高くなっていました。
PECL に移ったとはいえ、ビルドするのはなかなか敷居が高いです。ではどうしたらいいのか。何もモジュールにこだわる必要はありません。 PHP 単体で zip ファイルを読めばいいのです。本セッションでは、 PHP でどのようにして zip ファイルを読み込むのかをトークさせていただければと思います。
4
他イベントOK 25分枠

PHP で JVM を実装して、 HelloWorld を出力してみる

めもり〜 m3m0r7
みなさんは PHP にどのようなイメージをお持ちでしょうか。Web のイメージが強いのではないかと思います。
しかし、PHP は Web 系以外、例えばそう、 JVM などを実装することも可能なのです。
JVM とは、 Java Virtual Machine の略で、 中間コードにコンパイルされた class ファイルを動かすための仮想マシンのことです。
JVM は JVM Spec と呼ばれる Oracle が公開しているドキュメントがあるため実は PHP でも開発することは可能です。
30 億のデバイスで PHP が走ると思うとワクワクしますよね。
本セッションは PHP という言語の枠組みの中でどのようにして JVM のようなスタックマシンを実装したのかをトークさせていただきつつ
実際に Hello World を出力するところまでをお話できればと思っております。
6
他イベントOK 25分枠

PHP で バイトコードにコンパイルされた Python を動かす

めもり〜 m3m0r7
みなさんは PHP にどのようなイメージをお持ちでしょうか。Web のイメージが強いのではないかと思います。
PHP はそれ以外の用途としてバイナリを読み込んで何かしらを行うことも可能だったりします。
例えば mp3 の ID3 タグを取得する, zip を解凍する, jpg のメタデータを取得する、などなど。
しかし、これらは一般的にはライブラリや拡張機能が提供されていて、刺激が少ないかと思います。
そんな中で、今まで誰もやったことがなさそうなこととして PHP でバイトコードにコンパイルされた Python を動かしてみたいとは思いませんでしょうか。
私は動かしてみたいと思います。本セッションでは PHP でどのようにしてバイトコードにコンパイルされた Python を動かすのかをトークできればと思います。
4
採択 他イベントOK 2019/12/01 14:45〜 Track 6 (3F 特別会議室 - サテライト: 6F D会議室) 25分枠

「CPUとは何か」をPHPで考える

長谷川智希 tomzoh
中学生の頃にMSXというパソコンのCPUであるZ80のプログラミングを体験していました。

その約25年後、2016年にPHPで書かれたゲームボーイエミュレータのコードを読んで衝撃を受けました。ゲームボーイのCPUはZ80ベースであり、エミュレータで実装されていたのはまさにZ80の命令だったのです。この体験で、エミュレータがハードウェア仕様をソフトウェア的に表現したものであることを理解しました。

そしてさらにその3年後。名著「CPUの創りかた」で紹介されているCPU、TD4を実装し衝撃を受けました。そこに見たCPUは電気回路として表現された状態機械でした。

このトークではPHPでTD4のエミュレータを実装し、マシン語実行環境、エミュレータの対象、そして電気回路としてのCPUがどの様に動作するのかをメモリアクセスを中心に解説し、CPUの魅力をみなさまにお伝えします!
他イベントOK 60分枠

「CPUとは何か」をPHPで考える

長谷川智希 tomzoh
中学生の頃にMSXというパソコンのCPUであるZ80のプログラミングを体験していました。

その約25年後、2016年にPHPで書かれたゲームボーイエミュレータのコードを読んで衝撃を受けました。ゲームボーイのCPUはZ80ベースであり、エミュレータで実装されていたのはまさにZ80の命令だったのです。この体験を通してエミュレータがハードウェア仕様をソフトウェア的に表現したものであることを理解しました。

そしてさらにその3年後。名著「CPUの創りかた」で紹介されているCPU、TD4を実装し衝撃を受けました。そこに見たCPUは電気回路として表現された状態機械でした。

このトークではPHPでTD4のエミュレータを実装し、マシン語実行環境として、エミュレータの対象として、そして電気回路としてのCPUがどの様に動作するのかを解説し、CPUの魅力をみなさまにお伝えします!
5
phpcon-2018-sponsors
2018 2017 スペシャル プラチナ ゴールド シルバー ブロンズ ランチ ネットワーク サンクス スポンサーセッション
初めてのスピーカー International CfPあり 来日意思あり ビデオ通話希望 採択あり LT採択あり スピーカーディナー参加 スピーカーディナー不参加 スポンサースピーカー Tシャツ情報募集中
初心者向け 初めてのスピーカー インフラ 20回記念 設計 Test/CI/CD Security データベース レガシーコード フレームワーク